diff --git a/def.go b/def.go index 52f152a..67e2f64 100644 --- a/def.go +++ b/def.go @@ -100,9 +100,9 @@ type ChatWarsItem struct { ObjID64 int64 `json:"obj_id"` ItemTypeID int64 `json:"item_type_id"` Code string `json:"code"` - Name string `json:"name"` + Names []string `json:"name"` Weight int64 `json:"weight"` - Exchange bool `json:"exchange"` + Exchange string `json:"exchange"` Auction bool `json:"auction"` Craft ChatWarsItemCraft `json:"craft"` } diff --git a/items.go b/items.go index a41eccd..f476d22 100644 --- a/items.go +++ b/items.go @@ -30,642 +30,3 @@ func reloadObjItem(code string, name string, itemTypeID64 int64, weight int64, e } } - -func resetObjItem() { - log.Print("Reloading items") - - reloadObjItem(`01`, `Thread`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`02`, `Stick`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`03`, `Pelt`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`04`, `Bone`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`05`, `Coal`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`06`, `Charcoal`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`07`, `Powder`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`08`, `Iron Ore`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`08`, `Iron ore`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`09`, `Cloth`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`10`, `Silver Ore`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`10`, `Silver ore`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`100`, `Pouch of Gold`, cacheObjSubType[`item_res`], 0, false, false) - reloadObjItem(`11`, `Bauxite`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`12`, `Cord`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`13`, `Magic Stone`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`13`, `Magic stone`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`14`, `Wooden Shaft`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`14`, `Wooden shaft`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`15`, `Sapphire`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`16`, `Solvent`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`17`, `Ruby`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`18`, `Hardener`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`19`, `Steel`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`20`, `Leather`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`21`, `Bone Powder`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`21`, `Bone powder`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`22`, `String`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`23`, `Coke`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`24`, `Purified Powder`, cacheObjSubType[`item_res`], 1, false, false) - reloadObjItem(`24`, `Purified powder`, cacheObjSubType[`item_res`], 1, false, false) - reloadObjItem(`25`, `Silver Alloy`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`25`, `Silver alloy`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`27`, `Steel Mold`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`27`, `Steel mold`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`28`, `Silver Mold`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`28`, `Silver mold`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`29`, `Blacksmith Frame`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`29`, `Blacksmith frame`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`30`, `Artisan Frame`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`30`, `Artisan frame`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`31`, `Rope`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`32`, `Silver Frame`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`32`, `Silver frame`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`33`, `Metal Plate`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`33`, `Metal plate`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`34`, `Metallic Fiber`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`34`, `Metallic fiber`, cacheObjSubType[`item_res`], 2, true, false) - reloadObjItem(`35`, `Crafted Leather`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`35`, `Crafted leather`, cacheObjSubType[`item_res`], 1, true, false) - reloadObjItem(`36`, `Quality Cloth`, cacheObjSubType[`item_res`], 2, false, false) - reloadObjItem(`37`, `Blacksmith Mold`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`38`, `Artisan Mold`, cacheObjSubType[`item_res`], 3, false, false) - reloadObjItem(`39`, `Stinky Sumac`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`40`, `Mercy Sassafras`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`41`, `Cliff Rue`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`42`, `Love Creeper`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`43`, `Wolf Root`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`44`, `Swamp Lavender`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`45`, `White Blossom`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`46`, `Ilaves`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`47`, `Ephijora`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`48`, `Storm Hyssop`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`49`, `Cave Garlic`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`50`, `Yellow Seed`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`51`, `Tecceagrass`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`52`, `Spring Bay Leaf`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`53`, `Ash Rosemary`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`54`, `Sanguine Parsley`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`55`, `Sun Tarragon`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`56`, `Maccunut`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`57`, `Dragon Seed`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`58`, `Queen's Pepper`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`59`, `Plasma of Abyss`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`59`, `Plasma of abyss`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`60`, `Ultramarine Dust`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`61`, `Ethereal Bone`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`62`, `Itacory`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`63`, `Assassin Vine`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`64`, `Kloliarway`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`65`, `Astrulic`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`66`, `Flammia Nut`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`67`, `Plexisop`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`68`, `Mammoth Dill`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`69`, `Silver Dust`, cacheObjSubType[`item_alch`], 1, true, false) - reloadObjItem(`501`, `Wrapping`, cacheObjSubType[`item_misc`], 2, false, false) - reloadObjItem(`502`, `Leash`, cacheObjSubType[`item_misc`], 2, false, false) - reloadObjItem(`505`, `Wooden Arrow`, cacheObjSubType[`item_misc`], 10, false, false) - reloadObjItem(`507`, `Bottle of Remedy`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`509`, `Bottle of Poison`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`511`, `Steel Arrow`, cacheObjSubType[`item_misc`], 10, false, false) - reloadObjItem(`513`, `Silver Arrow`, cacheObjSubType[`item_misc`], 10, false, false) - reloadObjItem(`515`, `Broad Arrows Pack`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`517`, `Heavy Arrows Pack`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`519`, `Compound Arrows Pack`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`614`, `🎟Gift Coupon 'Pig'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`615`, `🎟Gift Coupon 'Horse'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`616`, `🎟Gift Coupon 'Owl'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`617`, `🎟Gift Coupon 'Mouse'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`618`, `Hay`, cacheObjSubType[`item_misc`], 5, true, false) // PROPAGATE TO WIKI - reloadObjItem(`619`, `Corn`, cacheObjSubType[`item_misc`], 5, true, false) // PROPAGATE TO WIKI - reloadObjItem(`620`, `Hamsters`, cacheObjSubType[`item_misc`], 5, true, false) // PROPAGATE TO WIKI - reloadObjItem(`621`, `Cheese`, cacheObjSubType[`item_misc`], 5, true, false) // PROPAGATE TO WIKI - reloadObjItem(`622`, `🎟Gift Coupon 'Gopher'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`623`, `🎟Gift Coupon 'Ants'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`624`, `🎟Gift Coupon 'Spider'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`625`, `🎟Gift Coupon 'Haunted'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`626`, `🎟Gift Coupon 'Camel'`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`a01`, `Cloth Jacket`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a01`, `Cloth jacket`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a02`, `Leather Shirt`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a03`, `Chain Mail`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a03`, `Chain mail`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a04`, `Silver Cuirass`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a04`, `Silver cuirass`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a05`, `Mithril Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a05`, `Mithril armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a06`, `Hat`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a07`, `Leather Hood`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a08`, `Steel Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a08`, `Steel helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a09`, `Silver Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a09`, `Silver helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a10`, `Mithril Helmet`, cacheObjSubType[`item_other`], 190, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a10`, `Mithril helmet`, cacheObjSubType[`item_other`], 190, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a11`, `Sandals`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a12`, `Leather Shoes`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a13`, `Steel Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a13`, `Steel boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a14`, `Silver Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a14`, `Silver boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a15`, `Mithril Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a15`, `Mithril boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a16`, `Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a17`, `Leather Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a17`, `Leather gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a18`, `Steel Gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a19`, `Silver Gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a19`, `Silver gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a20`, `Mithril Gauntlets`, cacheObjSubType[`item_other`], 125, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a20`, `Mithril gauntlets`, cacheObjSubType[`item_other`], 125, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a21`, `Wooden Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a21`, `Wooden shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a22`, `Skeleton Buckler`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a23`, `Bronze Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a23`, `Bronze shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a24`, `Silver Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a24`, `Silver shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a25`, `Mithril Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a25`, `Mithril shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a26`, `Royal Guard Cape`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a27`, `Order Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a28`, `Order Helmet`, cacheObjSubType[`item_other`], 190, false, true) - reloadObjItem(`a29`, `Order Boots`, cacheObjSubType[`item_other`], 125, false, true) - reloadObjItem(`a30`, `Order Gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a31`, `Order Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a32`, `Hunter Armor`, cacheObjSubType[`item_other`], 450, false, true) - reloadObjItem(`a33`, `Hunter Helmet`, cacheObjSubType[`item_other`], 190, false, true) - reloadObjItem(`a34`, `Hunter Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a35`, `Hunter Gloves`, cacheObjSubType[`item_other`], 125, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a36`, `Clarity Robe`, cacheObjSubType[`item_other`], 450, false, true) - reloadObjItem(`a37`, `Clarity Circlet`, cacheObjSubType[`item_other`], 190, false, true) - reloadObjItem(`a38`, `Clarity Shoes`, cacheObjSubType[`item_other`], 125, false, true) - reloadObjItem(`a39`, `Clarity Bracers`, cacheObjSubType[`item_other`], 125, false, true) - reloadObjItem(`a40`, `Pencil of Truth`, cacheObjSubType[`item_other`], 10, false, true) - reloadObjItem(`a41`, `Bard's Cape`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a45`, `Crusader Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a46`, `Crusader Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a47`, `Crusader Boots`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a48`, `Crusader Gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a49`, `Crusader Shield`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a50`, `Royal Armor`, cacheObjSubType[`item_other`], 480, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a51`, `Royal Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a52`, `Royal Boots`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a53`, `Royal Gauntlets`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`a54`, `Royal Shield`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a55`, `Ghost Armor`, cacheObjSubType[`item_other`], 480, false, true) - reloadObjItem(`a56`, `Ghost Helmet`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a57`, `Ghost Boots`, cacheObjSubType[`item_other`], 90, false, true) - reloadObjItem(`a58`, `Ghost Gloves`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`a59`, `Lion Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a60`, `Lion Helmet`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a61`, `Lion Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a62`, `Lion Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a63`, `Demon Robe`, cacheObjSubType[`item_other`], 480, false, true) - reloadObjItem(`a64`, `Demon Circlet`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a65`, `Demon Shoes`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`a66`, `Demon Bracers`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`a67`, `Divine Robe`, cacheObjSubType[`item_other`], 480, false, true) - reloadObjItem(`a68`, `Divine Circlet`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`a69`, `Divine Shoes`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`a70`, `Divine Bracers`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`a71`, `Storm Cloak`, cacheObjSubType[`item_other`], 30, false, true) - reloadObjItem(`a72`, `Durable Cloak`, cacheObjSubType[`item_other`], 30, false, true) // PROPAGATE TO WIKI - reloadObjItem(`a73`, `Blessed Cloak`, cacheObjSubType[`item_other`], 30, false, true) - reloadObjItem(`a74`, `Hiking Jar`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a75`, `Hiking Bag`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a76`, `Stick of Wisdom`, cacheObjSubType[`item_other`], 10, false, true) - reloadObjItem(`a78`, `Council Armor`, cacheObjSubType[`item_other`], 510, false, true) - reloadObjItem(`a79`, `Council Helmet`, cacheObjSubType[`item_other`], 210, false, true) - reloadObjItem(`a80`, `Council Boots`, cacheObjSubType[`item_other`], 155, false, true) - reloadObjItem(`a81`, `Council Gauntlets`, cacheObjSubType[`item_other`], 155, false, true) - reloadObjItem(`a82`, `Council Shield`, cacheObjSubType[`item_other`], 220, false, true) - reloadObjItem(`a83`, `Griffin Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a84`, `Griffin Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a85`, `Griffin Boots`, cacheObjSubType[`item_other`], 155, false, true) - reloadObjItem(`a86`, `Griffin Gloves`, cacheObjSubType[`item_other`], 155, false, true) - reloadObjItem(`a87`, `Celestial Armor`, cacheObjSubType[`item_other`], 510, false, true) - reloadObjItem(`a88`, `Celestial Helmet`, cacheObjSubType[`item_other`], 210, false, true) - reloadObjItem(`a89`, `Celestial Boots`, cacheObjSubType[`item_other`], 155, false, true) - reloadObjItem(`a90`, `Celestial Bracers`, cacheObjSubType[`item_other`], 155, false, true) - reloadObjItem(`a100`, `Assault Cape`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a101`, `Craftsman Apron`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`a102`, `Stoneskin Cloak`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`ch1`, `Zombie Chest`, cacheObjSubType[`item_other`], -1, false, false) - reloadObjItem(`e1`, `Cocoa Powder`, cacheObjSubType[`item_other`], 1, false, false) - reloadObjItem(`e101`, `πŸ§Ÿβ€β™‚οΈ Witchling Robe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e102`, `πŸ§Ÿβ€β™‚οΈ Witchling Circlet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e103`, `πŸ§Ÿβ€β™‚οΈ Witchling Shoes`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e104`, `πŸ§Ÿβ€β™‚οΈ Witchling Bracers`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e105`, `πŸ§Ÿβ€β™‚οΈ Witch Robe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e106`, `πŸ§Ÿβ€β™‚οΈ Witch Circlet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e107`, `πŸ§Ÿβ€β™‚οΈ Witch Shoes`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e108`, `πŸ§Ÿβ€β™‚οΈ Witch Bracers`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e109`, `πŸ§Ÿβ€β™‚οΈ Walker Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e109`, `πŸ§Ÿβ€β™‚οΈ Walker armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e110`, `πŸ§Ÿβ€β™‚οΈ Walker Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e110`, `πŸ§Ÿβ€β™‚οΈ Walker helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e111`, `πŸ§Ÿβ€β™‚οΈ Walker Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e111`, `πŸ§Ÿβ€β™‚οΈ Walker boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e112`, `πŸ§Ÿβ€β™‚οΈ Walker gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e112`, `πŸ§Ÿβ€β™‚οΈ Walker Gauntlets`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e113`, `πŸ§Ÿβ€β™‚οΈ Walker Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e113`, `πŸ§Ÿβ€β™‚οΈ Walker shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e114`, `πŸ§Ÿβ€β™‚οΈ Zombie Armor`, cacheObjSubType[`item_other`], 480, false, true) - reloadObjItem(`e115`, `πŸ§Ÿβ€β™‚οΈ Zombie Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e116`, `πŸ§Ÿβ€β™‚οΈ Zombie Boots`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`e117`, `πŸ§Ÿβ€β™‚οΈ Zombie Gauntlets`, cacheObjSubType[`item_other`], 140, false, true) - reloadObjItem(`e118`, `πŸ§Ÿβ€β™‚οΈ Zombie Shield`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e119`, `πŸ§Ÿβ€β™‚οΈ Imp Robe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e120`, `πŸ§Ÿβ€β™‚οΈ Imp Circlet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e121`, `πŸ§Ÿβ€β™‚οΈ Imp Shoes`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e122`, `πŸ§Ÿβ€β™‚οΈ Imp Bracers`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e123`, `πŸ§Ÿβ€β™‚οΈ Demon Robe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e124`, `πŸ§Ÿβ€β™‚οΈ Demon Circlet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e125`, `πŸ§Ÿβ€β™‚οΈ Demon Shoes`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e126`, `πŸ§Ÿβ€β™‚οΈ Demon Bracers`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e127`, `πŸ§Ÿβ€β™‚οΈ Manwolf Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e128`, `πŸ§Ÿβ€β™‚οΈ Manwolf Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e129`, `πŸ§Ÿβ€β™‚οΈ Manwolf Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e130`, `πŸ§Ÿβ€β™‚οΈ Manwolf Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e131`, `πŸ§Ÿβ€β™‚οΈ Werewolf Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e132`, `πŸ§Ÿβ€β™‚οΈ Werewolf Helmet`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`e133`, `πŸ§Ÿβ€β™‚οΈ Werewolf Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e134`, `πŸ§Ÿβ€β™‚οΈ Werewolf Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e135`, `πŸ§Ÿβ€β™‚οΈ Fleder Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e136`, `πŸ§Ÿβ€β™‚οΈ Fleder Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e137`, `πŸ§Ÿβ€β™‚οΈ Fleder Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e138`, `πŸ§Ÿβ€β™‚οΈ Fleder Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e139`, `πŸ§Ÿβ€β™‚οΈ Nosferatu Armor`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e140`, `πŸ§Ÿβ€β™‚οΈ Nosferatu Helmet`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e141`, `πŸ§Ÿβ€β™‚οΈ Nosferatu Boots`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e142`, `πŸ§Ÿβ€β™‚οΈ Nosferatu Gloves`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e143`, `πŸ§Ÿβ€β™‚οΈ Witchling Staff`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e144`, `πŸ§Ÿβ€β™‚οΈ War Club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e145`, `πŸ§Ÿβ€β™‚οΈ Imp Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e146`, `πŸ§Ÿβ€β™‚οΈ Imp Whip`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e147`, `πŸ§Ÿβ€β™‚οΈ Manwolf Knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e148`, `πŸ§Ÿβ€β™‚οΈ Fleder Scimitar`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e149`, `πŸ§Ÿβ€β™‚οΈ Witch Staff`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e150`, `πŸ§Ÿβ€β™‚οΈ Walker Club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e151`, `πŸ§Ÿβ€β™‚οΈ Demon Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e152`, `πŸ§Ÿβ€β™‚οΈ Demon Whip`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e153`, `πŸ§Ÿβ€β™‚οΈ Werewolf Knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e154`, `πŸ§Ÿβ€β™‚οΈ Nosferatu Rapier`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`e2`, `Egg`, cacheObjSubType[`item_misc`], 1, false, false) - reloadObjItem(`e3`, `Flour`, cacheObjSubType[`item_misc`], 1, false, false) - reloadObjItem(`e4`, `Milk`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`e5`, `Sugar`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`est`, `Evil Spirits Totem`, cacheObjSubType[`item_misc`], 50, false, false) - reloadObjItem(`hw102`, `Timeless Jade`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`hw104`, `Shadow Bloodstone`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`hw107`, `Void Emerald`, cacheObjSubType[`item_misc`], -1, false, false) - reloadObjItem(`k01`, `Champion blade`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k02`, `Trident blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k03`, `Hunter shaft`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k04`, `War Hammer head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k04`, `War hammer head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k05`, `Hunter blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k06`, `Order Armor piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k06`, `Order armor piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k07`, `Order Helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k07`, `Order helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k08`, `Order Boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k08`, `Order boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k09`, `Order Gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k09`, `Order gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k10`, `Order Shield part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k10`, `Order shield part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k11`, `Hunter Armor part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k11`, `Hunter armor part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k12`, `Hunter Helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k12`, `Hunter helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k13`, `Hunter Boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k13`, `Hunter boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k14`, `Hunter Gloves part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k14`, `Hunter gloves part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k15`, `Clarity Robe piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k16`, `Clarity Circlet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k17`, `Clarity Shoes part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k18`, `Clarity Bracers part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k19`, `Thundersoul blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k20`, `Doomblade blade`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k21`, `Eclipse blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k22`, `Guard's blade`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k23`, `King's Defender blade`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k23`, `King's defender blade`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k24`, `Raging Lance blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k24`, `Raging lance blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k25`, `Composite Bow shaft`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k25`, `Composite bow shaft`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k26`, `Lightning Bow shaft`, cacheObjSubType[`item_part`], -1, false, true) - reloadObjItem(`k26`, `Lightning bow shaft`, cacheObjSubType[`item_part`], -1, false, true) - reloadObjItem(`k27`, `Hailstorm Bow shaft`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k27`, `Hailstorm bow shaft`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k28`, `Imperial Axe head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k28`, `Imperial axe head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k29`, `Skull Crusher head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k29`, `Skull crusher head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k30`, `Dragon Mace head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k30`, `Dragon mace head`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k31`, `Ghost blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k32`, `Lion blade`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k33`, `Crusader Armor piece`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k33`, `Crusader armor piece`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k34`, `Crusader Helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k34`, `Crusader helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k35`, `Crusader Boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k35`, `Crusader boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k36`, `Crusader Gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k36`, `Crusader gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k37`, `Crusader shield part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k38`, `Royal Armor piece`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k38`, `Royal armor piece`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k39`, `Royal Helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k39`, `Royal helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k40`, `Royal Boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k40`, `Royal boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k41`, `Royal Gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k41`, `Royal gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k42`, `Royal Shield part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k42`, `Royal shield part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k43`, `Ghost Armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k43`, `Ghost armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k44`, `Ghost Helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k44`, `Ghost helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k45`, `Ghost Boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k45`, `Ghost boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k46`, `Ghost Gloves part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k46`, `Ghost gloves part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k47`, `Lion Armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k47`, `Lion armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k48`, `Lion Helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k48`, `Lion helmet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k49`, `Lion Boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k49`, `Lion boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k50`, `Lion Gloves part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k50`, `Lion gloves part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k51`, `Demon Robe piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k51`, `Demon robe piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k52`, `Demon Circlet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k52`, `Demon circlet fragment`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k53`, `Demon Shoes part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k53`, `Demon shoes part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k54`, `Demon Bracers part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k54`, `Demon bracers part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k55`, `Divine Robe piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k55`, `Divine robe piece`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k56`, `Divine Circlet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k56`, `Divine circlet fragment`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k57`, `Divine Shoes part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k57`, `Divine shoes part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k58`, `Divine Bracers part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k58`, `Divine bracers part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k59`, `Storm Cloak part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k59`, `Storm cloak part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k60`, `Durable Cloak part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k60`, `Durable cloak part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k61`, `Blessed Cloak part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k61`, `Blessed cloak part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k78`, `Council Armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k78`, `Council armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k79`, `Council Helmet part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k79`, `Council helmet part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k80`, `Council Boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k80`, `Council boots part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k81`, `Council Gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k81`, `Council gauntlets part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k81`, `Council Gloves part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k81`, `Council gloves part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k82`, `Council Shield part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k82`, `Council shield part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k83`, `Griffin Armor part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k83`, `Griffin armor part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k84`, `Griffin Helmet part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k84`, `Griffin helmet part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k85`, `Griffin Boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k85`, `Griffin boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k86`, `Griffin Gloves part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k86`, `Griffin gloves part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k87`, `Celestial Armor part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k88`, `Celestial Helmet part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k89`, `Celestial Boots part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k90`, `Celestial Bracers part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k90`, `Celestial Gloves part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k91`, `Griffin Knife part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k92`, `Minotaur Sword part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k93`, `Phoenix Sword part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k94`, `Heavy Fauchard part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k95`, `Guisarme part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k96`, `Meteor Bow part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k97`, `Nightfall Bow part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k98`, `Black Morningstar part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k99`, `Maiming Bulawa part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k100`, `Assault Cape part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`k101`, `Craftsman Apron part`, cacheObjSubType[`item_part`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`k102`, `Stoneskin Cloak part`, cacheObjSubType[`item_part`], 10, false, true) - reloadObjItem(`p01`, `Vial of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p02`, `Potion of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p03`, `Bottle of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p04`, `Vial of Peace`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`p05`, `Potion of Peace`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`p06`, `Bottle of Peace`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`p07`, `Vial of Greed`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p08`, `Potion of Greed`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p09`, `Bottle of Greed`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p10`, `Vial of Nature`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p11`, `Potion of Nature`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p12`, `Bottle of Nature`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p13`, `Vial of Mana`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p14`, `Potion of Mana`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p15`, `Bottle of Mana`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p16`, `Vial of Twilight`, cacheObjSubType[`item_misc`], 1, false, true) - reloadObjItem(`p17`, `Potion of Twilight`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p18`, `Bottle of Twilight`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p19`, `Vial of Morph`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p20`, `Potion of Morph`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`p21`, `Bottle of Morph`, cacheObjSubType[`item_misc`], 1, false, true) // PROPAGATE TO WIKI - reloadObjItem(`pmp`, `Pumpkin`, cacheObjSubType[`item_misc`], -1, false, true) - reloadObjItem(`pol`, `Proof of Loyalty`, cacheObjSubType[`item_misc`], -1, false, true) - reloadObjItem(`tde`, `deerhorn earlooms`, cacheObjSubType[`item_misc`], -1, false, true) - reloadObjItem(`r01`, `Champion Sword recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r02`, `Trident recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r03`, `Hunter Bow recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r04`, `War hammer recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r05`, `Hunter Dagger recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r06`, `Order Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r07`, `Order Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r08`, `Order Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r09`, `Order Gauntlets recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r10`, `Order Shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r10`, `Order shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r11`, `Hunter Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r12`, `Hunter Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r13`, `Hunter Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r14`, `Hunter Gloves recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r15`, `Clarity Robe recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r16`, `Clarity Circlet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r17`, `Clarity Shoes recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r18`, `Clarity Bracers recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r19`, `Thundersoul Sword recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r20`, `Doomblade Sword recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r21`, `Eclipse recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r22`, `Guard's Spear recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r23`, `King's Defender recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r24`, `Raging Lance recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r25`, `Composite Bow recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r26`, `Lightning Bow recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r27`, `Hailstorm Bow recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r28`, `Imperial Axe recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r29`, `Skull Crusher recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r30`, `Dragon Mace recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r31`, `Ghost Dagger recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r31`, `Ghost dagger recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r32`, `Lion Knife recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r33`, `Crusader Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r34`, `Crusader Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r35`, `Crusader Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r36`, `Crusader Gauntlets recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r37`, `Crusader Shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r37`, `Crusader shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r38`, `Royal Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r39`, `Royal Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r40`, `Royal Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r41`, `Royal Gauntlets recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r42`, `Royal Shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r42`, `Royal shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r43`, `Ghost Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r44`, `Ghost Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r45`, `Ghost Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r46`, `Ghost Gloves recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r47`, `Lion Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`r48`, `Lion Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r49`, `Lion Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r50`, `Lion Gloves recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r51`, `Demon Robe recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r52`, `Demon Circlet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r53`, `Demon Shoes recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r54`, `Demon Bracers recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r55`, `Divine Robe recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r56`, `Divine Circlet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r57`, `Divine Shoes recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r58`, `Divine Bracers recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r59`, `Storm Cloak recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r60`, `Durable Cloak recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r61`, `Blessed Cloak recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r78`, `Council Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`r79`, `Council Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`r80`, `Council Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`r81`, `Council Gauntlets recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r82`, `Council Shield recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r83`, `Griffin Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r84`, `Griffin Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r85`, `Griffin Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r86`, `Griffin Gloves recipe`, cacheObjSubType[`item_recipe`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`r87`, `Celestial Armor recipe`, cacheObjSubType[`item_recipe`], 10, false, true) // PROPAGATE TO WIKI - reloadObjItem(`r88`, `Celestial Helmet recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r89`, `Celestial Boots recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r90`, `Celestial Bracers recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r91`, `Griffin Knife recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r92`, `Minotaur Sword recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r93`, `Phoenix Sword recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r94`, `Heavy Fauchard recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r95`, `Guisarme recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r96`, `Meteor Bow recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r97`, `Nightfall Bow recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r98`, `Black Morningstar recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r99`, `Maiming Bulawa recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r100`, `Assault Cape recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r101`, `Craftsman Apron recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`r102`, `Stoneskin Cloak recipe`, cacheObjSubType[`item_recipe`], 10, false, true) - reloadObjItem(`s01`, `πŸ“•Scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s02`, `πŸ“•Scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s03`, `πŸ“—Scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s04`, `πŸ“—Scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s05`, `πŸ“˜Scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s06`, `πŸ“˜Scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s07`, `πŸ“™Scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s08`, `πŸ“™Scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s11`, `πŸ“•Rare scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s12`, `πŸ“•Rare scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s13`, `πŸ“—Rare scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s14`, `πŸ“—Rare scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s15`, `πŸ“˜Rare scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s16`, `πŸ“˜Rare scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s17`, `πŸ“™Rare scroll of Rage`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s18`, `πŸ“™Rare scroll of Peace`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s50`, `πŸ–‹Scroll of Engraving`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`s51`, `βœ’οΈScroll of Engraving`, cacheObjSubType[`item_misc`], 1, false, true) // CREATE AND PROPAGATE TO WIKI - reloadObjItem(`tch`, `Torch`, cacheObjSubType[`item_other`], -1, false, false) - reloadObjItem(`td1`, `Colorless shard`, cacheObjSubType[`item_other`], 50, false, false) // PROPAGATE TO WIKI - reloadObjItem(`w01`, `Wooden Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w01`, `Wooden sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w02`, `Short Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w02`, `Short sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w03`, `Long Sword`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w03`, `Long sword`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w04`, `Widow Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w04`, `Widow sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w05`, `Knight's Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w05`, `Knight's sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w06`, `Elven Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w06`, `Elven sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w07`, `Rapier`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w08`, `Short Spear`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w08`, `Short spear`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w09`, `Long Spear`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w09`, `Long spear`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w10`, `Lance`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w11`, `Elven Spear`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w11`, `Elven spear`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w12`, `Halberd`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w13`, `Kitchen Knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w13`, `Kitchen knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w14`, `Battle Knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w14`, `Battle knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w15`, `Steel Dagger`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w15`, `Steel dagger`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w16`, `Silver Dagger`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w16`, `Silver dagger`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w17`, `Mithril Dagger`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w17`, `Mithril dagger`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w18`, `Short Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w19`, `Wooden Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w20`, `Long Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w21`, `Elven Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w22`, `Forest Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w23`, `Club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w24`, `Bone Club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w24`, `Bone club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w25`, `Heavy Club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w25`, `Heavy club`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w26`, `Steel Axe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w26`, `Steel axe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w27`, `Mithril Axe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w27`, `Mithril axe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w28`, `Champion Sword`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w29`, `Trident`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w30`, `Hunter Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w31`, `War hammer`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w32`, `Hunter dagger`, cacheObjSubType[`item_other`], 180, false, true) - reloadObjItem(`w33`, `Thundersoul Sword`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w34`, `Doomblade Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w35`, `Eclipse`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w36`, `Guard's Spear`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w37`, `King's Defender`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w38`, `Raging Lance`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w39`, `Composite Bow`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w40`, `Lightning Bow`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w41`, `Hailstorm Bow`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w42`, `Imperial Axe`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w43`, `Skull Crusher`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w44`, `Dragon Mace`, cacheObjSubType[`item_other`], 200, false, true) - reloadObjItem(`w45`, `Ghost dagger`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w46`, `Lion Knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w91`, `Griffin Knife`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w92`, `Minotaur Sword`, cacheObjSubType[`item_other`], 220, false, true) - reloadObjItem(`w93`, `Phoenix Sword`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w94`, `Heavy Fauchard`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w95`, `Guisarme`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w96`, `Meteor Bow`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w97`, `Nightfall Bow`, cacheObjSubType[`item_other`], 220, false, true) - reloadObjItem(`w98`, `Black Morningstar`, cacheObjSubType[`item_other`], -1, false, true) - reloadObjItem(`w99`, `Maiming Bulawa`, cacheObjSubType[`item_other`], 0, false, true) -} diff --git a/obj.go b/obj.go index 9cff5d8..59994fc 100644 --- a/obj.go +++ b/obj.go @@ -55,7 +55,7 @@ func initCache() { logOnError(err, "initCache : caching user") log.Println("Caching items ..") - err = loadObjItem() + err = loadObjItem2() logOnError(err, "initCache : caching items") log.Println("Caching messages ..") @@ -938,6 +938,37 @@ func getSilentObjItemID(code string, name string) int64 { } +func loadObjItem2() error { + var items, items2 []ChatWarsItem + var count int64 + + muxObjItem.Lock() + cacheObjItem = make(map[string]ChatWarsItem) + muxObjItem.Unlock() + + muxObjItemId.Lock() + cacheObjItemId = make(map[int64]ChatWarsItem) + muxObjItemId.Unlock() + + b, err := Asset("data/obj_item.json") + logOnError(err, "loadObjItem2 : load data/obj_item.json") + if err != nil { + return err + } + + err = json.Unmarshal(b, &items) + + for _, i := range items { + for _, n := range i.Names { + reloadObjItem(i.Code, n, i.ItemTypeID, i.Weight, (i.Exchange != nil), i.Auction) + } + } + log.Printf("%d items loaded.\n", len(items)) + + return nil + +} + func loadObjItem() error { var ( id int64 diff --git a/sql.go b/sql.go index ee8d8c1..e8b0550 100644 --- a/sql.go +++ b/sql.go @@ -394,18 +394,15 @@ func initDB() { failOnError(err, "initDB : create table obj_job") log.Println("initDB : obj_job created ...") - _, err = db.Exec(`CREATE VIEW obj_job_v AS - SELECT oj.obj_id - ,o.obj_sub_type_id AS job_type_id - ,cost.intl_id COLLATE utf8mb4_unicode_ci AS job_type - ,oj.payload COLLATE utf8mb4_unicode_ci AS payload - FROM obj_job oj - ,obj o - ,code_obj_sub_type cost - WHERE o.id = oj.obj_id - AND cost.id = o.obj_sub_type_id;`) - failOnError(err, "initDB : create view obj_job_v") - log.Println("initDB : obj_job_v created ...") + _, err = db.Exec(`CREATE TABLE obj_item_craft ( + obj_id BIGINT UNSIGNED NOT NULL + ,item_id BIGINT UNSIGNED NOT NULL + ,quantity INT UNSIGNED NOT NULL + ,FOREIGN KEY (obj_id) REFERENCES obj(id) ON DELETE CASCADE + ,FOREIGN KEY (item_id) REFERENCES obj(id) ON DELETE CASCADE + ) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE utf8mb4_bin;`) + failOnError(err, "initDB : create table obj_item_craft") + log.Println("initDB : obj_item_craft created ...") _, err = db.Exec(`CREATE TABLE obj_name ( obj_id BIGINT UNSIGNED NOT NULL