POH Tea has been implemented
Can now add milk to teas Nettle tea now heals Refactor of Beer Barrels, Larder, and Shelves Checks are now made to ensure that the player cannot take Tea/Beer related items out from the POH A few useless items (Bowl of Hot Water, Cup of Hot Water) have been implemented
This commit is contained in:
@@ -39175,7 +39175,7 @@
|
|||||||
"id": "4237"
|
"id": "4237"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"examine": "It's a bowl of (milky) nettle tea.",
|
"examine": "It's a bowl of nettle tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Nettle tea",
|
"name": "Nettle tea",
|
||||||
"weight": "0.9",
|
"weight": "0.9",
|
||||||
@@ -39183,7 +39183,7 @@
|
|||||||
"id": "4239"
|
"id": "4239"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"examine": "It's a bowl of (milky) nettle tea.",
|
"examine": "It's a bowl of milky nettle tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Nettle tea",
|
"name": "Nettle tea",
|
||||||
"weight": "0.9",
|
"weight": "0.9",
|
||||||
@@ -39191,7 +39191,7 @@
|
|||||||
"id": "4240"
|
"id": "4240"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"examine": "(In inventory) A handful of nettles (In ground) I better not get stung/I wouldn't like to get stung/I wish I could sting other people/Dock leaves at the ready/These may hurt/nettles sting my leggies(Draynor Village nettles)",
|
"examine": "A handful of nettles.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Nettles",
|
"name": "Nettles",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
@@ -39199,22 +39199,22 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "A nice cup of nettle tea.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "4242"
|
"id": "4242"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "A milky cup of nettle tea.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "4243"
|
"id": "4243"
|
||||||
@@ -39228,22 +39228,22 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "Some nettle tea in a porcelain cup.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "4245"
|
"id": "4245"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "Some milky nettle tea in a porcelain cup.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "4246"
|
"id": "4246"
|
||||||
@@ -70083,517 +70083,584 @@
|
|||||||
"id": "7687"
|
"id": "7687"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "The kettle is empty.",
|
"examine": "The kettle is empty.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Kettle",
|
"name": "Kettle",
|
||||||
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7688"
|
"id": "7688"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Kettle",
|
"name": "Kettle",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7689"
|
"id": "7689"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "It's full of cold water.",
|
"examine": "It's full of cold water.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Full kettle",
|
"name": "Full kettle",
|
||||||
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7690"
|
"id": "7690"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "It's full of boiling water.",
|
"examine": "It's full of boiling water.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Hot kettle",
|
"name": "Hot kettle",
|
||||||
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7691"
|
"id": "7691"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (4)",
|
"name": "Pot of tea (4)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7692"
|
"id": "7692"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (4)",
|
"name": "Pot of tea (4)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7693"
|
"id": "7693"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (3)",
|
"name": "Pot of tea (3)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7694"
|
"id": "7694"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (3)",
|
"name": "Pot of tea (3)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7695"
|
"id": "7695"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (2)",
|
"name": "Pot of tea (2)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7696"
|
"id": "7696"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (2)",
|
"name": "Pot of tea (2)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7697"
|
"id": "7697"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (1)",
|
"name": "Pot of tea (1)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7698"
|
"id": "7698"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (1)",
|
"name": "Pot of tea (1)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7699"
|
"id": "7699"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "Add boiling water to make a tea.",
|
"examine": "Add boiling water to make a tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot with leaves",
|
"name": "Teapot with leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7700"
|
"id": "7700"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot with leaves",
|
"name": "Teapot with leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7701"
|
"id": "7701"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "This teapot is empty.",
|
"examine": "This teapot is empty.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot",
|
"name": "Teapot",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.4",
|
"weight": "0.4",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7702"
|
"id": "7702"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot",
|
"name": "Teapot",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7703"
|
"id": "7703"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (4)",
|
"name": "Pot of tea (4)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7704"
|
"id": "7704"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (4)",
|
"name": "Pot of tea (4)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7705"
|
"id": "7705"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (3)",
|
"name": "Pot of tea (3)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7706"
|
"id": "7706"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (3)",
|
"name": "Pot of tea (3)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7707"
|
"id": "7707"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (2)",
|
"name": "Pot of tea (2)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7708"
|
"id": "7708"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (2)",
|
"name": "Pot of tea (2)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7709"
|
"id": "7709"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (1)",
|
"name": "Pot of tea (1)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7710"
|
"id": "7710"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (1)",
|
"name": "Pot of tea (1)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7711"
|
"id": "7711"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "Add boiling water to make a tea.",
|
"examine": "Add boiling water to make a tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot with leaves",
|
"name": "Teapot with leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7712"
|
"id": "7712"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot with leaves",
|
"name": "Teapot with leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7713"
|
"id": "7713"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "This teapot is empty.",
|
"examine": "This teapot is empty.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot",
|
"name": "Teapot",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.4",
|
"weight": "0.4",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7714"
|
"id": "7714"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot",
|
"name": "Teapot",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7715"
|
"id": "7715"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (4)",
|
"name": "Pot of tea (4)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7716"
|
"id": "7716"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (4)",
|
"name": "Pot of tea (4)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7717"
|
"id": "7717"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (3)",
|
"name": "Pot of tea (3)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7718"
|
"id": "7718"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (3)",
|
"name": "Pot of tea (3)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7719"
|
"id": "7719"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (2)",
|
"name": "Pot of tea (2)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7720"
|
"id": "7720"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (2)",
|
"name": "Pot of tea (2)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7721"
|
"id": "7721"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "I'd really like a nice cup of tea.",
|
"examine": "I'd really like a nice cup of tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (1)",
|
"name": "Pot of tea (1)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7722"
|
"id": "7722"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Pot of tea (1)",
|
"name": "Pot of tea (1)",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7723"
|
"id": "7723"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "Add boiling water to make a tea.",
|
"examine": "Add boiling water to make a tea.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot with leaves",
|
"name": "Teapot with leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1.5",
|
"weight": "1.5",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7724"
|
"id": "7724"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot with leaves",
|
"name": "Teapot with leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7725"
|
"id": "7725"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "This teapot is empty.",
|
"examine": "This teapot is empty.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot",
|
"name": "Teapot",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.4",
|
"weight": "0.4",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7726"
|
"id": "7726"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Teapot",
|
"name": "Teapot",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7727"
|
"id": "7727"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "1",
|
"shop_price": "1",
|
||||||
"examine": "An empty cup.",
|
"examine": "An empty cup.",
|
||||||
"grand_exchange_price": "7",
|
"grand_exchange_price": "7",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Empty cup",
|
"name": "Empty cup",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7728"
|
"id": "7728"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Empty cup",
|
"name": "Empty cup",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7729"
|
"id": "7729"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "A nice cup of nettle tea.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7730"
|
"id": "7730"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "A milky cup of nettle tea.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7731"
|
"id": "7731"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "A porcelain cup.",
|
"examine": "A porcelain cup.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Porcelain cup",
|
"name": "Porcelain cup",
|
||||||
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7732"
|
"id": "7732"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "Some nettle tea in a porcelain cup.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7733"
|
"id": "7733"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "Some milky nettle tea in a porcelain cup.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7734"
|
"id": "7734"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "A porcelain cup.",
|
"examine": "A porcelain cup.",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Porcelain cup",
|
"name": "Porcelain cup",
|
||||||
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7735"
|
"id": "7735"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "Some nettle tea in a porcelain cup.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7736"
|
"id": "7736"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "10",
|
"shop_price": "10",
|
||||||
"examine": "A nice cup of tea.",
|
"examine": "Some milky nettle tea in a porcelain cup.",
|
||||||
"grand_exchange_price": "30",
|
"grand_exchange_price": "30",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cup of tea",
|
"name": "Cup of tea",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.1",
|
"weight": "0.1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7737"
|
"id": "7737"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "Mmm, how about a nice cup of tea?",
|
"examine": "Mmm, how about a nice cup of tea?",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Tea leaves",
|
"name": "Tea leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7738"
|
"id": "7738"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Tea leaves",
|
"name": "Tea leaves",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7739"
|
"id": "7739"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "A glass of frothy ale.",
|
"examine": "A glass of frothy ale.",
|
||||||
"grand_exchange_price": "151",
|
"grand_exchange_price": "151",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Beer",
|
"name": "Beer",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1",
|
"weight": "1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7740"
|
"id": "7740"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Beer",
|
"name": "Beer",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7741"
|
"id": "7741"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "1",
|
"shop_price": "1",
|
||||||
"examine": "I need to fill this with beer.",
|
"examine": "I need to fill this with beer.",
|
||||||
"grand_exchange_price": "25",
|
"grand_exchange_price": "25",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Beer glass",
|
"name": "Beer glass",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "0.05",
|
"weight": "0.05",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7742"
|
"id": "7742"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Beer glass",
|
"name": "Beer glass",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7743"
|
"id": "7743"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "3",
|
"shop_price": "3",
|
||||||
"examine": "Probably the finest readily-available ale in Asgarnia.",
|
"examine": "Probably the finest readily-available ale in Asgarnia.",
|
||||||
"grand_exchange_price": "131",
|
"grand_exchange_price": "131",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Asgarnian ale",
|
"name": "Asgarnian ale",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7744"
|
"id": "7744"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Asgarnian ale",
|
"name": "Asgarnian ale",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7745"
|
"id": "7745"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "2",
|
"shop_price": "2",
|
||||||
"examine": "A glass of frothy ale.",
|
"examine": "A glass of frothy ale.",
|
||||||
"grand_exchange_price": "569",
|
"grand_exchange_price": "569",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Greenman's ale",
|
"name": "Greenman's ale",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7746"
|
"id": "7746"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Greenman's ale",
|
"name": "Greenman's ale",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7747"
|
"id": "7747"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "2",
|
"shop_price": "2",
|
||||||
"examine": "A glass of bitter.",
|
"examine": "A glass of bitter.",
|
||||||
"grand_exchange_price": "523",
|
"grand_exchange_price": "523",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Dragon bitter",
|
"name": "Dragon bitter",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1",
|
"weight": "1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7748"
|
"id": "7748"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Dragon bitter",
|
"name": "Dragon bitter",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7749"
|
"id": "7749"
|
||||||
},
|
},
|
||||||
@@ -70615,36 +70682,40 @@
|
|||||||
"id": "7751"
|
"id": "7751"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"shop_price": "2",
|
"shop_price": "2",
|
||||||
"examine": "A glass of Cider",
|
"examine": "A glass of Cider",
|
||||||
"grand_exchange_price": "1539",
|
"grand_exchange_price": "1539",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cider",
|
"name": "Cider",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"weight": "1",
|
"weight": "1",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7752"
|
"id": "7752"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Cider",
|
"name": "Cider",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7753"
|
"id": "7753"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"examine": "A fruity, full-bodied ale.",
|
"examine": "A fruity, full-bodied ale.",
|
||||||
"grand_exchange_price": "2371",
|
"grand_exchange_price": "2371",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Chef's delight",
|
"name": "Chef's delight",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7754"
|
"id": "7754"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"bankable": "false",
|
||||||
"durability": null,
|
"durability": null,
|
||||||
"name": "Chef's delight",
|
"name": "Chef's delight",
|
||||||
"tradeable": "true",
|
"tradeable": "false",
|
||||||
"archery_ticket_price": "0",
|
"archery_ticket_price": "0",
|
||||||
"id": "7755"
|
"id": "7755"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -201,6 +201,7 @@ public enum Consumables {
|
|||||||
/** Ales */
|
/** Ales */
|
||||||
ASGOLDIAN_ALE(new FakeConsumable(7508, new String[] {"I don't think I'd like gold in beer thanks. Leave it for the dwarves."})),
|
ASGOLDIAN_ALE(new FakeConsumable(7508, new String[] {"I don't think I'd like gold in beer thanks. Leave it for the dwarves."})),
|
||||||
ASGARNIAN_ALE(new Drink(new int[] {1905, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
ASGARNIAN_ALE(new Drink(new int[] {1905, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
||||||
|
ASGARNIAN_ALE_POH(new Drink(new int[] {7744, 7742}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
||||||
ASGARNIAN_ALE_KEG(new Drink(new int[] {5785, 5783, 5781, 5779, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
ASGARNIAN_ALE_KEG(new Drink(new int[] {5785, 5783, 5781, 5779, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
||||||
ASGARNIAN_ALE_M(new Drink(new int[] {5739, 1919}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
|
ASGARNIAN_ALE_M(new Drink(new int[] {5739, 1919}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
|
||||||
ASGARNIAN_ALE_M_KEG(new Drink(new int[] {5865, 5863, 5861, 5859, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
|
ASGARNIAN_ALE_M_KEG(new Drink(new int[] {5865, 5863, 5861, 5859, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
|
||||||
@@ -210,17 +211,21 @@ public enum Consumables {
|
|||||||
AXEMANS_FOLLY_M_KEG(new Drink(new int[] {5905, 5903, 5901, 5899, 5769}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 2, 0), new HealingEffect(2), new SkillEffect(Skills.STRENGTH, -4, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
|
AXEMANS_FOLLY_M_KEG(new Drink(new int[] {5905, 5903, 5901, 5899, 5769}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 2, 0), new HealingEffect(2), new SkillEffect(Skills.STRENGTH, -4, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
|
||||||
BANDITS_BREW(new Drink(new int[] {4627, 1919}, new MultiEffect(new SkillEffect(Skills.THIEVING, 1, 0), new SkillEffect(Skills.ATTACK, 1, 0), new SkillEffect(Skills.STRENGTH, -1, 0), new SkillEffect(Skills.DEFENCE, -6, 0), new HealingEffect(1)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
BANDITS_BREW(new Drink(new int[] {4627, 1919}, new MultiEffect(new SkillEffect(Skills.THIEVING, 1, 0), new SkillEffect(Skills.ATTACK, 1, 0), new SkillEffect(Skills.STRENGTH, -1, 0), new SkillEffect(Skills.DEFENCE, -6, 0), new HealingEffect(1)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
||||||
BEER(new Drink(new int[] {1917, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 0, 0.04), new SkillEffect(Skills.ATTACK, 0, -0.07)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
BEER(new Drink(new int[] {1917, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 0, 0.04), new SkillEffect(Skills.ATTACK, 0, -0.07)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
||||||
|
BEER_POH(new Drink(new int[] {7740, 7742}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 0, 0.04), new SkillEffect(Skills.ATTACK, 0, -0.07)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
|
||||||
BEER_TANKARD(new Drink(new int[] {3803, 3805}, new MultiEffect(new SkillEffect(Skills.ATTACK, -9, 0), new SkillEffect(Skills.STRENGTH, 4, 0)), "You quaff the beer. You feel slightly reinvigorated...", "...but very dizzy too.")),
|
BEER_TANKARD(new Drink(new int[] {3803, 3805}, new MultiEffect(new SkillEffect(Skills.ATTACK, -9, 0), new SkillEffect(Skills.STRENGTH, 4, 0)), "You quaff the beer. You feel slightly reinvigorated...", "...but very dizzy too.")),
|
||||||
KEG_OF_BEER(new Drink(new int[] {3801}, new KegOfBeerEffect(), new Animation(1330), "You chug the keg. You feel reinvigorated...", "...but extremely drunk too.")),
|
KEG_OF_BEER(new Drink(new int[] {3801}, new KegOfBeerEffect(), new Animation(1330), "You chug the keg. You feel reinvigorated...", "...but extremely drunk too.")),
|
||||||
CHEFS_DELIGHT(new Drink(new int[] {5755, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
|
CHEFS_DELIGHT(new Drink(new int[] {5755, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
|
||||||
|
CHEFS_DELIGHT_POH(new Drink(new int[] {7754, 7742}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
|
||||||
CHEFS_DELIGHT_KEG(new Drink(new int[] {5833, 5831, 5829, 5827, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
|
CHEFS_DELIGHT_KEG(new Drink(new int[] {5833, 5831, 5829, 5827, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
|
||||||
CHEFS_DELIGHT_M(new Drink(new int[] {5757, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)))),
|
CHEFS_DELIGHT_M(new Drink(new int[] {5757, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)))),
|
||||||
CHEFS_DELIGHT_M_KEG(new Drink(new int[] {5913, 5911, 5909, 5907, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)), new Animation(2289))),
|
CHEFS_DELIGHT_M_KEG(new Drink(new int[] {5913, 5911, 5909, 5907, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)), new Animation(2289))),
|
||||||
CIDER(new Drink(new int[] {5763, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))))),
|
CIDER(new Drink(new int[] {5763, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))))),
|
||||||
|
CIDER_POH(new Drink(new int[] {7752, 7742}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))))),
|
||||||
CIDER_KEG(new Drink(new int[] {5849, 5847, 5845, 5843, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))), new Animation(2289))),
|
CIDER_KEG(new Drink(new int[] {5849, 5847, 5845, 5843, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))), new Animation(2289))),
|
||||||
MATURE_CIDER(new Drink(new int[] {5765, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))))),
|
MATURE_CIDER(new Drink(new int[] {5765, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))))),
|
||||||
CIDER_M_KEG(new Drink(new int[] {5929, 5927, 5925, 5923, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))), new Animation(2289))),
|
CIDER_M_KEG(new Drink(new int[] {5929, 5927, 5925, 5923, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))), new Animation(2289))),
|
||||||
DRAGON_BITTER(new Drink(new int[] {1911, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
|
DRAGON_BITTER(new Drink(new int[] {1911, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
|
||||||
|
DRAGON_BITTER_POH(new Drink(new int[] {7748, 7742}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
|
||||||
DRAGON_BITTER_KEG(new Drink(new int[] {5809, 5807, 5805, 5803, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
|
DRAGON_BITTER_KEG(new Drink(new int[] {5809, 5807, 5805, 5803, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
|
||||||
DRAGON_BITTER_M(new Drink(new int[] {5745, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
|
DRAGON_BITTER_M(new Drink(new int[] {5745, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
|
||||||
DRAGON_BITTER_M_KEG(new Drink(new int[] {5889, 5887, 5885, 5883, 5769}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
|
DRAGON_BITTER_M_KEG(new Drink(new int[] {5889, 5887, 5885, 5883, 5769}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
|
||||||
@@ -229,6 +234,7 @@ public enum Consumables {
|
|||||||
DWARVEN_STOUT_M(new Drink(new int[] {5747, 1919}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)))),
|
DWARVEN_STOUT_M(new Drink(new int[] {5747, 1919}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)))),
|
||||||
DWARVEN_STOUT_M_KEG(new Drink(new int[] {5857, 5855, 5853, 5851, 5769}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)), new Animation(2289))),
|
DWARVEN_STOUT_M_KEG(new Drink(new int[] {5857, 5855, 5853, 5851, 5769}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)), new Animation(2289))),
|
||||||
GREENMANS_ALE(new Drink(new int[] {1909, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)))),
|
GREENMANS_ALE(new Drink(new int[] {1909, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)))),
|
||||||
|
GREENMANS_ALE_POH(new Drink(new int[] {7746, 7742}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)))),
|
||||||
GREENMANS_ALE_KEG(new Drink(new int[] {5793, 5791, 5789, 5787, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)), new Animation(2289))),
|
GREENMANS_ALE_KEG(new Drink(new int[] {5793, 5791, 5789, 5787, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)), new Animation(2289))),
|
||||||
GREENMANS_ALE_M(new Drink(new int[] {5743, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
|
GREENMANS_ALE_M(new Drink(new int[] {5743, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
|
||||||
GREENMANS_ALE_M_KEG(new Drink(new int[] {5873, 5871, 5869, 5867, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
|
GREENMANS_ALE_M_KEG(new Drink(new int[] {5873, 5871, 5869, 5867, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
|
||||||
@@ -285,16 +291,19 @@ public enum Consumables {
|
|||||||
|
|
||||||
/** Tea */
|
/** Tea */
|
||||||
CUP_OF_TEA(new Drink(new int[] {712, 1980}, new MultiEffect(new HealingEffect(3), new SkillEffect(Skills.ATTACK, 3, 0)), "Aaah, nothing like a nice cuppa tea!")),
|
CUP_OF_TEA(new Drink(new int[] {712, 1980}, new MultiEffect(new HealingEffect(3), new SkillEffect(Skills.ATTACK, 3, 0)), "Aaah, nothing like a nice cuppa tea!")),
|
||||||
CUP_OF_TEA_NETTLE(new Drink(new int[] {4242, 1980}, new EnergyEffect(10))),
|
NETTLE_WATER(new Drink(new int[] {Items.NETTLE_WATER_4237, Items.BOWL_1923}, new HealingEffect((1)))),
|
||||||
CUP_OF_TEA_MILKY_NETTLE(new Drink(new int[] {4243, 1980}, new EnergyEffect(10))),
|
CUP_OF_TEA_NETTLE(new Drink(new int[] {4242, 1980}, new MultiEffect(new HealingEffect(3), new EnergyEffect(10)))),
|
||||||
NETTLE_TEA(new Drink(new int[] {4239, 1923}, new NettleTeaEffect())),
|
CUP_OF_TEA_MILKY_NETTLE(new Drink(new int[] {4243, 1980}, new MultiEffect(new HealingEffect(3), new EnergyEffect(10)))),
|
||||||
NETTLE_TEA_MILKY(new Drink(new int[] {4240, 1980}, new NettleTeaEffect())),
|
CUP_OF_TEA_NETTLE_PORCELAIN(new Drink(new int[] {4245, 4244}, new MultiEffect(new HealingEffect(3), new EnergyEffect(10)))),
|
||||||
|
CUP_OF_TEA_MILKY_NETTLE_PORCELAIN(new Drink(new int[] {4246, 4244}, new MultiEffect(new HealingEffect(3), new EnergyEffect(10)))),
|
||||||
|
NETTLE_TEA(new Drink(new int[] {4239, 1923}, new MultiEffect(new HealingEffect(3), new EnergyEffect(10)))),
|
||||||
|
NETTLE_TEA_MILKY(new Drink(new int[] {4240, 1923}, new MultiEffect(new HealingEffect(3), new EnergyEffect(10)))),
|
||||||
CUP_OF_TEA_CLAY(new Drink(new int[] {7730, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0), "You feel refreshed and ready for more building.")),
|
CUP_OF_TEA_CLAY(new Drink(new int[] {7730, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0), "You feel refreshed and ready for more building.")),
|
||||||
CUP_OF_TEA_CLAY_MILKY(new Drink(new int[] {7731, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0))),
|
CUP_OF_TEA_CLAY_MILKY(new Drink(new int[] {7731, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0), "You feel refreshed and ready for more building.")),
|
||||||
CUP_OF_TEA_WHITE(new Drink(new int[] {7733, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0), "You feel refreshed and ready for more building.")),
|
CUP_OF_TEA_WHITE(new Drink(new int[] {7733, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0), "You feel refreshed and ready for more building.")),
|
||||||
CUP_OF_TEA_WHITE_MILKY(new Drink(new int[] {7734, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0))),
|
CUP_OF_TEA_WHITE_MILKY(new Drink(new int[] {7734, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0), "You feel refreshed and ready for more building.")),
|
||||||
CUP_OF_TEA_GOLD(new Drink(new int[] {7736, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0), "You feel refreshed and ready for more building.")),
|
CUP_OF_TEA_GOLD(new Drink(new int[] {7736, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0), "You feel refreshed and ready for more building.")),
|
||||||
CUP_OF_TEA_GOLD_MILKY(new Drink(new int[] {7737, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0))),
|
CUP_OF_TEA_GOLD_MILKY(new Drink(new int[] {7737, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0), "You feel refreshed and ready for more building.")),
|
||||||
|
|
||||||
/** Miscellaneous */
|
/** Miscellaneous */
|
||||||
CHOCOLATE_BAR(new Food(new int[] {1973}, new HealingEffect(3))),
|
CHOCOLATE_BAR(new Food(new int[] {1973}, new HealingEffect(3))),
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
package content.data.consumables.effects;
|
|
||||||
|
|
||||||
import core.game.consumable.ConsumableEffect;
|
|
||||||
import core.game.node.entity.player.Player;
|
|
||||||
|
|
||||||
public class NettleTeaEffect extends ConsumableEffect {
|
|
||||||
|
|
||||||
private final static int healing = 3;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void activate(Player p) {
|
|
||||||
final ConsumableEffect effect = p.getSkills().getLifepoints() < p.getSkills().getMaximumLifepoints() ? new MultiEffect(new HealingEffect(3), new EnergyEffect(5)) : new HealingEffect(3);
|
|
||||||
effect.activate(p);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getHealthEffectValue(Player player) {
|
|
||||||
return healing;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -43,6 +43,7 @@ class EmptyOptionListener : InteractionListener {
|
|||||||
BUCKET_OF_SLIME(Items.BUCKET_OF_SLIME_4286, Items.BUCKET_1925, "You empty the contents of the bucket on the floor.", Sounds.LIQUID_2401),
|
BUCKET_OF_SLIME(Items.BUCKET_OF_SLIME_4286, Items.BUCKET_1925, "You empty the contents of the bucket on the floor.", Sounds.LIQUID_2401),
|
||||||
VIAL_OF_WATER(Items.VIAL_OF_WATER_227, Items.VIAL_229, "You empty the vial.", Sounds.LIQUID_2401),
|
VIAL_OF_WATER(Items.VIAL_OF_WATER_227, Items.VIAL_229, "You empty the vial.", Sounds.LIQUID_2401),
|
||||||
BOWL_OF_WATER(Items.BOWL_OF_WATER_1921, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
BOWL_OF_WATER(Items.BOWL_OF_WATER_1921, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BOWL_OF_HOT_WATER(Items.BOWL_OF_HOT_WATER_4456, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
||||||
JUG_OF_WATER(Items.JUG_OF_WATER_1937, Items.JUG_1935, "You empty the contents of the jug onto the floor.", Sounds.LIQUID_2401),
|
JUG_OF_WATER(Items.JUG_OF_WATER_1937, Items.JUG_1935, "You empty the contents of the jug onto the floor.", Sounds.LIQUID_2401),
|
||||||
BURNT_PIE(Items.BURNT_PIE_2329, Items.PIE_DISH_2313, "You empty the pie dish."),
|
BURNT_PIE(Items.BURNT_PIE_2329, Items.PIE_DISH_2313, "You empty the pie dish."),
|
||||||
POTION(Items.POTION_195, Items.VIAL_229, "You empty the vial.", Sounds.LIQUID_2401),
|
POTION(Items.POTION_195, Items.VIAL_229, "You empty the vial.", Sounds.LIQUID_2401),
|
||||||
@@ -51,6 +52,30 @@ class EmptyOptionListener : InteractionListener {
|
|||||||
CUP_OF_TEA(Items.CUP_OF_TEA_4242, Items.EMPTY_CUP_1980, "You empty the cup of tea.", Sounds.LIQUID_2401),
|
CUP_OF_TEA(Items.CUP_OF_TEA_4242, Items.EMPTY_CUP_1980, "You empty the cup of tea.", Sounds.LIQUID_2401),
|
||||||
NETTLE_WATER(Items.NETTLE_WATER_4237, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
NETTLE_WATER(Items.NETTLE_WATER_4237, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
||||||
NETTLE_TEA_MILKY(Items.NETTLE_TEA_4240, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
NETTLE_TEA_MILKY(Items.NETTLE_TEA_4240, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
NETTLE_TEA_CUP(Items.CUP_OF_TEA_4242, Items.EMPTY_CUP_1980, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
NETTLE_TEA_CUP_MILKY(Items.CUP_OF_TEA_4243, Items.EMPTY_CUP_1980, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
TEA_CUP_WATER(Items.CUP_OF_WATER_4458, Items.EMPTY_CUP_1980, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
TEA_CUP_HOT_WATER(Items.CUP_OF_HOT_WATER_4460, Items.EMPTY_CUP_1980, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
NETTLE_TEA_PORCELAIN(Items.CUP_OF_TEA_4245, Items.PORCELAIN_CUP_4244, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
NETTLE_TEA_PORCELAIN_MILKY(Items.CUP_OF_TEA_4246, Items.PORCELAIN_CUP_4244, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BUILDERS_TEA1(Items.CUP_OF_TEA_7730, Items.EMPTY_CUP_7728, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BUILDERS_TEA1_MILKY(Items.CUP_OF_TEA_7731, Items.EMPTY_CUP_7728, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BUILDERS_TEA2(Items.CUP_OF_TEA_7733, Items.PORCELAIN_CUP_7732, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BUILDERS_TEA2_MILKY(Items.CUP_OF_TEA_7734, Items.PORCELAIN_CUP_7732, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BUILDERS_TEA3(Items.CUP_OF_TEA_7736, Items.PORCELAIN_CUP_7735, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
BUILDERS_TEA3_MILKY(Items.CUP_OF_TEA_7737, Items.PORCELAIN_CUP_7735, "You empty the contents of the cup onto the floor.", Sounds.LIQUID_2401),
|
||||||
|
CLAY_POT_OF_TEA4(Items.POT_OF_TEA_4_7692, Items.TEAPOT_7702, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
CLAY_POT_OF_TEA3(Items.POT_OF_TEA_3_7694, Items.TEAPOT_7702, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
CLAY_POT_OF_TEA2(Items.POT_OF_TEA_2_7696, Items.TEAPOT_7702, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
CLAY_POT_OF_TEA1(Items.POT_OF_TEA_1_7698, Items.TEAPOT_7702, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
PORCELAIN_POT_OF_TEA4(Items.POT_OF_TEA_4_7704, Items.TEAPOT_7714, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
PORCELAIN_POT_OF_TEA3(Items.POT_OF_TEA_3_7706, Items.TEAPOT_7714, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
PORCELAIN_POT_OF_TEA2(Items.POT_OF_TEA_2_7708, Items.TEAPOT_7714, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
PORCELAIN_POT_OF_TEA1(Items.POT_OF_TEA_1_7710, Items.TEAPOT_7714, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
GOLD_PORCELAIN_POT_OF_TEA4(Items.POT_OF_TEA_4_7716, Items.TEAPOT_7726, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
GOLD_PORCELAIN_POT_OF_TEA3(Items.POT_OF_TEA_3_7718, Items.TEAPOT_7726, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
GOLD_PORCELAIN_POT_OF_TEA2(Items.POT_OF_TEA_2_7720, Items.TEAPOT_7726, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
|
GOLD_PORCELAIN_POT_OF_TEA1(Items.POT_OF_TEA_1_7722, Items.TEAPOT_7726, "You empty the contents of the pot onto the floor", Sounds.LIQUID_2401),
|
||||||
BURNT_CURRY(Items.BURNT_CURRY_2013, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
BURNT_CURRY(Items.BURNT_CURRY_2013, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
|
||||||
BURNT_GNOMEBOWL(Items.BURNT_GNOMEBOWL_2175, Items.GNOMEBOWL_MOULD_2166, "You empty the contents of the gnomebowl onto the floor."),
|
BURNT_GNOMEBOWL(Items.BURNT_GNOMEBOWL_2175, Items.GNOMEBOWL_MOULD_2166, "You empty the contents of the gnomebowl onto the floor."),
|
||||||
BURNT_EGG(Items.BURNT_EGG_7090, Items.BOWL_1923, "You empty the contents of the bowl onto the floor."),
|
BURNT_EGG(Items.BURNT_EGG_7090, Items.BOWL_1923, "You empty the contents of the bowl onto the floor."),
|
||||||
|
|||||||
@@ -129,6 +129,14 @@ class WaterSourceListener : InteractionListener {
|
|||||||
FISHBOWL(
|
FISHBOWL(
|
||||||
inputs = intArrayOf(Items.FISHBOWL_6667),
|
inputs = intArrayOf(Items.FISHBOWL_6667),
|
||||||
output = Items.FISHBOWL_6668
|
output = Items.FISHBOWL_6668
|
||||||
|
),
|
||||||
|
KETTLE(
|
||||||
|
inputs = intArrayOf(Items.KETTLE_7688),
|
||||||
|
output = Items.FULL_KETTLE_7690
|
||||||
|
),
|
||||||
|
CUP(
|
||||||
|
inputs = intArrayOf(Items.EMPTY_CUP_1980),
|
||||||
|
output = Items.CUP_OF_WATER_4458
|
||||||
);
|
);
|
||||||
|
|
||||||
companion object
|
companion object
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package content.global.skill.construction;
|
package content.global.skill.construction;
|
||||||
|
|
||||||
|
|
||||||
|
import core.api.Container;
|
||||||
|
import org.rs09.consts.Items;
|
||||||
import core.game.node.entity.Entity;
|
import core.game.node.entity.Entity;
|
||||||
import core.game.node.entity.player.Player;
|
import core.game.node.entity.player.Player;
|
||||||
import core.game.world.map.zone.MapZone;
|
import core.game.world.map.zone.MapZone;
|
||||||
@@ -91,6 +93,7 @@ public final class HouseZone extends MapZone {
|
|||||||
public boolean leave(Entity e, boolean logout) {
|
public boolean leave(Entity e, boolean logout) {
|
||||||
if (e instanceof Player) {
|
if (e instanceof Player) {
|
||||||
Player p = (Player) e;
|
Player p = (Player) e;
|
||||||
|
remove_items(p);
|
||||||
// The below tears down the house if the owner was the one who left
|
// The below tears down the house if the owner was the one who left
|
||||||
if (house == p.getHouseManager()) {
|
if (house == p.getHouseManager()) {
|
||||||
house.expelGuests(p);
|
house.expelGuests(p);
|
||||||
@@ -121,4 +124,11 @@ public final class HouseZone extends MapZone {
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void remove_items(Player p) {
|
||||||
|
for (int item = Items.KETTLE_7688; item <= Items.CHEFS_DELIGHT_7755; item++) {//Removes all PoH versions of tea and beer barrel-related items
|
||||||
|
removeAll(p, item, Container.INVENTORY);
|
||||||
|
removeAll(p, item, Container.BoB);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,76 +0,0 @@
|
|||||||
package content.global.skill.construction.decoration;
|
|
||||||
|
|
||||||
import core.game.interaction.NodeUsageEvent;
|
|
||||||
import core.game.interaction.UseWithHandler;
|
|
||||||
import core.game.node.entity.player.Player;
|
|
||||||
import core.game.node.item.Item;
|
|
||||||
import core.game.node.scenery.Scenery;
|
|
||||||
import core.game.world.update.flag.context.Animation;
|
|
||||||
import core.plugin.Initializable;
|
|
||||||
import core.plugin.Plugin;
|
|
||||||
import org.rs09.consts.Items;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handles the Construction beer barrels.
|
|
||||||
* @author Splinter
|
|
||||||
*/
|
|
||||||
@Initializable
|
|
||||||
public class BeerBarrelPlugin extends UseWithHandler {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The object ids
|
|
||||||
*/
|
|
||||||
private static final int[] OBJECTS = new int[] {
|
|
||||||
13568, 13569, 13570, 13571, 13572, 13573
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructs a new {@Code BeerBarrelPlugin} {@Code Object}
|
|
||||||
*/
|
|
||||||
public BeerBarrelPlugin() {
|
|
||||||
super(1919);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Plugin<Object> newInstance(Object arg) throws Throwable {
|
|
||||||
for (int id : OBJECTS) {
|
|
||||||
addHandler(id, OBJECT_TYPE, this);
|
|
||||||
}
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean handle(NodeUsageEvent event) {
|
|
||||||
Player player = event.getPlayer();
|
|
||||||
final Scenery object = (Scenery) event.getUsedWith();
|
|
||||||
|
|
||||||
if (player.getInventory().remove(new Item(Items.BEER_GLASS_1919))) {
|
|
||||||
player.animate(Animation.create(833));
|
|
||||||
player.sendMessage("You fill up your glass.");
|
|
||||||
player.getInventory().add(new Item(getReward(object.getId()), 1));
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the beer reward based on the interaced barrel.
|
|
||||||
* @return the item to give.
|
|
||||||
*/
|
|
||||||
public int getReward(int barrelId) {
|
|
||||||
switch (barrelId) {
|
|
||||||
case 13568:
|
|
||||||
return 1917;
|
|
||||||
case 13569:
|
|
||||||
return 5763;
|
|
||||||
case 13570:
|
|
||||||
return 1905;
|
|
||||||
case 13571:
|
|
||||||
return 1909;
|
|
||||||
case 13572:
|
|
||||||
return 1911;
|
|
||||||
case 13573:
|
|
||||||
return 5755;
|
|
||||||
}
|
|
||||||
return 1917;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+78
@@ -0,0 +1,78 @@
|
|||||||
|
package content.global.skill.construction.decoration.kitchen
|
||||||
|
|
||||||
|
import core.api.addItem
|
||||||
|
import core.api.freeSlots
|
||||||
|
import core.api.sendDialogue
|
||||||
|
import core.game.dialogue.DialogueFile
|
||||||
|
import core.game.dialogue.Topic
|
||||||
|
import core.game.node.entity.player.Player
|
||||||
|
import core.tools.END_DIALOGUE
|
||||||
|
|
||||||
|
abstract class AbstractContainer(containerId: Int, containers: Map<Int,List<Pair<String, Int>>>, private val containerName: String) : DialogueFile() {
|
||||||
|
|
||||||
|
private val container = containers[containerId]!!
|
||||||
|
private val containerItemsNames = container.map { it.first }
|
||||||
|
private val containerItemsIds = container.map { it.second }
|
||||||
|
private val size = container.size
|
||||||
|
private val itemsPerPage = 4
|
||||||
|
|
||||||
|
private fun checkItem(player: Player, idx : Int){
|
||||||
|
val item = containerItemsIds[idx]
|
||||||
|
if (addItem(player, item)){
|
||||||
|
end()
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
sendDialogue(player, "You need at least one free inventory space to take from the $containerName.").also { stage = END_DIALOGUE }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun createTopics(page: Int): MutableList<Topic<Int>> {
|
||||||
|
val startIndex = (page - 1) * itemsPerPage
|
||||||
|
val endIndex = (startIndex + itemsPerPage).coerceAtMost(size)
|
||||||
|
|
||||||
|
val topics = containerItemsNames.subList(startIndex, endIndex)
|
||||||
|
.mapIndexed { index, item -> Topic(item, startIndex + index + 1, skipPlayer = true) }
|
||||||
|
.toMutableList()
|
||||||
|
|
||||||
|
// Add "More" button if there's another page or to loop back
|
||||||
|
if (endIndex < size || page > 1) {
|
||||||
|
topics.add(Topic("More", endIndex + 1, skipPlayer = true))
|
||||||
|
}
|
||||||
|
|
||||||
|
return topics
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
override fun handle(componentID: Int, buttonID: Int) {
|
||||||
|
if (freeSlots(player!!) == 0) {
|
||||||
|
sendDialogue(player!!, "You need at least one free inventory space to take from the $containerName.").also { stage = END_DIALOGUE }
|
||||||
|
return
|
||||||
|
}
|
||||||
|
val itemsPerPage = 4
|
||||||
|
|
||||||
|
when (stage) {
|
||||||
|
0, size + 1 -> { // Initial stage or final more button clicked
|
||||||
|
val topics = createTopics(1)
|
||||||
|
showTopics(*topics.toTypedArray()).also { stage = 1 }
|
||||||
|
}
|
||||||
|
in 1..size -> {
|
||||||
|
val currentPage = (stage-1) / itemsPerPage
|
||||||
|
val startIndex = currentPage * itemsPerPage
|
||||||
|
|
||||||
|
if (buttonID == itemsPerPage + 1) { // "More" button clicked (but not the last one)
|
||||||
|
val topics = createTopics(currentPage + 1)
|
||||||
|
showTopics(*topics.toTypedArray()).also { stage = currentPage*itemsPerPage + 1 }
|
||||||
|
} else { // Handle item selection
|
||||||
|
val itemIndex = startIndex + (buttonID - 1)
|
||||||
|
if (itemIndex < size) {
|
||||||
|
checkItem(player!!, itemIndex)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else -> end()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
+29
@@ -0,0 +1,29 @@
|
|||||||
|
package content.global.skill.construction.decoration.kitchen
|
||||||
|
|
||||||
|
import core.api.*
|
||||||
|
import core.game.interaction.InteractionListener
|
||||||
|
import org.rs09.consts.Items
|
||||||
|
|
||||||
|
class BeerBarrelInteraction : InteractionListener {
|
||||||
|
|
||||||
|
companion object{
|
||||||
|
private val barrelMap = mapOf(
|
||||||
|
org.rs09.consts.Scenery.BEER_BARREL_13568 to Items.BEER_7740,
|
||||||
|
org.rs09.consts.Scenery.CIDER_BARREL_13569 to Items.CIDER_7752,
|
||||||
|
org.rs09.consts.Scenery.ASGARNIAN_ALE_13570 to Items.ASGARNIAN_ALE_7744,
|
||||||
|
org.rs09.consts.Scenery.GREENMAN_S_ALE_13571 to Items.GREENMANS_ALE_7746,
|
||||||
|
org.rs09.consts.Scenery.DRAGON_BITTER_13572 to Items.DRAGON_BITTER_7748,
|
||||||
|
org.rs09.consts.Scenery.CHEF_S_DELIGHT_13573 to Items.CHEFS_DELIGHT_7754,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
override fun defineListeners() {
|
||||||
|
onUseWith(SCENERY, Items.BEER_GLASS_7742, *barrelMap.keys.toIntArray()){ player, used, with ->
|
||||||
|
val drinkName = with.name.lowercase().replace("barrel", "").trim()+"."
|
||||||
|
if (removeItem(player, used)){
|
||||||
|
sendMessage(player, "You fill up your glass with $drinkName")
|
||||||
|
addItem(player, barrelMap[with.id]!!)
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
-77
@@ -1,77 +0,0 @@
|
|||||||
package content.global.skill.construction.decoration.kitchen;
|
|
||||||
|
|
||||||
|
|
||||||
import core.game.interaction.NodeUsageEvent;
|
|
||||||
import core.game.interaction.UseWithHandler;
|
|
||||||
import core.game.node.entity.player.Player;
|
|
||||||
import core.game.node.item.Item;
|
|
||||||
import core.game.node.scenery.Scenery;
|
|
||||||
import core.game.world.update.flag.context.Animation;
|
|
||||||
import core.plugin.Initializable;
|
|
||||||
import core.plugin.Plugin;
|
|
||||||
import org.rs09.consts.Items;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handles the Construction beer barrels.
|
|
||||||
* @author Splinter
|
|
||||||
*/
|
|
||||||
@Initializable
|
|
||||||
public class BeerBarrelPlugin extends UseWithHandler {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The object ids
|
|
||||||
*/
|
|
||||||
private static final int[] OBJECTS = new int[] {
|
|
||||||
13568, 13569, 13570, 13571, 13572, 13573
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructs a new {@Code BeerBarrelPlugin} {@Code Object}
|
|
||||||
*/
|
|
||||||
public BeerBarrelPlugin() {
|
|
||||||
super(1919);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Plugin<Object> newInstance(Object arg) throws Throwable {
|
|
||||||
for (int id : OBJECTS) {
|
|
||||||
addHandler(id, OBJECT_TYPE, this);
|
|
||||||
}
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean handle(NodeUsageEvent event) {
|
|
||||||
Player player = event.getPlayer();
|
|
||||||
final Scenery object = (Scenery) event.getUsedWith();
|
|
||||||
|
|
||||||
if (player.getInventory().remove(new Item(Items.BEER_GLASS_1919))) {
|
|
||||||
player.animate(Animation.create(3661 + (object.getId() - 13569)));
|
|
||||||
player.sendMessage("You fill up your glass with " + object.getName().toLowerCase().replace("barrel", "").trim() + ".");
|
|
||||||
player.getInventory().add(new Item(getReward(object.getId()), 1));
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the beer reward based on the interacted barrel.
|
|
||||||
* @return the item to give.
|
|
||||||
*/
|
|
||||||
public int getReward(int barrelId) {
|
|
||||||
switch (barrelId) {
|
|
||||||
case 13568:
|
|
||||||
return 1917;
|
|
||||||
case 13569:
|
|
||||||
return 5763;
|
|
||||||
case 13570:
|
|
||||||
return 1905;
|
|
||||||
case 13571:
|
|
||||||
return 1909;
|
|
||||||
case 13572:
|
|
||||||
return 1911;
|
|
||||||
case 13573:
|
|
||||||
return 5755;
|
|
||||||
}
|
|
||||||
return 1917;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+42
@@ -0,0 +1,42 @@
|
|||||||
|
package content.global.skill.construction.decoration.kitchen
|
||||||
|
|
||||||
|
import core.api.openDialogue
|
||||||
|
import core.game.interaction.IntType
|
||||||
|
import core.game.interaction.InteractionListener
|
||||||
|
import org.rs09.consts.Items
|
||||||
|
import org.rs09.consts.Scenery
|
||||||
|
|
||||||
|
class LarderListener : InteractionListener {
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
private val wooden_larder_items = listOf(
|
||||||
|
"Tea Leaves" to Items.TEA_LEAVES_7738,
|
||||||
|
"Bucket of Milk" to Items.BUCKET_OF_MILK_1927
|
||||||
|
)
|
||||||
|
private val oak_larder_items = wooden_larder_items + listOf(
|
||||||
|
"Eggs" to Items.EGG_1944,
|
||||||
|
"Pot of Flour" to Items.POT_OF_FLOUR_1933
|
||||||
|
)
|
||||||
|
private val teak_larder_items = oak_larder_items + listOf(
|
||||||
|
"Potatoes" to Items.POTATO_1942,
|
||||||
|
"Garlic" to Items.GARLIC_1550,
|
||||||
|
"Onions" to Items.ONION_1957,
|
||||||
|
"Cheese" to Items.CHEESE_1985
|
||||||
|
)
|
||||||
|
|
||||||
|
val larders = mapOf(
|
||||||
|
Scenery.LARDER_13565 to wooden_larder_items,
|
||||||
|
Scenery.LARDER_13566 to oak_larder_items,
|
||||||
|
Scenery.LARDER_13567 to teak_larder_items
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun defineListeners() {
|
||||||
|
on(larders.keys.toIntArray(), IntType.SCENERY, "Search") { player, node ->
|
||||||
|
openDialogue(player, LarderDialogue(node.id))
|
||||||
|
return@on true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class LarderDialogue(shelfId: Int) : AbstractContainer(shelfId, larders, "larder")
|
||||||
|
}
|
||||||
-149
@@ -1,149 +0,0 @@
|
|||||||
package content.global.skill.construction.decoration.kitchen;
|
|
||||||
|
|
||||||
|
|
||||||
import core.cache.def.impl.SceneryDefinition;
|
|
||||||
import core.plugin.Initializable;
|
|
||||||
import core.game.dialogue.DialoguePlugin;
|
|
||||||
import core.game.interaction.OptionHandler;
|
|
||||||
import core.game.node.Node;
|
|
||||||
import core.game.node.entity.player.Player;
|
|
||||||
import core.game.node.item.Item;
|
|
||||||
import core.plugin.Plugin;
|
|
||||||
import core.plugin.ClassScanner;
|
|
||||||
import org.rs09.consts.Items;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handles the interactions for the three Larders.
|
|
||||||
* @author Splinter
|
|
||||||
*/
|
|
||||||
@Initializable
|
|
||||||
public final class LarderPlugin extends OptionHandler {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Plugin<Object> newInstance(Object arg) throws Throwable {
|
|
||||||
ClassScanner.definePlugin(new LarderDialogue());
|
|
||||||
SceneryDefinition.forId(13565).getHandlers().put("option:search", this);
|
|
||||||
SceneryDefinition.forId(13566).getHandlers().put("option:search", this);
|
|
||||||
SceneryDefinition.forId(13567).getHandlers().put("option:search", this);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean handle(Player player, Node node, String option) {
|
|
||||||
player.getDialogueInterpreter().open(42048, node.getId());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Dialogue options for the Larders.
|
|
||||||
* @author Splinter
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
public final class LarderDialogue extends DialoguePlugin {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructs a new {@code LarderDialogue} {@code Object}.
|
|
||||||
*/
|
|
||||||
public LarderDialogue() {
|
|
||||||
/**
|
|
||||||
* empty.
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructs a new {@code LarderDialogue} {@code Object}.
|
|
||||||
*
|
|
||||||
* @param player
|
|
||||||
* the player.
|
|
||||||
*/
|
|
||||||
public LarderDialogue(Player player) {
|
|
||||||
super(player);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DialoguePlugin newInstance(Player player) {
|
|
||||||
return new LarderDialogue(player);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean open(Object... args) {
|
|
||||||
int id = (int) args[0];
|
|
||||||
switch (id) {
|
|
||||||
case 13565:
|
|
||||||
interpreter.sendOptions("Select an Option", "Tea Leaves", "Bucket of Milk");
|
|
||||||
stage = 1;
|
|
||||||
break;
|
|
||||||
case 13566:
|
|
||||||
interpreter.sendOptions("Select an Option", "Tea Leaves", "Bucket of Milk", "Eggs", "Pot of Flour");
|
|
||||||
stage = 1;
|
|
||||||
break;
|
|
||||||
case 13567:
|
|
||||||
interpreter.sendOptions("Select an Option", "Tea Leaves", "Bucket of Milk", "Eggs", "Pot of Flour", "More Options");
|
|
||||||
stage = 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean handle(int interfaceId, int buttonId) {
|
|
||||||
if (player.getInventory().freeSlots() < 1) {
|
|
||||||
player.sendMessage("You need at least one free inventory space to take from the larder.");
|
|
||||||
end();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
switch (stage) {
|
|
||||||
case 1:
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
player.getInventory().add(new Item(Items.TEA_LEAVES_7738, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
player.getInventory().add(new Item(Items.BUCKET_OF_MILK_1927, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
player.getInventory().add(new Item(Items.EGG_1944, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
player.getInventory().add(new Item(Items.POT_OF_FLOUR_1933, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
player.getDialogueInterpreter().sendOptions(
|
|
||||||
"Select an Option", "Potatoes", "Garlic", "Onions", "Cheese");
|
|
||||||
stage = 2;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
player.getInventory().add(new Item(Items.POTATO_1942, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
player.getInventory().add(new Item(Items.GARLIC_1550, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
player.getInventory().add(new Item(Items.ONION_1957, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
player.getInventory().add(new Item(Items.CHEESE_1985, 1));
|
|
||||||
end();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int[] getIds() {
|
|
||||||
return new int[] { 42048 };
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,97 @@
|
|||||||
|
package content.global.skill.construction.decoration.kitchen
|
||||||
|
|
||||||
|
import core.api.*
|
||||||
|
import core.game.interaction.IntType
|
||||||
|
import core.game.interaction.InteractionListener
|
||||||
|
import org.rs09.consts.Items
|
||||||
|
import org.rs09.consts.Scenery
|
||||||
|
|
||||||
|
|
||||||
|
class ShelfListener : InteractionListener {
|
||||||
|
companion object {
|
||||||
|
// Source for text https://www.youtube.com/watch?v=SNuqelEft3Y
|
||||||
|
|
||||||
|
private val woodshelf_1_items = listOf(
|
||||||
|
"Kettle" to Items.KETTLE_7688,
|
||||||
|
"Teapot" to Items.TEAPOT_7702,
|
||||||
|
"Cup" to Items.EMPTY_CUP_7728
|
||||||
|
)
|
||||||
|
|
||||||
|
private val woodshelf_2_items = woodshelf_1_items + listOf(
|
||||||
|
"Beer glass" to Items.BEER_GLASS_7742
|
||||||
|
)
|
||||||
|
|
||||||
|
private val woodshelf_3_items = woodshelf_2_items.map { (name, itemId) ->
|
||||||
|
when (name) {
|
||||||
|
"Cup" -> {
|
||||||
|
"Porcelain cup" to Items.PORCELAIN_CUP_7732
|
||||||
|
}
|
||||||
|
|
||||||
|
"Teapot" -> {
|
||||||
|
"Teapot" to Items.TEAPOT_7714
|
||||||
|
}
|
||||||
|
|
||||||
|
else -> {
|
||||||
|
name to itemId
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} + listOf("Cake tin" to Items.CAKE_TIN_1887)
|
||||||
|
|
||||||
|
private val oakshelf_1_items = woodshelf_2_items + listOf("Cake tin" to Items.CAKE_TIN_1887) + listOf("Bowl" to Items.BOWL_1923)
|
||||||
|
|
||||||
|
private val oakshelf_2_items = oakshelf_1_items.map { (name, itemId) ->
|
||||||
|
when (name) {
|
||||||
|
"Cup" -> {
|
||||||
|
"Porcelain cup" to Items.PORCELAIN_CUP_7732
|
||||||
|
}
|
||||||
|
|
||||||
|
"Teapot" -> {
|
||||||
|
"Teapot" to Items.TEAPOT_7714
|
||||||
|
}
|
||||||
|
|
||||||
|
else -> {
|
||||||
|
name to itemId
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} + listOf("Pie dish" to Items.PIE_DISH_2313)
|
||||||
|
|
||||||
|
private val teakshelf_1_items = oakshelf_2_items + listOf(
|
||||||
|
"Pot" to Items.EMPTY_POT_1931
|
||||||
|
)
|
||||||
|
|
||||||
|
private val teakshelf_2_items = teakshelf_1_items.map { (name, itemId) ->
|
||||||
|
when (name) {
|
||||||
|
"Porcelain cup" -> {
|
||||||
|
"Porcelain cup" to Items.PORCELAIN_CUP_7735
|
||||||
|
}
|
||||||
|
|
||||||
|
"Teapot" -> {
|
||||||
|
"Teapot" to Items.TEAPOT_7726
|
||||||
|
}
|
||||||
|
|
||||||
|
else -> {
|
||||||
|
name to itemId
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} + listOf("Chef's Hat" to Items.CHEFS_HAT_1949)
|
||||||
|
|
||||||
|
val shelves = mapOf(
|
||||||
|
Scenery.SHELVES_13545 to woodshelf_1_items,
|
||||||
|
Scenery.SHELVES_13546 to woodshelf_2_items,
|
||||||
|
Scenery.SHELVES_13547 to woodshelf_3_items,
|
||||||
|
Scenery.SHELVES_13548 to oakshelf_1_items,
|
||||||
|
Scenery.SHELVES_13549 to oakshelf_2_items,
|
||||||
|
Scenery.SHELVES_13550 to teakshelf_1_items,
|
||||||
|
Scenery.SHELVES_13551 to teakshelf_2_items,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun defineListeners() {
|
||||||
|
on(shelves.keys.toIntArray(), IntType.SCENERY, "Search") { player, node ->
|
||||||
|
openDialogue(player, ShelfDialogue(node.id))
|
||||||
|
return@on true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class ShelfDialogue(shelfId: Int) : AbstractContainer(shelfId, shelves, "shelf")
|
||||||
|
}
|
||||||
-239
@@ -1,239 +0,0 @@
|
|||||||
package content.global.skill.construction.decoration.kitchen;
|
|
||||||
|
|
||||||
|
|
||||||
import core.cache.def.impl.SceneryDefinition;
|
|
||||||
import core.game.dialogue.DialoguePlugin;
|
|
||||||
import core.game.interaction.OptionHandler;
|
|
||||||
import core.game.node.Node;
|
|
||||||
import core.game.node.entity.player.Player;
|
|
||||||
import core.game.node.item.Item;
|
|
||||||
import core.plugin.Initializable;
|
|
||||||
import core.plugin.Plugin;
|
|
||||||
import core.plugin.ClassScanner;
|
|
||||||
import org.rs09.consts.Items;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handles the shelves in the kitchen room.
|
|
||||||
* @author Splinter
|
|
||||||
*/
|
|
||||||
@Initializable
|
|
||||||
public final class ShelfPlugin extends OptionHandler {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Plugin<Object> newInstance(Object arg) throws Throwable {
|
|
||||||
ClassScanner.definePlugin(new ShelfDialogue());
|
|
||||||
for (int i = 13545; i < 13552; i++) {
|
|
||||||
SceneryDefinition.forId(i).getHandlers().put("option:search", this);
|
|
||||||
}
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean handle(Player player, Node node, String option) {
|
|
||||||
player.getDialogueInterpreter().open(778341, node.getId());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Dialogue options for the shelves, what a mess!
|
|
||||||
* @author Splinter
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
public final class ShelfDialogue extends DialoguePlugin {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructs a new {@code ShelfDialogue} {@code Object}.
|
|
||||||
*/
|
|
||||||
public ShelfDialogue() {
|
|
||||||
/**
|
|
||||||
* empty.
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructs a new {@code ShelfDialogue} {@code Object}.
|
|
||||||
* @param player the player.
|
|
||||||
*/
|
|
||||||
public ShelfDialogue(Player player) {
|
|
||||||
super(player);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DialoguePlugin newInstance(Player player) {
|
|
||||||
return new ShelfDialogue(player);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean open(Object... args) {
|
|
||||||
int id = (int) args[0];
|
|
||||||
switch (id) {
|
|
||||||
case 13545:// wood 1
|
|
||||||
interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup");
|
|
||||||
stage = 1;
|
|
||||||
break;
|
|
||||||
case 13546:// wood 2
|
|
||||||
interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup", "Empty beer glass");
|
|
||||||
stage = 1;
|
|
||||||
break;
|
|
||||||
case 13547:// wood 3
|
|
||||||
interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup", "Empty beer glass", "Cake tin");
|
|
||||||
stage = 1;
|
|
||||||
break;
|
|
||||||
case 13548:// oak 1
|
|
||||||
interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup", "Empty beer glass", "Bowl");
|
|
||||||
stage = 2;
|
|
||||||
break;
|
|
||||||
case 13549:// oak 2
|
|
||||||
interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Porcelain cup", "Empty beer glass", "More Options");
|
|
||||||
stage = 3;
|
|
||||||
break;
|
|
||||||
case 13550:// teak 1
|
|
||||||
case 13551:
|
|
||||||
interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Porcelain cup", "Empty beer glass", "More Options");
|
|
||||||
stage = 5;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean handle(int interfaceId, int buttonId) {
|
|
||||||
if (player.getInventory().freeSlots() < 1) {
|
|
||||||
player.sendMessage("You need at least one free inventory space to take from the shelves.");
|
|
||||||
end();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
switch (stage) {
|
|
||||||
case 1:// all wood shelves
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.KETTLE_7688, 1));
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.EMPTY_CUP_7728, 1));
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.CAKE_TIN_1887, 1));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:// Oak shelf #1
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.KETTLE_7688, 1));
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.EMPTY_CUP_7728, 1));
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BOWL_1923, 1));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 3:// Oak shelves #2 only
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.KETTLE_7688, 1));
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.PORCELAIN_CUP_4244, 1));
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
interpreter.sendOptions("Select an Option", "Bowl", "Cake tin");
|
|
||||||
stage = 4;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 4:// Oak shelves #2 only
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BOWL_1923, 1));
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.CAKE_TIN_1887, 1));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case 5:// teak shelves
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.KETTLE_7688, 1));
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.PORCELAIN_CUP_7735, 1));
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
interpreter.sendOptions("Select an Option", "Bowl", "Pie dish", "Empty pot");
|
|
||||||
stage = 6;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 6:// teak shelves
|
|
||||||
switch (buttonId) {
|
|
||||||
case 1:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.BOWL_1923, 1));
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.PIE_DISH_2313, 1));
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
end();
|
|
||||||
player.getInventory().add(new Item(Items.EMPTY_POT_1931, 1));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int[] getIds() {
|
|
||||||
return new int[] { 778341 };
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+88
@@ -0,0 +1,88 @@
|
|||||||
|
package content.global.skill.construction.decoration.kitchen
|
||||||
|
|
||||||
|
import core.api.*
|
||||||
|
import core.game.interaction.InteractionListener
|
||||||
|
import core.game.interaction.QueueStrength
|
||||||
|
import org.rs09.consts.Scenery as SceneryConst
|
||||||
|
import org.rs09.consts.Items
|
||||||
|
import core.game.node.scenery.Scenery
|
||||||
|
import core.tools.secondsToTicks
|
||||||
|
|
||||||
|
|
||||||
|
class StoveInteraction : InteractionListener {
|
||||||
|
|
||||||
|
// Imagine if these indexes incremented logically...
|
||||||
|
companion object{
|
||||||
|
val valid_stoves = intArrayOf(
|
||||||
|
SceneryConst.FIREPIT_WITH_HOOK_13529,
|
||||||
|
SceneryConst.FIREPIT_WITH_POT_13531,
|
||||||
|
SceneryConst.SMALL_OVEN_13533,
|
||||||
|
SceneryConst.LARGE_OVEN_13536,
|
||||||
|
SceneryConst.STEEL_RANGE_13539,
|
||||||
|
SceneryConst.FANCY_RANGE_13542
|
||||||
|
)
|
||||||
|
val in_progress_stoves = intArrayOf(
|
||||||
|
SceneryConst.FIREPIT_WITH_HOOK_13530,
|
||||||
|
SceneryConst.FIREPIT_WITH_POT_13532,
|
||||||
|
SceneryConst.SMALL_OVEN_13534,
|
||||||
|
SceneryConst.LARGE_OVEN_13537,
|
||||||
|
SceneryConst.STEEL_RANGE_13541,
|
||||||
|
SceneryConst.FANCY_RANGE_13544
|
||||||
|
|
||||||
|
)
|
||||||
|
val stoves_with_kettle = intArrayOf(
|
||||||
|
SceneryConst.FIREPIT_WITH_HOOK_13530,
|
||||||
|
SceneryConst.FIREPIT_WITH_POT_13532,
|
||||||
|
SceneryConst.SMALL_OVEN_13535,
|
||||||
|
SceneryConst.LARGE_OVEN_13538,
|
||||||
|
SceneryConst.STEEL_RANGE_13540,
|
||||||
|
SceneryConst.FANCY_RANGE_13543
|
||||||
|
|
||||||
|
)
|
||||||
|
const val kettleBoiled = "kettle_boiled"
|
||||||
|
}
|
||||||
|
override fun defineListeners() {
|
||||||
|
onUseWith(SCENERY, Items.FULL_KETTLE_7690, *valid_stoves){ player, used, with ->
|
||||||
|
val idx = valid_stoves.indexOf(with.id)
|
||||||
|
if (removeItem(player, used)){
|
||||||
|
replaceScenery(with as Scenery, in_progress_stoves[idx], -1)
|
||||||
|
sendMessage(player, "You place the kettle over the fire.")
|
||||||
|
setAttribute(player, kettleBoiled, 1)
|
||||||
|
queueScript(player, secondsToTicks(10), QueueStrength.SOFT){ _ ->
|
||||||
|
sendMessage(player, "The kettle boils.")
|
||||||
|
// Of course they changed how these items work so we need 2 different cases
|
||||||
|
setAttribute(player, kettleBoiled, 2)
|
||||||
|
if (with.id in intArrayOf(SceneryConst.FIREPIT_WITH_HOOK_13529, SceneryConst.FIREPIT_WITH_POT_13531))
|
||||||
|
return@queueScript stopExecuting(player)
|
||||||
|
else{
|
||||||
|
getScenery(with.location)?.let { replaceScenery(it, stoves_with_kettle[idx], -1) }
|
||||||
|
return@queueScript stopExecuting(player)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
on(stoves_with_kettle, SCENERY, "take-kettle"){ player, node ->
|
||||||
|
if (getAttribute(player, kettleBoiled, 0) == 0){
|
||||||
|
sendMessage(player, "This is not your kettle.")
|
||||||
|
return@on false
|
||||||
|
}
|
||||||
|
else if (getAttribute(player, kettleBoiled, 0) == 1){
|
||||||
|
sendMessage(player, "The kettle has not boiled yet.")
|
||||||
|
return@on false
|
||||||
|
}
|
||||||
|
if(addItem(player, Items.HOT_KETTLE_7691)){
|
||||||
|
replaceScenery(node as Scenery, valid_stoves[stoves_with_kettle.indexOf(node.id)], -1)
|
||||||
|
setAttribute(player, kettleBoiled, 0)
|
||||||
|
return@on true
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
sendMessage(player, "You do not have space to do that.")
|
||||||
|
return@on false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -81,7 +81,7 @@ public enum CookableItems {
|
|||||||
// bowl foods
|
// bowl foods
|
||||||
BOWL_STEW(2003, 2001, 2005, 25, 117, 68, 392, 68, 392),
|
BOWL_STEW(2003, 2001, 2005, 25, 117, 68, 392, 68, 392),
|
||||||
BOWL_CURRY(2011, 2009, 2013, 60, 280, 38, 332, 38, 332),
|
BOWL_CURRY(2011, 2009, 2013, 60, 280, 38, 332, 38, 332),
|
||||||
BOWL_NETTLE(4239, 4237, 4239, 20, 52, 78, 412, 78, 412),
|
BOWL_NETTLE(4239, 4237, 4239, 20, 53, 78, 412, 78, 412),
|
||||||
BOWL_EGG(7078, 7076, 7090, 13, 50, 0, 0, 90, 438),
|
BOWL_EGG(7078, 7076, 7090, 13, 50, 0, 0, 90, 438),
|
||||||
BOWL_ONION(7084, 1871, 7092, 43, 60, 36, 322, 36, 322),
|
BOWL_ONION(7084, 1871, 7092, 43, 60, 36, 322, 36, 322),
|
||||||
BOWL_MUSHROOM(7082, 7080, 7094, 46, 60, 16, 282, 16, 282),
|
BOWL_MUSHROOM(7082, 7080, 7094, 46, 60, 16, 282, 16, 282),
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ class CookingRewrite : InteractionListener {
|
|||||||
list.add(RAW_BEEF_2132)
|
list.add(RAW_BEEF_2132)
|
||||||
list.add(RAW_BEAR_MEAT_2136)
|
list.add(RAW_BEAR_MEAT_2136)
|
||||||
list.add(SEAWEED_401)
|
list.add(SEAWEED_401)
|
||||||
|
list.add(Items.BOWL_OF_WATER_1921)
|
||||||
RAW_FOODS = list.toIntArray()
|
RAW_FOODS = list.toIntArray()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -79,6 +80,10 @@ class CookingRewrite : InteractionListener {
|
|||||||
player.packetDispatch.sendMessage("You need to cook this on a range.")
|
player.packetDispatch.sendMessage("You need to cook this on a range.")
|
||||||
return@onUseWith false
|
return@onUseWith false
|
||||||
}
|
}
|
||||||
|
Items.BOWL_OF_WATER_1921 ->{
|
||||||
|
cook(player, obj, Items.BOWL_OF_WATER_1921, Items.BOWL_OF_HOT_WATER_4456, 1)
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//cook a standard item
|
//cook a standard item
|
||||||
|
|||||||
@@ -0,0 +1,166 @@
|
|||||||
|
package content.global.skill.cooking
|
||||||
|
|
||||||
|
import core.api.*
|
||||||
|
import core.game.interaction.InteractionListener
|
||||||
|
import core.game.node.Node
|
||||||
|
import core.game.node.entity.player.Player
|
||||||
|
import core.game.node.entity.skill.Skills
|
||||||
|
import org.rs09.consts.Items
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This deals with all tea mixtures
|
||||||
|
* cup of tea
|
||||||
|
* nettle tea
|
||||||
|
* nettle water
|
||||||
|
* nettle tea (cup)
|
||||||
|
* poh tea
|
||||||
|
* clay
|
||||||
|
* porcelain
|
||||||
|
* gold trim
|
||||||
|
* Flask
|
||||||
|
*/
|
||||||
|
class TeaInteraction : InteractionListener {
|
||||||
|
private val teaMilkMap = mapOf(
|
||||||
|
Items.NETTLE_TEA_4239 to Items.NETTLE_TEA_4240,
|
||||||
|
Items.CUP_OF_TEA_4242 to Items.CUP_OF_TEA_4243,
|
||||||
|
Items.CUP_OF_TEA_4245 to Items.CUP_OF_TEA_4246,
|
||||||
|
Items.CUP_OF_TEA_7730 to Items.CUP_OF_TEA_7731,
|
||||||
|
Items.CUP_OF_TEA_7733 to Items.CUP_OF_TEA_7734,
|
||||||
|
Items.CUP_OF_TEA_7736 to Items.CUP_OF_TEA_7737,
|
||||||
|
)
|
||||||
|
|
||||||
|
private val teaCupMap = mapOf(
|
||||||
|
Items.NETTLE_TEA_4239 to Items.CUP_OF_TEA_4242,
|
||||||
|
Items.NETTLE_TEA_4240 to Items.CUP_OF_TEA_4243,
|
||||||
|
Items.BOWL_OF_HOT_WATER_4456 to Items.CUP_OF_HOT_WATER_4460
|
||||||
|
)
|
||||||
|
|
||||||
|
// This is specifically for the porcelain cup without a handle for Ghost Ahoy
|
||||||
|
private val teaCupPorcelainMap = mapOf(
|
||||||
|
Items.NETTLE_TEA_4239 to Items.CUP_OF_TEA_4245,
|
||||||
|
Items.NETTLE_TEA_4240 to Items.CUP_OF_TEA_4246
|
||||||
|
)
|
||||||
|
|
||||||
|
private val emptyTeaPot = intArrayOf(
|
||||||
|
Items.TEAPOT_7702,
|
||||||
|
Items.TEAPOT_7714,
|
||||||
|
Items.TEAPOT_7726
|
||||||
|
)
|
||||||
|
|
||||||
|
private val leafTeaPot = intArrayOf(
|
||||||
|
Items.TEAPOT_WITH_LEAVES_7700,
|
||||||
|
Items.TEAPOT_WITH_LEAVES_7712,
|
||||||
|
Items.TEAPOT_WITH_LEAVES_7724
|
||||||
|
)
|
||||||
|
|
||||||
|
private val filledTeaPot = intArrayOf(
|
||||||
|
Items.POT_OF_TEA_4_7692,
|
||||||
|
Items.POT_OF_TEA_3_7694,
|
||||||
|
Items.POT_OF_TEA_2_7696,
|
||||||
|
Items.POT_OF_TEA_1_7698,
|
||||||
|
Items.POT_OF_TEA_4_7704,
|
||||||
|
Items.POT_OF_TEA_3_7706,
|
||||||
|
Items.POT_OF_TEA_2_7708,
|
||||||
|
Items.POT_OF_TEA_1_7710,
|
||||||
|
Items.POT_OF_TEA_4_7716,
|
||||||
|
Items.POT_OF_TEA_3_7718,
|
||||||
|
Items.POT_OF_TEA_2_7720,
|
||||||
|
Items.POT_OF_TEA_1_7722,
|
||||||
|
)
|
||||||
|
|
||||||
|
private val emptyBuilderCup = intArrayOf(
|
||||||
|
Items.EMPTY_CUP_7728,
|
||||||
|
Items.PORCELAIN_CUP_7732,
|
||||||
|
Items.PORCELAIN_CUP_7735
|
||||||
|
)
|
||||||
|
|
||||||
|
override fun defineListeners() {
|
||||||
|
onUseWith(ITEM, teaMilkMap.keys.toIntArray(), Items.BUCKET_OF_MILK_1927){ player, used, with ->
|
||||||
|
if (removeItem(player, used) && removeItem(player, with)){
|
||||||
|
addItem(player, teaMilkMap[used.id]!!)
|
||||||
|
addItem(player, Items.BUCKET_1925)
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
onUseWith(ITEM, teaCupMap.keys.toIntArray(), Items.EMPTY_CUP_1980){ player, used, with ->
|
||||||
|
if (used.id != Items.BOWL_OF_HOT_WATER_4456){
|
||||||
|
if (getDynLevel(player, Skills.COOKING) < 20){
|
||||||
|
sendDialogue(player, "You need a cooking level of 20 to make tea.")
|
||||||
|
return@onUseWith false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (removeItem(player, used) && removeItem(player, with)) {
|
||||||
|
addItem(player, teaCupMap[used.id]!!)
|
||||||
|
addItem(player, Items.BOWL_1923)
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
onUseWith(ITEM, Items.BOWL_OF_WATER_1921, Items.NETTLES_4241) { player, used, with ->
|
||||||
|
if (removeItem(player, used) && removeItem(player, with)){
|
||||||
|
addItem(player, Items.NETTLE_WATER_4237)
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
onUseWith(ITEM, teaCupPorcelainMap.keys.toIntArray(), Items.PORCELAIN_CUP_4244){player, used, with ->
|
||||||
|
if (getDynLevel(player, Skills.COOKING) < 20){
|
||||||
|
sendDialogue(player, "You need a cooking level of 20 to make tea.")
|
||||||
|
return@onUseWith false
|
||||||
|
}
|
||||||
|
|
||||||
|
if(removeItem(player, used) && removeItem(player, with)){
|
||||||
|
addItem(player, teaCupPorcelainMap[used.id]!!)
|
||||||
|
addItem(player, Items.BOWL_1923)
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
onUseWith(ITEM, emptyTeaPot, Items.TEA_LEAVES_7738) { player, used, with ->
|
||||||
|
if (removeItem(player, used) && removeItem(player, with)){
|
||||||
|
addItem(player, used.id - 2)
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
onUseWith(ITEM, leafTeaPot, Items.HOT_KETTLE_7691) { player, used, with ->
|
||||||
|
if (getDynLevel(player, Skills.COOKING) < 20){
|
||||||
|
sendDialogue(player,"You need to be level 20 to make tea.")
|
||||||
|
return@onUseWith false
|
||||||
|
}
|
||||||
|
if (removeItem(player, used) && removeItem(player, with)){
|
||||||
|
addItem(player, Items.KETTLE_7688)
|
||||||
|
addItem(player, used.id - 8)
|
||||||
|
rewardXP(player, Skills.COOKING, 53.0)
|
||||||
|
|
||||||
|
}
|
||||||
|
return@onUseWith true
|
||||||
|
}
|
||||||
|
|
||||||
|
onUseWith(ITEM, filledTeaPot, *emptyBuilderCup) { player, used, with ->
|
||||||
|
return@onUseWith fillBuildersTea(player, used, with)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun fillBuildersTea(player: Player, used: Node, with: Node) : Boolean {
|
||||||
|
if (removeItem(player, used) && removeItem(player, with)){
|
||||||
|
// Thanks tea pot with tea leaves
|
||||||
|
if (used.id + 4 in emptyTeaPot){
|
||||||
|
addItem(player, used.id + 4)
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
addItem(player, used.id + 2)
|
||||||
|
}
|
||||||
|
// Why do these cups have a noted form!
|
||||||
|
if (with.id == Items.EMPTY_CUP_7728){
|
||||||
|
addItem(player, with.id + 2)
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
addItem(player, with.id + 1)
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -39,7 +39,7 @@ public final class DesertZone extends MapZone implements Plugin<Object> {
|
|||||||
/**
|
/**
|
||||||
* Represents data of water vessils to dry up.
|
* Represents data of water vessils to dry up.
|
||||||
*/
|
*/
|
||||||
private static final int[][] VESSILS = new int[][] { { 1937, 1935 }, { 1929, 1925 }, { 1921, 1923 }, { 227, 229 } };
|
private static final int[][] VESSILS = new int[][] { { 1937, 1935 }, { 1929, 1925 }, { 1921, 1923 }, { 227, 229 }, { 4458, 1980} };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents the animation of drinking water.
|
* Represents the animation of drinking water.
|
||||||
|
|||||||
@@ -3,5 +3,6 @@ package core.api
|
|||||||
enum class Container {
|
enum class Container {
|
||||||
INVENTORY,
|
INVENTORY,
|
||||||
BANK,
|
BANK,
|
||||||
EQUIPMENT
|
EQUIPMENT,
|
||||||
|
BoB
|
||||||
}
|
}
|
||||||
@@ -341,6 +341,12 @@ fun <T> removeItem(player: Player, item: T, container: Container = Container.INV
|
|||||||
Container.INVENTORY -> player.inventory.remove(it)
|
Container.INVENTORY -> player.inventory.remove(it)
|
||||||
Container.BANK -> player.bank.remove(it) || player.bankSecondary.remove(it)
|
Container.BANK -> player.bank.remove(it) || player.bankSecondary.remove(it)
|
||||||
Container.EQUIPMENT -> player.equipment.remove(it)
|
Container.EQUIPMENT -> player.equipment.remove(it)
|
||||||
|
Container.BoB -> {
|
||||||
|
if (player.familiarManager.hasFamiliar() && player.familiarManager.familiar.isBurdenBeast)
|
||||||
|
(player.familiarManager.familiar as BurdenBeast).container.remove(it)
|
||||||
|
else
|
||||||
|
false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -375,6 +381,12 @@ fun addItem(player: Player, id: Int, amount: Int = 1, container: Container = Con
|
|||||||
Container.INVENTORY -> player.inventory
|
Container.INVENTORY -> player.inventory
|
||||||
Container.BANK -> player.bank
|
Container.BANK -> player.bank
|
||||||
Container.EQUIPMENT -> player.equipment
|
Container.EQUIPMENT -> player.equipment
|
||||||
|
Container.BoB -> {
|
||||||
|
if(player.familiarManager.hasFamiliar() && player.familiarManager.familiar.isBurdenBeast)
|
||||||
|
(player.familiarManager.familiar as BurdenBeast).container
|
||||||
|
else
|
||||||
|
return false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return cont.add(Item(id, amount))
|
return cont.add(Item(id, amount))
|
||||||
@@ -394,6 +406,7 @@ fun replaceSlot(player: Player, slot: Int, item: Item, currentItem: Item? = null
|
|||||||
Container.INVENTORY -> player.inventory
|
Container.INVENTORY -> player.inventory
|
||||||
Container.EQUIPMENT -> player.equipment
|
Container.EQUIPMENT -> player.equipment
|
||||||
Container.BANK -> player.bank
|
Container.BANK -> player.bank
|
||||||
|
Container.BoB -> (player.familiarManager.familiar as BurdenBeast).container
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item.id == 65535 || item.amount <= 0) {
|
if (item.id == 65535 || item.amount <= 0) {
|
||||||
@@ -1684,6 +1697,14 @@ fun <T> removeAll(player: Player, item: T, container: Container = Container.INVE
|
|||||||
player.bank.remove(Item(it, amountInPrimary)) && player.bankSecondary.remove(Item(it, amountInSecondary))
|
player.bank.remove(Item(it, amountInPrimary)) && player.bankSecondary.remove(Item(it, amountInSecondary))
|
||||||
}
|
}
|
||||||
Container.INVENTORY -> player.inventory.remove(Item(it, amountInInventory(player, it)))
|
Container.INVENTORY -> player.inventory.remove(Item(it, amountInInventory(player, it)))
|
||||||
|
Container.BoB -> {
|
||||||
|
if (player.familiarManager.hasFamiliar() && player.familiarManager.familiar.isBurdenBeast){
|
||||||
|
val cont = (player.familiarManager.familiar as BurdenBeast).container
|
||||||
|
cont.remove(Item(it, cont.getAmount(it)))
|
||||||
|
}
|
||||||
|
else
|
||||||
|
false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user