From dce63dc615318e06eb8b1dae8968c8c714841bc2 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Wed, 23 Aug 2023 13:38:22 -0300 Subject: [PATCH 01/10] improve: rework in unscripted weapons and moveevents Add moveevent and weapons unscripted to load in items.xml TODO: - [ ] Fix reload items crash - [ ] Implement load weapons logic --- .../equipment/unscripted_equipments.lua | 22 --- data/items/items.xml | 5 + src/canary_server.cpp | 12 +- src/items/functions/item/item_parse.cpp | 126 ++++++++++++++++++ src/items/functions/item/item_parse.hpp | 3 + src/items/items_definitions.hpp | 1 + src/lua/creature/movement.hpp | 9 +- src/utils/tools.cpp | 4 +- src/utils/tools.hpp | 2 +- 9 files changed, 153 insertions(+), 31 deletions(-) diff --git a/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua b/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua index 7361ad8cd98..6c4ed244b59 100644 --- a/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua +++ b/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua @@ -241,28 +241,6 @@ local items = { {"Royal Paladin"} } }, - { - -- sanguine legs - itemid = 43876, - type = "equip", - slot = "legs", - level = 500, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine legs - itemid = 43876, - type = "deequip", - slot = "legs", - level = 500, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, { -- grand sanguine battleaxe itemid = 43875, diff --git a/data/items/items.xml b/data/items/items.xml index d6d5e0982a9..f7c5c1302ab 100644 --- a/data/items/items.xml +++ b/data/items/items.xml @@ -59248,6 +59248,11 @@ + + + + + diff --git a/src/canary_server.cpp b/src/canary_server.cpp index fff0cc4d9a3..a5afbc50693 100644 --- a/src/canary_server.cpp +++ b/src/canary_server.cpp @@ -323,6 +323,13 @@ void CanaryServer::loadModules() { auto coreFolder = g_configManager().getString(CORE_DIRECTORY); // Load items dependencies modulesLoadHelper((g_game().loadAppearanceProtobuf(coreFolder + "/items/appearances.dat") == ERROR_NONE), "appearances.dat"); + // Load XML core first (dependencies that can be used on items.xml loading) + modulesLoadHelper(g_vocations().loadFromXml(), "XML/vocations.xml"); + modulesLoadHelper(Outfits::getInstance().loadFromXml(), "XML/outfits.xml"); + modulesLoadHelper(Familiars::getInstance().loadFromXml(), "XML/familiars.xml"); + modulesLoadHelper(g_storages().loadFromXML(), "XML/storages.xml"); + modulesLoadHelper(g_imbuements().loadFromXml(), "XML/imbuements.xml"); + modulesLoadHelper(Item::items.loadFromXml(), "items.xml"); auto datapackFolder = g_configManager().getString(DATA_DIRECTORY); @@ -332,12 +339,7 @@ void CanaryServer::loadModules() { modulesLoadHelper(g_scripts().loadScripts(coreFolder + "/scripts", false, false), "/data/scripts"); // Second XML scripts - modulesLoadHelper(g_vocations().loadFromXml(), "XML/vocations.xml"); modulesLoadHelper(g_eventsScheduler().loadScheduleEventFromXml(), "XML/events.xml"); - modulesLoadHelper(Outfits::getInstance().loadFromXml(), "XML/outfits.xml"); - modulesLoadHelper(Familiars::getInstance().loadFromXml(), "XML/familiars.xml"); - modulesLoadHelper(g_imbuements().loadFromXml(), "XML/imbuements.xml"); - modulesLoadHelper(g_storages().loadFromXML(), "XML/storages.xml"); modulesLoadHelper(g_modules().loadFromXml(), "modules/modules.xml"); modulesLoadHelper(g_events().loadFromXml(), "events/events.xml"); modulesLoadHelper((g_npcs().load(true, false)), "npclib"); diff --git a/src/items/functions/item/item_parse.cpp b/src/items/functions/item/item_parse.cpp index b3324f8dd73..931da29d01b 100644 --- a/src/items/functions/item/item_parse.cpp +++ b/src/items/functions/item/item_parse.cpp @@ -10,6 +10,7 @@ #include "pch.hpp" #include "items/functions/item/item_parse.hpp" +#include "lua/creature/movement.hpp" #include "utils/pugicast.hpp" void ItemParse::initParse(const std::string &tmpStrValue, pugi::xml_node attributeNode, pugi::xml_attribute valueAttribute, ItemType &itemType) { @@ -73,6 +74,7 @@ void ItemParse::initParse(const std::string &tmpStrValue, pugi::xml_node attribu ItemParse::parseCleavePercent(tmpStrValue, valueAttribute, itemType); ItemParse::parseReflectDamage(tmpStrValue, valueAttribute, itemType); ItemParse::parseTransformOnUse(tmpStrValue, valueAttribute, itemType); + ItemParse::parseUnscriptedItems(tmpStrValue, attributeNode, valueAttribute, itemType); } void ItemParse::parseDummyRate(pugi::xml_node attributeNode, ItemType &itemType) { @@ -940,3 +942,127 @@ void ItemParse::parseTransformOnUse(const std::string_view &tmpStrValue, pugi::x itemType.m_transformOnUse = pugi::cast(valueAttribute.value()); } } + +void ItemParse::createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType &itemType, pugi::xml_node attributeNode) { + auto moveevent = std::make_shared(nullptr); + moveevent->setItemId(itemType.id); + moveevent->setEventType(eventType); + if (eventType == MOVE_EVENT_EQUIP) { + moveevent->equipFunction = moveevent->EquipItem; + } else if (eventType == MOVE_EVENT_DEEQUIP) { + moveevent->equipFunction = moveevent->DeEquipItem; + } + + for (auto subAttributeNode : attributeNode.children()) { + pugi::xml_attribute subKeyAttribute = subAttributeNode.attribute("key"); + if (!subKeyAttribute) { + continue; + } + + pugi::xml_attribute subValueAttribute = subAttributeNode.attribute("value"); + if (!subValueAttribute) { + continue; + } + + auto stringKey = asLowerCaseString(subKeyAttribute.as_string()); + if (stringKey == "slot") { + if (moveevent->getEventType() == MOVE_EVENT_EQUIP || moveevent->getEventType() == MOVE_EVENT_DEEQUIP) { + auto slotName = asLowerCaseString(subValueAttribute.as_string()); + if (slotName == "head") { + moveevent->setSlot(SLOTP_HEAD); + } else if (slotName == "necklace") { + moveevent->setSlot(SLOTP_NECKLACE); + } else if (slotName == "backpack") { + moveevent->setSlot(SLOTP_BACKPACK); + } else if (slotName == "armor" || slotName == "body") { + moveevent->setSlot(SLOTP_ARMOR); + } else if (slotName == "right-hand") { + moveevent->setSlot(SLOTP_RIGHT); + } else if (slotName == "left-hand") { + moveevent->setSlot(SLOTP_LEFT); + } else if (slotName == "hand" || slotName == "shield") { + moveevent->setSlot(SLOTP_RIGHT | SLOTP_LEFT); + } else if (slotName == "legs") { + moveevent->setSlot(SLOTP_LEGS); + } else if (slotName == "feet") { + moveevent->setSlot(SLOTP_FEET); + } else if (slotName == "ring") { + moveevent->setSlot(SLOTP_RING); + } else if (slotName == "ammo") { + moveevent->setSlot(SLOTP_AMMO); + } else { + g_logger().warn("[{}] unknown slot type: {}", __FUNCTION__, slotName); + } + } + } else if (stringKey == "level") { + auto numberValue = subValueAttribute.as_uint(); + moveevent->setRequiredLevel(numberValue); + moveevent->setWieldInfo(WIELDINFO_LEVEL); + } else if (stringKey == "vocation") { + auto vocations = subValueAttribute.as_string(); + std::string tmp; + std::stringstream ss(vocations); + std::string token; + + while (std::getline(ss, token, ',')) { + token.erase(token.begin(), std::find_if(token.begin(), token.end(), [](unsigned char ch) { + return !std::isspace(ch); + })); + token.erase(std::find_if(token.rbegin(), token.rend(), [](unsigned char ch) { + return !std::isspace(ch); + }).base(), + token.end()); + + std::string v1; + bool showInDescription = false; + + std::stringstream inner_ss(token); + std::getline(inner_ss, v1, ';'); + std::string showInDescriptionStr; + std::getline(inner_ss, showInDescriptionStr, ';'); + showInDescription = showInDescriptionStr == "true"; + + moveevent->addVocEquipMap(v1); + moveevent->setWieldInfo(WIELDINFO_VOCREQ); + + if (showInDescription) { + if (moveevent->getVocationString().empty()) { + tmp = asLowerCaseString(v1); + tmp += "s"; + moveevent->setVocationString(tmp); + } else { + tmp += ", "; + tmp += asLowerCaseString(v1); + tmp += "s"; + } + } + } + + size_t lastComma = tmp.rfind(','); + if (lastComma != std::string::npos) { + tmp.replace(lastComma, 1, " and"); + moveevent->setVocationString(tmp); + } + } + } + + if (!g_moveEvents().registerLuaItemEvent(moveevent)) { + g_logger().error("[{}] failed to register moveevent from item name {}", __FUNCTION__, itemType.name); + } +} + +void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi::xml_node attributeNode, pugi::xml_attribute valueAttribute, ItemType &itemType) { + if (tmpStrValue == "script") { + std::string scriptName = valueAttribute.as_string(); + auto tokens = split(scriptName.data(), ';'); + std::vector> events; + for (const auto &token : tokens) { + if (token == "moveevent") { + createAndRegisterMoveEvent(MOVE_EVENT_EQUIP, itemType, attributeNode); + createAndRegisterMoveEvent(MOVE_EVENT_DEEQUIP, itemType, attributeNode); + } else if ((token == "weapon")) { + // TODO: add weapon logic + } + } + } +} diff --git a/src/items/functions/item/item_parse.hpp b/src/items/functions/item/item_parse.hpp index 28a8e71fc53..01fb33172e5 100644 --- a/src/items/functions/item/item_parse.hpp +++ b/src/items/functions/item/item_parse.hpp @@ -155,6 +155,7 @@ const phmap::flat_hash_map ItemParseAttribut { "cleavepercent", ITEM_PARSE_CLEAVEPERCENT }, { "reflectdamage", ITEM_PARSE_REFLECTDAMAGE }, { "reflectpercentall", ITEM_PARSE_REFLECTPERCENTALL }, + { "script", ITEM_PARSE_SCRIPT }, }; const phmap::flat_hash_map ItemTypesMap = { @@ -308,10 +309,12 @@ class ItemParse : public Items { static void parseCleavePercent(const std::string &tmpStrValue, pugi::xml_attribute valueAttribute, ItemType &itemType); static void parseReflectDamage(const std::string &tmpStrValue, pugi::xml_attribute valueAttribute, ItemType &itemType); static void parseTransformOnUse(const std::string_view &tmpStrValue, pugi::xml_attribute valueAttribute, ItemType &itemType); + static void parseUnscriptedItems(const std::string_view &tmpStrValue, pugi::xml_node attributeNode, pugi::xml_attribute valueAttribute, ItemType &itemType); private: // Parent of the function: static void parseField static std::tuple parseFieldConditions(std::string lowerStringValue, pugi::xml_attribute valueAttribute); static CombatType_t parseFieldCombatType(std::string string, pugi::xml_attribute valueAttribute); static void parseFieldCombatDamage(ConditionDamage* conditionDamage, std::string stringValue, pugi::xml_node attributeNode); + static void createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType &itemType, pugi::xml_node attributeNode); }; diff --git a/src/items/items_definitions.hpp b/src/items/items_definitions.hpp index 85dee43bf1a..81f68e17d06 100644 --- a/src/items/items_definitions.hpp +++ b/src/items/items_definitions.hpp @@ -465,6 +465,7 @@ enum ItemParseAttributes_t { ITEM_PARSE_CLEAVEPERCENT, ITEM_PARSE_REFLECTPERCENTALL, ITEM_PARSE_REFLECTDAMAGE, + ITEM_PARSE_SCRIPT, }; struct ImbuementInfo { diff --git a/src/lua/creature/movement.hpp b/src/lua/creature/movement.hpp index dd8d79e99f7..214e73aaf69 100644 --- a/src/lua/creature/movement.hpp +++ b/src/lua/creature/movement.hpp @@ -179,7 +179,7 @@ class MoveEvent final : public Script, public SharedObject { return vocEquipMap; } void addVocEquipMap(std::string vocName) { - int32_t vocationId = g_vocations().getVocationId(vocName); + uint16_t vocationId = g_vocations().getVocationId(vocName); if (vocationId != -1) { vocEquipMap[vocationId] = true; } @@ -251,6 +251,10 @@ class MoveEvent final : public Script, public SharedObject { static uint32_t EquipItem(const std::shared_ptr &moveEvent, Player* player, Item* item, Slots_t slot, bool boolean); static uint32_t DeEquipItem(const std::shared_ptr &moveEvent, Player* player, Item* item, Slots_t slot, bool boolean); + void setFromLua(bool newFromLua) { + m_fromLua = newFromLua; + } + private: std::string getScriptTypeName() const override; @@ -290,10 +294,13 @@ class MoveEvent final : public Script, public SharedObject { std::map vocEquipMap; bool tileItem = false; + bool m_fromLua = true; + std::vector itemIdVector; std::vector actionIdVector; std::vector uniqueIdVector; std::vector positionVector; friend class MoveEventFunctions; + friend class ItemParse; }; diff --git a/src/utils/tools.cpp b/src/utils/tools.cpp index 8dcbb3fc26a..a3b8f5c2d6f 100644 --- a/src/utils/tools.cpp +++ b/src/utils/tools.cpp @@ -1625,11 +1625,11 @@ std::string formatPrice(std::string price, bool space /* = false*/) { return price; } -std::vector split(const std::string &str) { +std::vector split(const std::string &str, char delimiter /* = ','*/) { std::vector tokens; std::string token; std::istringstream tokenStream(str); - while (std::getline(tokenStream, token, ',')) { + while (std::getline(tokenStream, token, delimiter)) { auto trimedToken = token; trimString(trimedToken); tokens.push_back(trimedToken); diff --git a/src/utils/tools.hpp b/src/utils/tools.hpp index 0d077d6a327..39200e0797d 100644 --- a/src/utils/tools.hpp +++ b/src/utils/tools.hpp @@ -137,7 +137,7 @@ SpellGroup_t stringToSpellGroup(const std::string &value); uint8_t forgeBonus(int32_t number); std::string formatPrice(std::string price, bool space /* = false*/); -std::vector split(const std::string &str); +std::vector split(const std::string &str, char delimiter = ','); std::string getFormattedTimeRemaining(uint32_t time); static inline unsigned int getNumberOfCores() { From 1398cc9889800c80c44b046d867d896aab4ec682 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Wed, 30 Aug 2023 16:54:03 -0300 Subject: [PATCH 02/10] feat: remove old registration and add new on items.xml --- .../equipment/unscripted_equipments.lua | 20040 ---------------- .../scripts/weapons/unscripted_weapons.lua | 5380 ----- data/items/items.xml | 8045 ++++++- 3 files changed, 6749 insertions(+), 26716 deletions(-) delete mode 100644 data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua delete mode 100644 data-otservbr-global/scripts/weapons/unscripted_weapons.lua diff --git a/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua b/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua deleted file mode 100644 index 6c4ed244b59..00000000000 --- a/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua +++ /dev/null @@ -1,20040 +0,0 @@ -local items = { - { - -- sanguine galoshes - itemid = 43887, - type = "equip", - slot = "feet", - level = 500, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- sanguine galoshes - itemid = 43887, - type = "deequip", - slot = "feet", - level = 500, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- grand sanguine rod - itemid = 43886, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- grand sanguine rod - itemid = 43886, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- sanguine rod - itemid = 43885, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- sanguine rod - itemid = 43885, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- sanguine boots - itemid = 43884, - type = "equip", - slot = "feet", - level = 500, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- sanguine boots - itemid = 43884, - type = "deequip", - slot = "feet", - level = 500, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- grand sanguine coil - itemid = 43883, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- grand sanguine coil - itemid = 43883, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- sanguine coil - itemid = 43882, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- sanguine coil - itemid = 43882, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- sanguine Greaves - itemid = 43881, - type = "equip", - slot = "legs", - level = 500, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- sanguine Greaves - itemid = 43881, - type = "deequip", - slot = "legs", - level = 500, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine crossbow - itemid = 43880, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine crossbow - itemid = 43880, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- sanguine crossbow - itemid = 43879, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- sanguine crossbow - itemid = 43879, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine bow - itemid = 43878, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine bow - itemid = 43878, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- sanguine bow - itemid = 43877, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- sanguine bow - itemid = 43877, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine battleaxe - itemid = 43875, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine battleaxe - itemid = 43875, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine battleaxe - itemid = 43874, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine battleaxe - itemid = 43874, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine bludgeon - itemid = 43873, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine bludgeon - itemid = 43873, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine bludgeon - itemid = 43872, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine bludgeon - itemid = 43872, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine razor - itemid = 43871, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine razor - itemid = 43871, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine razor - itemid = 43870, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine razor - itemid = 43870, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine hatchet - itemid = 43869, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine hatchet - itemid = 43869, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine hatchet - itemid = 43868, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine hatchet - itemid = 43868, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine cudgel - itemid = 43867, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine cudgel - itemid = 43867, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine cudgel - itemid = 43866, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine cudgel - itemid = 43866, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine blade - itemid = 43865, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine blade - itemid = 43865, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine blade - itemid = 43864, - type = "equip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine blade - itemid = 43864, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mutant bone kilt - itemid = 40595, - type = "equip", - slot = "legs", - level = 300, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- mutant bone kilt - itemid = 40595, - type = "deequip", - slot = "legs", - level = 300 - }, - { - -- alchemist's notepad - itemid = 40594, - type = "equip", - slot = "shield", - level = 250, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- alchemist's notepad - itemid = 40594, - type = "deequip", - slot = "shield", - level = 250 - }, - { - -- mutant bone boots - itemid = 40593, - type = "equip", - slot = "feet", - level = 250, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- mutant bone boots - itemid = 40593, - type = "deequip", - slot = "feet", - level = 250 - }, - { - -- alchemist's boots - itemid = 40592, - type = "equip", - slot = "feet", - level = 250, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- alchemist's boots - itemid = 40592, - type = "deequip", - slot = "feet", - level = 250 - }, - { - -- mutated skin armor - itemid = 40591, - type = "equip", - slot = "armor", - level = 270, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- mutated skin armor - itemid = 40591, - type = "deequip", - slot = "armor", - level = 270 - }, - { - -- Mutated Skin Legs - itemid = 40590, - type = "equip", - slot = "legs", - level = 270, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- Mutated Skin Legs - itemid = 40590, - type = "deequip", - slot = "legs", - level = 270 - }, - { - -- Stitched Mutant Hide Legs - itemid = 40589, - type = "equip", - slot = "legs", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- Stitched Mutant Hide Legs - itemid = 40589, - type = "deequip", - slot = "legs", - level = 270 - }, - { - -- Antler-Horn Helmet - itemid = 40588, - type = "equip", - slot = "head", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- Antler-Horn Helmet - itemid = 40588, - type = "deequip", - slot = "head", - level = 250 - }, - { - -- broken iks cuirass - itemid = 40533, - type = "equip", - slot = "armor" - }, - { - -- broken iks cuirass - itemid = 40533, - type = "deequip", - slot = "armor" - }, - { - -- broken iks faulds - itemid = 40531, - type = "equip", - slot = "legs" - }, - { - -- broken iks faulds - itemid = 40531, - type = "deequip", - slot = "legs" - }, - { - -- broken iks sandals - itemid = 40534, - type = "equip", - slot = "feet" - }, - { - -- broken iks sandals - itemid = 40534, - type = "deequip", - slot = "feet" - }, - { - -- broken macuahuitl - itemid = 40530, - type = "equip", - slot = "hand" - }, - { - -- broken macuahuitl - itemid = 40530, - type = "deequip", - slot = "hand" - }, - { - -- 25 years backpack - itemid = 39693, - type = "equip", - slot = "backpack" - }, - { - -- 25 years backpack - itemid = 39693, - type = "deequip", - slot = "backpack" - }, - { - -- turtle amulet - itemid = 39235, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - }, - }, - { - -- turtle amulet - itemid = 39235, - type = "deequip", - slot = "necklace" - }, - { - -- enchanted turtle amulet - itemid = 39234, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - }, - }, - { - -- enchanted turtle amulet - itemid = 39234, - type = "deequip", - slot = "necklace" - }, - { - -- enchanted turtle amulet - itemid = 39233, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - }, - }, - { - -- enchanted turtle amulet - itemid = 39233, - type = "deequip", - slot = "necklace" - }, - { - -- arboreal ring - itemid = 39188, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- arboreal ring - itemid = 39188, - type = "deequip", - slot = "ring" - }, - { - -- charged arboreal ring - itemid = 39187, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- charged arboreal ring - itemid = 39187, - type = "deequip", - slot = "ring" - }, - { - -- charged arboreal ring - itemid = 39186, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- charged arboreal ring - itemid = 39186, - type = "deequip", - slot = "ring" - }, - { - -- arcanomancer sigil - itemid = 39185, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- arcanomancer sigil - itemid = 39185, - type = "deequip", - slot = "ring" - }, - { - -- charged arcanomancer sigil - itemid = 39184, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- charged arcanomancer sigil - itemid = 39184, - type = "deequip", - slot = "ring" - }, - { - -- charged arcanomancer sigil - itemid = 39183, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- charged arcanomancer sigil - itemid = 39183, - type = "deequip", - slot = "ring" - }, - { - -- alicorn ring - itemid = 39182, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- alicorn ring - itemid = 39182, - type = "deequip", - slot = "ring" - }, - { - -- charged alicorn ring - itemid = 39181, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- charged alicorn ring - itemid = 39181, - type = "deequip", - slot = "ring" - }, - { - -- charged alicorn ring - itemid = 39180, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- charged alicorn ring - itemid = 39180, - type = "deequip", - slot = "ring" - }, - { - -- spiritthorn ring - itemid = 39179, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spiritthorn ring - itemid = 39179, - type = "deequip", - slot = "ring" - }, - { - -- charged spiritthorn ring - itemid = 39178, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- charged spiritthorn ring - itemid = 39178, - type = "deequip", - slot = "ring" - }, - { - -- charged spiritthorn ring - itemid = 39177, - type = "equip", - slot = "ring", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- charged spiritthorn ring - itemid = 39177, - type = "deequip", - slot = "ring" - }, - { - -- midnight sarong - itemid = 39167, - type = "equip", - slot = "legs", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- midnight sarong - itemid = 39167, - type = "deequip", - slot = "legs" - }, - { - -- dawnfire pantaloons - itemid = 39166, - type = "equip", - slot = "legs", - level = 300, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- dawnfire pantaloons - itemid = 39166, - type = "deequip", - slot = "legs" - }, - { - -- midnight tunic - itemid = 39165, - type = "equip", - slot = "armor", - level = 300, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- midnight tunic - itemid = 39165, - type = "deequip", - slot = "armor" - }, - { - -- dawnfire sherwani - itemid = 39164, - type = "equip", - slot = "armor", - level = 270, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- dawnfire sherwani - itemid = 39164, - type = "deequip", - slot = "armor" - }, - { - -- naga rod - itemid = 39163, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- naga rod - itemid = 39163, - type = "deequip", - slot = "hand" - }, - { - -- naga wand - itemid = 39162, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- naga wand - itemid = 39162, - type = "deequip", - slot = "hand" - }, - { - -- feverbloom boots - itemid = 39161, - type = "equip", - slot = "feet", - level = 270, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- feverbloom boots - itemid = 39161, - type = "deequip", - slot = "feet", - }, - { - -- naga quiver - itemid = 39160, - type = "equip", - slot = "right-hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- naga quiver - itemid = 39160, - type = "deequip", - slot = "right-hand" - }, - { - -- naga crossbow - itemid = 39159, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- naga crossbow - itemid = 39159, - type = "deequip", - slot = "hand" - }, - { - -- frostflower boots - itemid = 39158, - type = "equip", - slot = "feet", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- frostflower boots - itemid = 39158, - type = "deequip", - slot = "feet", - }, - { - -- naga club - itemid = 39157, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- naga club - itemid = 39157, - type = "deequip", - slot = "hand" - }, - { - -- naga axe - itemid = 39156, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- naga axe - itemid = 39156, - type = "deequip", - slot = "hand" - }, - { - -- naga sword - itemid = 39155, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- naga sword - itemid = 39155, - type = "deequip", - slot = "hand" - }, - { - -- arboreal tome - itemid = 39154, - type = "equip", - slot = "shield", - level = 400, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- arboreal tome - itemid = 39154, - type = "deequip", - slot = "shield" - }, - { - -- arboreal crown - itemid = 39153, - type = "equip", - slot = "head", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- arboreal crown - itemid = 39153, - type = "deequip", - slot = "head" - }, - { - -- arcanomancer folio - itemid = 39152, - type = "equip", - slot = "shield", - level = 400, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- arcanomancer folio - itemid = 39152, - type = "deequip", - slot = "shield" - }, - { - -- arcanomancer regalia - itemid = 39151, - type = "equip", - slot = "head", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- arcanomancer regalia - itemid = 39151, - type = "deequip", - slot = "head" - }, - { - -- alicorn quiver - itemid = 39150, - type = "equip", - slot = "right-hand", - level = 400, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- alicorn quiver - itemid = 39150, - type = "deequip", - slot = "right-hand" - }, - { - -- alicorn headguard - itemid = 39149, - type = "equip", - slot = "head", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- alicorn headguard - itemid = 39149, - type = "deequip", - slot = "head" - }, - { - -- spiritthorn helmet - itemid = 39148, - type = "equip", - slot = "head", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spiritthorn helmet - itemid = 39148, - type = "deequip", - slot = "head" - }, - { - -- spiritthorn armor - itemid = 39147, - type = "equip", - slot = "armor", - level = 400, - vocation = { - {"Knight", true, true}, - {"Elite Knight"} - } - }, - { - -- spiritthorn armor - itemid = 39147, - type = "deequip", - slot = "armor" - }, - { - -- green demon slippers - itemid = 37610, - type = "equip", - slot = "feet" - }, - { - -- green demon slippers - itemid = 37610, - type = "deequip", - slot = "feet" - }, - { - -- Morshabaal's mask - itemid = 37611, - type = "equip", - slot = "shield", - level = 150 - }, - { - -- Morshabaal's mask - itemid = 37611, - type = "deequip", - slot = "shield", - level = 150 - }, - { - -- green demon helmet - itemid = 37609, - type = "equip", - slot = "head" - }, - { - -- green demon helmet - itemid = 37609, - type = "deequip", - slot = "head" - }, - { - -- green demon armor - itemid = 37608, - type = "equip", - slot = "armor" - }, - { - -- green demon armor - itemid = 37608, - type = "deequip", - slot = "armor" - }, - { - -- green demon legs - itemid = 37607, - type = "equip", - slot = "legs" - }, - { - -- green demon legs - itemid = 37607, - type = "deequip", - slot = "legs" - }, - { - -- changing backpack - itemid = 37536, - type = "equip", - slot = "backpack" - }, - { - -- changing backpack - itemid = 37536, - type = "deequip", - slot = "backpack" - }, - { - -- gilded eldritch rod - itemid = 36675, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- gilded eldritch rod - itemid = 36675, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch rod - itemid = 36674, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch rod - itemid = 36674, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch tome - itemid = 36673, - type = "equip", - slot = "shield", - level = 300, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch tome - itemid = 36673, - type = "deequip", - slot = "shield", - level = 300, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch folio - itemid = 36672, - type = "equip", - slot = "shield", - level = 300, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch folio - itemid = 36672, - type = "deequip", - slot = "shield", - level = 300, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch hood - itemid = 36671, - type = "equip", - slot = "head", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch hood - itemid = 36671, - type = "deequip", - slot = "head", - level = 250, - vocation = { - {"Druid", true, true}, - {"Elder Druid"} - } - }, - { - -- eldritch cowl - itemid = 36670, - type = "equip", - slot = "head", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch cowl - itemid = 36670, - type = "deequip", - slot = "head", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- gilded eldritch wand - itemid = 36669, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- gilded eldritch wand - itemid = 36669, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch wand - itemid = 36668, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch wand - itemid = 36668, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - {"Sorcerer", true, true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch breeches - itemid = 36667, - type = "equip", - slot = "legs", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- eldritch breeches - itemid = 36667, - type = "deequip", - slot = "legs", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- eldritch quiver - itemid = 36666, - type = "equip", - slot = "right-hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- eldritch quiver - itemid = 36666, - type = "deequip", - slot = "right-hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- gilded eldritch bow - itemid = 36665, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- gilded eldritch bow - itemid = 36665, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- eldritch bow - itemid = 36664, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- eldritch bow - itemid = 36664, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- eldritch cuirass - itemid = 36663, - type = "equip", - slot = "armor", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch cuirass - itemid = 36663, - type = "deequip", - slot = "armor", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch greataxe - itemid = 36662, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch greataxe - itemid = 36662, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch greataxe - itemid = 36661, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch greataxe - itemid = 36661, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch warmace - itemid = 36660, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch warmace - itemid = 36660, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch warmace - itemid = 36659, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch warmace - itemid = 36659, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch claymore - itemid = 36658, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch claymore - itemid = 36658, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch claymore - itemid = 36657, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch claymore - itemid = 36657, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch shield - itemid = 36656, - type = "equip", - slot = "shield", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch shield - itemid = 36656, - type = "deequip", - slot = "shield", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spectral bolt (no decay) - itemid = 35902, - type = "equip", - slot = "ammo" - }, - { - -- spectral bolt (no decay) - itemid = 35902, - type = "deequip", - slot = "ammo" - }, - { - -- red quiver - itemid = 35849, - type = "equip", - slot = "right-hand", - vocation = { - {"None", true}, - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- red quiver - itemid = 35849, - type = "deequip", - slot = "right-hand", - vocation = { - {"None", true}, - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- blue quiver - itemid = 35848, - type = "equip", - slot = "right-hand", - vocation = { - {"None", true}, - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- blue quiver - itemid = 35848, - type = "deequip", - slot = "right-hand", - vocation = { - {"None", true}, - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- quiver - itemid = 35562, - type = "equip", - slot = "right-hand", - vocation = { - {"None", true}, - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- quiver - itemid = 35562, - type = "deequip", - slot = "right-hand", - vocation = { - {"None", true}, - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- jungle quiver - itemid = 35524, - type = "equip", - slot = "right-hand", - level = 150, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- jungle quiver - itemid = 35524, - type = "deequip", - slot = "right-hand", - level = 150, - vocation = { - {"Paladin", true, true}, - {"Royal Paladin"} - } - }, - { - -- exotic amulet - itemid = 35523, - type = "equip", - slot = "necklace", - level = 180 - }, - { - -- exotic amulet - itemid = 35523, - type = "deequip", - slot = "necklace" - }, - { - -- jungle wand - itemid = 35522, - type = "equip", - slot = "hand", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- jungle wand - itemid = 35522, - type = "deequip", - slot = "hand", - }, - { - -- jungle rod - itemid = 35521, - type = "equip", - slot = "hand", - level = 150, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- jungle rod - itemid = 35521, - type = "deequip", - slot = "hand", - }, - { - -- make-do boots - itemid = 35520, - type = "equip", - slot = "feet", - level = 150, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- make-do boots - itemid = 35520, - type = "deequip", - slot = "feet", - }, - { - -- makeshift boots - itemid = 35519, - type = "equip", - slot = "feet", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- makeshift boots - itemid = 35519, - type = "deequip", - slot = "feet", - }, - { - -- jungle bow - itemid = 35518, - type = "equip", - slot = "hand", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- jungle bow - itemid = 35518, - type = "deequip", - slot = "hand", - }, - { - -- bast legs - itemid = 35517, - type = "equip", - slot = "legs", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bast legs - itemid = 35517, - type = "deequip", - slot = "legs", - }, - { - -- exotic legs - itemid = 35516, - type = "equip", - slot = "legs", - level = 130, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- exotic legs - itemid = 35516, - type = "deequip", - slot = "legs", - }, - { - -- throwing axe - itemid = 35515, - type = "equip", - slot = "hand", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- throwing axe - itemid = 35515, - type = "deequip", - slot = "hand", - }, - { - -- jungle flail - itemid = 35514, - type = "equip", - slot = "hand", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- jungle flail - itemid = 35514, - type = "deequip", - slot = "hand", - }, - { - -- lion hammer - itemid = 34254, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion hammer - itemid = 34254, - type = "deequip", - slot = "hand" - }, - { - -- lion axe - itemid = 34253, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion axe - itemid = 34253, - type = "deequip", - slot = "hand" - }, - { - -- lion amulet - itemid = 34158, - type = "equip", - slot = "necklace", - level = 230 - }, - { - -- lion amulet - itemid = 34158, - type = "deequip", - slot = "necklace", - level = 230 - }, - { - -- lion plate - itemid = 34157, - type = "deequip", - slot = "armor", - level = 270 - }, - { - -- lion plate - itemid = 34157, - type = "equip", - slot = "armor", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion spangenhelm - itemid = 34156, - type = "deequip", - slot = "head" - }, - { - -- lion spangenhelm - itemid = 34156, - type = "equip", - slot = "head", - level = 230, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- lion longsword - itemid = 34155, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion longsword - itemid = 34155, - type = "deequip", - slot = "hand" - }, - { - -- lion shield - itemid = 34154, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion shield - itemid = 34154, - type = "deequip", - slot = "hand" - }, - { - -- lion spellbook - itemid = 34153, - type = "deequip", - slot = "shield", - level = 220 - }, - { - -- lion spellbook - itemid = 34153, - type = "equip", - slot = "shield", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- lion wand - itemid = 34152, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- lion wand - itemid = 34152, - type = "deequip", - slot = "hand" - }, - { - -- lion rod - itemid = 34151, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- lion rod - itemid = 34151, - type = "deequip", - slot = "hand" - }, - { - -- lion longbow - itemid = 34150, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- lion longbow - itemid = 34150, - type = "deequip", - slot = "hand" - }, - { - -- soulbastion shield - itemid = 34099, - type = "deequip", - slot = "shield" - }, - { - -- soulbastion shield - itemid = 34099, - type = "equip", - slot = "shield", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- pair of soulstalkers - itemid = 34098, - type = "deequip", - slot = "feet" - }, - { - -- pair of soulstalkers - itemid = 34098, - type = "equip", - slot = "feet", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- pair of soulwalkers - itemid = 34097, - type = "deequip", - slot = "feet" - }, - { - -- pair of soulwalkers - itemid = 34097, - type = "equip", - slot = "feet", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulshroud armor - itemid = 34096, - type = "deequip", - slot = "armor" - }, - { - -- soulshroud armor - itemid = 34096, - type = "equip", - slot = "armor", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- soulmantle - itemid = 34095, - type = "deequip", - slot = "armor" - }, - { - -- soulmantle - itemid = 34095, - type = "equip", - slot = "armor", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- soulshell armor - itemid = 34094, - type = "deequip", - slot = "armor", - level = 400 - }, - { - -- soulshell armor - itemid = 34094, - type = "equip", - slot = "armor", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- soulstrider legs - itemid = 34093, - type = "deequip", - slot = "legs", - level = 400 - }, - { - -- soulstrider legs - itemid = 34093, - type = "equip", - slot = "legs", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- soulshanks legs - itemid = 34092, - type = "deequip", - slot = "legs", - level = 400 - }, - { - -- soulshanks legs - itemid = 34092, - type = "equip", - slot = "legs", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- soulhexer - itemid = 34091, - type = "deequip", - slot = "hand", - }, - { - -- soulhexer - itemid = 34091, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- soultainter - itemid = 34090, - type = "deequip", - slot = "hand", - }, - { - -- soultainter - itemid = 34090, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- soulpiercer - itemid = 34089, - type = "deequip", - slot = "hand", - }, - { - -- soulpiercer - itemid = 34089, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- soulbleeder - itemid = 34088, - type = "deequip", - slot = "hand", - }, - { - -- soulbleeder - itemid = 34088, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- soulmaimer - itemid = 34087, - type = "deequip", - slot = "hand", - }, - { - -- soulmaimer - itemid = 34087, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulcrusher - itemid = 34086, - type = "deequip", - slot = "hand", - }, - { - -- soulcrusher - itemid = 34086, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- souleater - itemid = 34085, - type = "deequip", - slot = "hand", - }, - { - -- souleater - itemid = 34085, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulbiter - itemid = 34084, - type = "deequip", - slot = "hand", - }, - { - -- soulbiter - itemid = 34084, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulshredder - itemid = 34083, - type = "deequip", - slot = "hand", - }, - { - -- soulshredder - itemid = 34083, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulcutter - itemid = 34082, - type = "deequip", - slot = "hand", - }, - { - -- soulcutter - itemid = 34082, - type = "equip", - slot = "hand", - level = 400, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion ring - itemid = 34080, - type = "deequip", - slot = "ring" - }, - { - -- lion ring - itemid = 34080, - type = "equip", - slot = "ring" - }, - { - -- Lit Torch (Sparkling) - itemid = 34016, - type = "equip", - slot = "ammo" - }, - { - -- Lit Torch (Sparkling) - itemid = 34016, - type = "deequip", - slot = "ammo" - }, - { - -- pair of old bracers - itemid = 32705, - type = "equip", - slot = "armor" - }, - { - -- pair of old bracers - itemid = 32705, - type = "deequip", - slot = "armor" - }, - { - -- ring of souls - itemid = 32636, - type = "equip", - slot = "ring", - level = 200 - }, - { - -- ring of souls - itemid = 32636, - type = "deequip", - slot = "ring", - level = 200 - }, - { - -- enchanted ring of souls - itemid = 32635, - type = "equip", - slot = "ring", - level = 200 - }, - { - -- enchanted ring of souls - itemid = 32635, - type = "deequip", - slot = "ring", - level = 200 - }, - { - -- spooky hood - itemid = 32630, - type = "equip", - slot = "head" - }, - { - -- spooky hood - itemid = 32630, - type = "deequip", - slot = "head" - }, - { - -- ghost chestplate - itemid = 32628, - type = "equip", - slot = "armor", - level = 230, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ghost chestplate - itemid = 32628, - type = "deequip", - slot = "armor", - level = 230 - }, - { - -- enchanted ring of souls - itemid = 32621, - type = "equip", - slot = "ring", - level = 200 - }, - { - -- enchanted ring of souls - itemid = 32621, - type = "deequip", - slot = "ring", - level = 200 - }, - { - -- ghost backpack - itemid = 32620, - type = "equip", - slot = "backpack" - }, - { - -- ghost backpack - itemid = 32620, - type = "deequip", - slot = "backpack" - }, - { - -- pair of nightmare boots - itemid = 32619, - type = "equip", - slot = "feet", - level = 140, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- pair of nightmare boots - itemid = 32619, - type = "deequip", - slot = "feet", - level = 140 - }, - { - -- soulful legs - itemid = 32618, - type = "equip", - slot = "legs", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- soulful legs - itemid = 32618, - type = "deequip", - slot = "legs", - level = 180 - }, - { - -- fabulous legs - itemid = 32617, - type = "equip", - slot = "legs", - level = 225, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- fabulous legs - itemid = 32617, - type = "deequip", - slot = "legs", - level = 225 - }, - { - -- phantasmal axe - itemid = 32616, - type = "equip", - slot = "hand", - level = 180, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- phantasmal axe - itemid = 32616, - type = "deequip", - slot = "hand" - }, - { - -- burial shroud - itemid = 32585, - type = "equip", - slot = "armor" - }, - { - -- burial shroud - itemid = 32585, - type = "deequip", - slot = "armor" - }, - { - -- Traditional Gamsbart Hat - itemid = 32100, - type = "equip", - slot = "head" - }, - { - -- Traditional Gamsbart Hat - itemid = 32100, - type = "deequip", - slot = "head" - }, - { - -- traditional shirt - itemid = 32099, - type = "equip", - slot = "armor" - }, - { - -- traditional shirt - itemid = 32099, - type = "deequip", - slot = "armor" - }, - { - -- lederhosen - itemid = 32097, - type = "equip", - slot = "legs" - }, - { - -- lederhosen - itemid = 32097, - type = "deequip", - slot = "legs" - }, - { - -- traditional leather shoes - itemid = 32098, - type = "equip", - slot = "feet" - }, - { - -- traditional leather shoes - itemid = 32098, - type = "deequip", - slot = "feet" - }, - { - -- meat hammer - itemid = 32093, - type = "equip", - slot = "hand", - }, - { - -- meat hammer - itemid = 32093, - type = "deequip", - slot = "hand", - }, - { - -- note about two souls - itemid = 31676, - type = "equip", - slot = "necklace", - }, - { - -- note about two souls - itemid = 31676, - type = "deequip", - slot = "necklace", - }, - { - -- the cobra amulet - itemid = 31631, - type = "equip", - slot = "necklace", - level = 250, - }, - { - -- the cobra amulet - itemid = 31631, - type = "deequip", - slot = "necklace", - level = 250, - }, - { - -- winged backpack - itemid = 31625, - type = "equip", - slot = "backpack", - }, - { - -- winged backpack - itemid = 31625, - type = "deequip", - slot = "backpack", - }, - { - -- blister ring - itemid = 31621, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- blister ring - itemid = 31621, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- winged boots - itemid = 31617, - type = "equip", - slot = "feet", - level = 220, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - }, - }, - { - -- winged boots - itemid = 31617, - type = "deequip", - slot = "feet", - level = 220, - }, - { - -- enchanted blister ring - itemid = 31616, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- enchanted blister ring - itemid = 31616, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- tagralt blade - itemid = 31614, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- tagralt blade - itemid = 31614, - type = "deequip", - slot = "hand", - }, - { - -- toga mortis - itemid = 31583, - type = "equip", - slot = "armor", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - }, - }, - { - -- toga mortis - itemid = 31583, - type = "deequip", - slot = "armor", - level = 220, - }, - { - -- galea mortis - itemid = 31582, - type = "equip", - slot = "head", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - }, - }, - { - -- galea mortis - itemid = 31582, - type = "deequip", - slot = "head", - level = 220 - }, - { - -- bow of cataclysm - itemid = 31581, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bow of cataclysm - itemid = 31581, - type = "deequip", - slot = "hand", - }, - { - -- mortal mace - itemid = 31580, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mortal mace - itemid = 31580, - type = "deequip", - slot = "hand", - }, - { - -- embrace of nature - itemid = 31579, - type = "equip", - slot = "armor", - level = 220, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - }, - }, - { - -- embrace of nature - itemid = 31579, - type = "deequip", - slot = "armor", - level = 220, - }, - { - -- bear skin - itemid = 31578, - type = "equip", - slot = "armor", - level = 230, - vocation = { - {"Druid", true}, - {"Elder Druid"} - }, - }, - { - -- bear skin - itemid = 31578, - type = "deequip", - slot = "armor", - level = 230, - }, - { - -- terra helmet - itemid = 31577, - type = "equip", - slot = "head", - level = 230, - vocation = { - {"Knight", true}, - {"Elite Knight"} - }, - }, - { - -- terra helmet - itemid = 31577, - type = "deequip", - slot = "head", - level = 230, - }, - { - -- enchanted blister ring - itemid = 31557, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- enchanted blister ring - itemid = 31557, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- rainbow amulet - itemid = 31556, - type = "equip", - slot = "necklace", - level = 220, - }, - { - -- rainbow amulet - itemid = 31556, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- sphinx tiara - itemid = 31438, - type = "equip", - slot = "head", - }, - { - -- sphinx tiara - itemid = 31438, - type = "deequip", - slot = "head", - }, - { - -- gryphon mask - itemid = 31433, - type = "equip", - slot = "head", - }, - { - -- gryphon mask - itemid = 31433, - type = "deequip", - slot = "head", - }, - { - -- symbol of sun and sea - itemid = 31431, - type = "equip", - slot = "ring", - }, - { - -- symbol of sun and sea - itemid = 31431, - type = "deequip", - slot = "ring", - }, - { - -- silver mask - itemid = 31370, - type = "equip", - slot = "head", - }, - { - -- silver mask - itemid = 31370, - type = "deequip", - slot = "head", - }, - { - -- ring of secret thoughts - itemid = 31306, - type = "equip", - slot = "ring", - }, - { - -- ring of secret thoughts - itemid = 31306, - type = "deequip", - slot = "ring", - }, - { - -- jade amulet - itemid = 31268, - type = "equip", - slot = "necklace", - }, - { - -- jade amulet - itemid = 31268, - type = "deequip", - slot = "necklace", - }, - { - -- ring of secret thoughts - itemid = 31263, - type = "equip", - slot = "ring", - }, - { - -- ring of secret thoughts - itemid = 31263, - type = "deequip", - slot = "ring", - }, - { - -- enchanted theurgic amulet - itemid = 30403, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - }, - }, - { - -- enchanted theurgic amulet - itemid = 30403, - type = "deequip", - slot = "necklace", - level = 220 - }, - { - -- enchanted theurgic amulet - itemid = 30402, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - }, - }, - { - -- enchanted theurgic amulet - itemid = 30402, - type = "deequip", - slot = "necklace", - level = 220 - }, - { - -- amulet of theurgy - itemid = 30401, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - }, - }, - { - -- amulet of theurgy - itemid = 30401, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- cobra rod - itemid = 30400, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Druid", true}, - {"Elder Druid"} - }, - }, - { - -- cobra rod - itemid = 30400, - type = "deequip", - slot = "hand", - level = 220, - }, - { - -- cobra wand - itemid = 30399, - type = "equip", - slot = "hand", - level = 270, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - }, - }, - { - -- cobra wand - itemid = 30399, - type = "deequip", - slot = "hand", - level = 270, - }, - { - -- cobra sword - itemid = 30398, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra sword - itemid = 30398, - type = "deequip", - slot = "hand", - level = 220, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra hood - itemid = 30397, - type = "equip", - slot = "head", - level = 270, - vocation = { - {"Knight", true}, - {"Elite Knight"} - }, - }, - { - -- cobra hood - itemid = 30397, - type = "deequip", - slot = "head", - level = 270, - }, - { - -- cobra axe - itemid = 30396, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra axe - itemid = 30396, - type = "deequip", - slot = "hand", - }, - { - -- cobra club - itemid = 30395, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra club - itemid = 30395, - type = "deequip", - slot = "hand", - }, - { - -- cobra boots - itemid = 30394, - type = "equip", - slot = "feet", - level = 220, - vocation = { - {"Knight", true}, - {"Elite Knight"} - }, - }, - { - -- cobra boots - itemid = 30394, - type = "deequip", - slot = "feet", - level = 220, - }, - { - -- cobra crossbow - itemid = 30393, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- cobra crossbow - itemid = 30393, - type = "deequip", - slot = "hand", - }, - { - -- rainbow necklace - itemid = 30323, - type = "equip", - slot = "necklace", - level = 220 - }, - { - -- rainbow necklace - itemid = 30323, - type = "deequip", - slot = "necklace", - level = 220 - }, - { - -- ice hatchet - itemid = 30283, - type = "equip", - slot = "hand" - }, - { - -- ice hatchet - itemid = 30283, - type = "deequip", - slot = "hand" - }, - { - -- frozen claw - itemid = 30279, - type = "equip", - slot = "ring" - }, - { - -- frozen claw - itemid = 30279, - type = "deequip", - slot = "ring" - }, - { - -- the crown of the percht queen - itemid = 30276, - type = "equip", - slot = "head" - }, - { - -- the crown of the percht queen - itemid = 30276, - type = "deequip", - slot = "head" - }, - { - -- the crown of the percht queen - itemid = 30275, - type = "equip", - slot = "head" - }, - { - -- the crown of the percht queen - itemid = 30275, - type = "deequip", - slot = "head" - }, - { - -- festive backpack - itemid = 30197, - type = "equip", - slot = "backpack" - }, - { - -- festive backpack - itemid = 30197, - type = "deequip", - slot = "backpack" - }, - { - -- yetislippers - itemid = 30196, - type = "equip", - slot = "feet" - }, - { - -- yetislippers - itemid = 30196, - type = "deequip", - slot = "feet" - }, - { - -- enchanted pendulet - itemid = 30345, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- enchanted pendulet - itemid = 30345, - type = "deequip", - slot = "necklace", - level = 180 - }, - { - -- enchanted pendulet - itemid = 30344, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- enchanted pendulet - itemid = 30344, - type = "deequip", - slot = "necklace", - level = 180 - }, - { - -- enchanted sleep shawl - itemid = 30343, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- enchanted sleep shawl - itemid = 30343, - type = "deequip", - slot = "necklace", - level = 180 - }, - { - -- enchanted sleep shawl - itemid = 30342, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- enchanted sleep shawl - itemid = 30342, - type = "deequip", - slot = "necklace", - level = 180 - }, - { - -- shield of endless search - itemid = 30181, - type = "equip", - slot = "shield" - }, - { - -- shield of endless search - itemid = 30181, - type = "deequip", - slot = "shield" - }, - { - -- spirit guide - itemid = 29431, - type = "equip", - slot = "shield", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spirit guide - itemid = 29431, - type = "deequip", - slot = "shield", - level = 180 - }, - { - -- ectoplasmic shield - itemid = 29430, - type = "equip", - slot = "shield", - level = 180, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ectoplasmic shield - itemid = 29430, - type = "deequip", - slot = "shield", - level = 180 - }, - { - -- pendulet - itemid = 29429, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- pendulet - itemid = 29429, - type = "deequip", - slot = "necklace", - level = 180 - }, - { - -- sleep shawl - itemid = 29428, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- sleep shawl - itemid = 29428, - type = "deequip", - slot = "necklace", - level = 180 - }, - { - -- dark whispers - itemid = 29427, - type = "equip", - slot = "head", - level = 180, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- dark whispers - itemid = 29427, - type = "deequip", - slot = "head", - level = 180 - }, - { - -- brain in a jar - itemid = 29426, - type = "equip", - slot = "shield", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- brain in a jar - itemid = 29426, - type = "deequip", - slot = "shield", - level = 180 - }, - { - -- energized limb - itemid = 29425, - type = "equip", - slot = "hand", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- energized limb - itemid = 29425, - type = "deequip", - slot = "hand", - level = 180 - }, - { - -- pair of dreamwalkers - itemid = 29424, - type = "equip", - slot = "feet", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- pair of dreamwalkers - itemid = 29424, - type = "deequip", - slot = "feet", - level = 180 - }, - { - -- dream shroud - itemid = 29423, - type = "equip", - slot = "armor", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- dream shroud - itemid = 29423, - type = "deequip", - slot = "armor", - level = 180 - }, - { - -- winterblade - itemid = 29422, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- winterblade - itemid = 29422, - type = "deequip", - slot = "hand" - }, - { - -- summerblade - itemid = 29421, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- summerblade - itemid = 29421, - type = "deequip", - slot = "hand" - }, - { - -- shoulder plate - itemid = 29420, - type = "equip", - slot = "shield", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- shoulder plate - itemid = 29420, - type = "deequip", - slot = "shield", - level = 180 - }, - { - -- resizer - itemid = 29419, - type = "equip", - slot = "hand", - level = 230, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- resizer - itemid = 29419, - type = "deequip", - slot = "hand" - }, - { - -- living armor - itemid = 29418, - type = "equip", - slot = "armor", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- living armor - itemid = 29418, - type = "deequip", - slot = "armor", - level = 180 - }, - { - -- living vine bow - itemid = 29417, - type = "equip", - slot = "hand", - level = 220, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- living vine bow - itemid = 29417, - type = "deequip", - slot = "hand", - level = 220, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- golden axe - itemid = 29286, - type = "equip", - slot = "hand" - }, - { - -- golden axe - itemid = 29286, - type = "deequip", - slot = "hand" - }, - { - -- book backpack - itemid = 28571, - type = "equip", - slot = "backpack" - }, - { - -- book backpack - itemid = 28571, - type = "deequip", - slot = "backpack" - }, - { - -- wand of destruction test - itemid = 28479, - type = "equip", - slot = "hand" - }, - { - -- wand of destruction test - itemid = 28479, - type = "deequip", - slot = "hand" - }, - { - -- umbral master bow test - itemid = 28478, - type = "equip", - slot = "hand" - }, - { - -- umbral master bow test - itemid = 28478, - type = "deequip", - slot = "hand" - }, - { - -- ornate testtplate - itemid = 28475, - type = "equip", - slot = "armor" - }, - { - -- ornate testtplate - itemid = 28475, - type = "deequip", - slot = "armor" - }, - { - -- sorcerer test weapon - itemid = 28466, - type = "equip", - slot = "hand" - }, - { - -- sorcerer test weapon - itemid = 28466, - type = "deequip", - slot = "hand" - }, - { - -- bow of destruction test - itemid = 28465, - type = "equip", - slot = "hand" - }, - { - -- bow of destruction test - itemid = 28465, - type = "deequip", - slot = "hand" - }, - { - -- test weapon for knights - itemid = 28464, - type = "equip", - slot = "hand" - }, - { - -- test weapon for knights - itemid = 28464, - type = "deequip", - slot = "hand" - }, - { - -- sulphurous demonbone - itemid = 28832, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- sulphurous demonbone - itemid = 28832, - type = "deequip", - slot = "hand" - }, - { - -- unliving demonbone - itemid = 28831, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- unliving demonbone - itemid = 28831, - type = "deequip", - slot = "hand" - }, - { - -- energized demonbone - itemid = 28830, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- energized demonbone - itemid = 28830, - type = "deequip", - slot = "hand" - }, - { - -- rotten demonbone - itemid = 28829, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- rotten demonbone - itemid = 28829, - type = "deequip", - slot = "hand" - }, - { - -- deepling fork - itemid = 28826, - type = "equip", - slot = "hand", - level = 230, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- deepling fork - itemid = 28826, - type = "deequip", - slot = "hand", - level = 230 - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = "equip", - slot = "hand", - level = 180, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = "deequip", - slot = "hand", - level = 180 - }, - { - -- falcon mace - itemid = 28725, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- falcon mace - itemid = 28725, - type = "deequip", - slot = "hand" - }, - { - -- falcon battleaxe - itemid = 28724, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} -} - }, - { - -- falcon battleaxe - itemid = 28724, - type = "deequip", - slot = "hand" - }, - { - -- falcon longsword - itemid = 28723, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} -} - }, - { - -- falcon longsword - itemid = 28723, - type = "deequip", - slot = "hand" - }, - { - -- falcon escutcheon - itemid = 28722, - type = "equip", - slot = "shield", - level = 300, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- falcon escutcheon - itemid = 28722, - type = "deequip", - slot = "shield", - level = 300 - }, - { - -- falcon shield - itemid = 28721, - type = "equip", - slot = "shield", - level = 300, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- falcon shield - itemid = 28721, - type = "deequip", - slot = "shield", - level = 300 - }, - { - -- falcon greaves - itemid = 28720, - type = "equip", - slot = "legs", - level = 300, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- falcon greaves - itemid = 28720, - type = "deequip", - slot = "legs", - level = 300 - }, - { - -- falcon plate - itemid = 28719, - type = "equip", - slot = "armor", - level = 300, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- falcon plate - itemid = 28719, - type = "deequip", - slot = "armor", - level = 300 - }, - { - -- falcon bow - itemid = 28718, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"paladin", true}, - {"royal paladin"} - } - }, - { - -- falcon bow - itemid = 28718, - type = "deequip", - slot = "hand", - level = 300 - }, - { - -- falcon wand - itemid = 28717, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- falcon wand - itemid = 28717, - type = "deequip", - slot = "hand", - level = 300 - }, - { - -- falcon rod - itemid = 28716, - type = "equip", - slot = "hand", - level = 300, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- falcon rod - itemid = 28716, - type = "deequip", - slot = "hand", - level = 300 - }, - { - -- falcon coif - itemid = 28715, - type = "equip", - slot = "head", - level = 300, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- falcon coif - itemid = 28715, - type = "deequip", - slot = "head", - level = 300 - }, - { - -- falcon circlet - itemid = 28714, - type = "equip", - slot = "head", - level = 300, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- falcon circlet - itemid = 28714, - type = "deequip", - slot = "head", - level = 300 - }, - { - -- silver chimes - itemid = 12126, - type = "equip", - slot = "shield" - }, - { - -- silver chimes - itemid = 12126, - type = "deequip", - slot = "shield" - }, - { - -- suspicious device - itemid = 27653, - type = "equip", - slot = "necklace" - }, - { - -- suspicious device - itemid = 27653, - type = "deequip", - slot = "necklace" - }, - { - -- gnome sword - itemid = 27651, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gnome sword - itemid = 27651, - type = "deequip", - slot = "hand" - }, - { - -- gnome shield - itemid = 27650, - type = "equip", - slot = "shield", - level = 200, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Royal Paladin"}, - {"Elite Knight"} - } - }, - { - -- gnome shield - itemid = 27650, - type = "deequip", - slot = "shield", - level = 200 - }, - { - -- gnome legs - itemid = 27649, - type = "equip", - slot = "legs", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- gnome legs - itemid = 27649, - type = "deequip", - slot = "legs", - level = 200 - }, - { - -- gnome armor - itemid = 27648, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- gnome armor - itemid = 27648, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- gnome helmet - itemid = 27647, - type = "equip", - slot = "head", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- gnome helmet - itemid = 27647, - type = "deequip", - slot = "head", - level = 200 - }, - { - -- foxtail amulet - itemid = 27565, - type = "equip", - slot = "necklace", - level = 100 - }, - { - -- foxtail amulet - itemid = 27565, - type = "deequip", - slot = "necklace", - level = 100 - }, - { - -- mallet handle - itemid = 27525, - type = "equip", - slot = "hand" - }, - { - -- mallet handle - itemid = 27525, - type = "deequip", - slot = "hand" - }, - { - -- strange mallet - itemid = 27523, - type = "equip", - slot = "hand" - }, - { - -- strange mallet - itemid = 27523, - type = "deequip", - slot = "hand" - }, - { - -- blue spectacles - itemid = 27522, - type = "equip", - slot = "head" - }, - { - -- blue spectacles - itemid = 27522, - type = "deequip", - slot = "head" - }, - { - -- rod of destruction - itemid = 27458, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- rod of destruction - itemid = 27458, - type = "deequip", - slot = "hand", - level = 200 - }, - { - -- wand of destruction - itemid = 27457, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of destruction - itemid = 27457, - type = "deequip", - slot = "hand", - level = 200 - }, - { - -- crossbow of destruction - itemid = 27456, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crossbow of destruction - itemid = 27456, - type = "deequip", - slot = "hand" - }, - { - -- bow of destruction - itemid = 27455, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bow of destruction - itemid = 27455, - type = "deequip", - slot = "hand" - }, - { - -- hammer of destruction - itemid = 27454, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- hammer of destruction - itemid = 27454, - type = "deequip", - slot = "hand" - }, - { - -- mace of destruction - itemid = 27453, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mace of destruction - itemid = 27453, - type = "deequip", - slot = "hand" - }, - { - -- chopper of destruction - itemid = 27452, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- chopper of destruction - itemid = 27452, - type = "deequip", - slot = "hand" - }, - { - -- axe of destruction - itemid = 27451, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- axe of destruction - itemid = 27451, - type = "deequip", - slot = "hand" - }, - { - -- slayer of destruction - itemid = 27450, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- slayer of destruction - itemid = 27450, - type = "deequip", - slot = "hand" - }, - { - -- blade of destruction - itemid = 27449, - type = "equip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blade of destruction - itemid = 27449, - type = "deequip", - slot = "hand", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- Journal Shield - itemid = 26947, - type = "equip", - slot = "shield" - }, - { - -- Journal Shield - itemid = 26947, - type = "deequip", - slot = "shield" - }, - { - -- reflecting crown - itemid = 26190, - type = "equip", - slot = "head" - }, - { - -- reflecting crown - itemid = 26190, - type = "deequip", - slot = "head" - }, - { - -- incandescent crown - itemid = 26189, - type = "equip", - slot = "head" - }, - { - -- incandescent crown - itemid = 26189, - type = "deequip", - slot = "head" - }, - { - -- iron crown - itemid = 26188, - type = "equip", - slot = "head" - }, - { - -- iron crown - itemid = 26188, - type = "deequip", - slot = "head" - }, - { - -- leaf crown - itemid = 26187, - type = "equip", - slot = "head" - }, - { - -- leaf crown - itemid = 26187, - type = "deequip", - slot = "head" - }, - { - -- ornate carving hammer - itemid = 26061, - type = "equip", - slot = "hand" - }, - { - -- ornate carving hammer - itemid = 26061, - type = "deequip", - slot = "hand" - }, - { - -- valuable carving hammer - itemid = 26060, - type = "equip", - slot = "hand" - }, - { - -- valuable carving hammer - itemid = 26060, - type = "deequip", - slot = "hand" - }, - { - -- plain carving hammer - itemid = 26059, - type = "equip", - slot = "hand" - }, - { - -- plain carving hammer - itemid = 26059, - type = "deequip", - slot = "hand" - }, - { - -- ornate carving mace - itemid = 26058, - type = "equip", - slot = "hand" - }, - { - -- ornate carving mace - itemid = 26058, - type = "deequip", - slot = "hand" - }, - { - -- valuable carving mace - itemid = 26057, - type = "equip", - slot = "hand" - }, - { - -- valuable carving mace - itemid = 26057, - type = "deequip", - slot = "hand" - }, - { - -- plain carving mace - itemid = 26056, - type = "equip", - slot = "hand" - }, - { - -- plain carving mace - itemid = 26056, - type = "deequip", - slot = "hand" - }, - { - -- ornate carving chopper - itemid = 26055, - type = "equip", - slot = "hand" - }, - { - -- ornate carving chopper - itemid = 26055, - type = "deequip", - slot = "hand" - }, - { - -- valuable carving chopper - itemid = 26054, - type = "equip", - slot = "hand" - }, - { - -- valuable carving chopper - itemid = 26054, - type = "deequip", - slot = "hand" - }, - { - -- plain carving chopper - itemid = 26053, - type = "equip", - slot = "hand" - }, - { - -- plain carving chopper - itemid = 26053, - type = "deequip", - slot = "hand" - }, - { - -- ornate carving axe - itemid = 26052, - type = "equip", - slot = "hand" - }, - { - -- ornate carving axe - itemid = 26052, - type = "deequip", - slot = "hand" - }, - { - -- valuable carving axe - itemid = 26051, - type = "equip", - slot = "hand" - }, - { - -- valuable carving axe - itemid = 26051, - type = "deequip", - slot = "hand" - }, - { - -- plain carving axe - itemid = 26050, - type = "equip", - slot = "hand" - }, - { - -- plain carving axe - itemid = 26050, - type = "deequip", - slot = "hand" - }, - { - -- ornate carving slayer - itemid = 26049, - type = "equip", - slot = "hand" - }, - { - -- ornate carving slayer - itemid = 26049, - type = "deequip", - slot = "hand" - }, - { - -- valuable carving slayer - itemid = 26048, - type = "equip", - slot = "hand" - }, - { - -- valuable carving slayer - itemid = 26048, - type = "deequip", - slot = "hand" - }, - { - -- plain carving slayer - itemid = 26047, - type = "equip", - slot = "hand" - }, - { - -- plain carving slayer - itemid = 26047, - type = "deequip", - slot = "hand" - }, - { - -- ornate carving blade - itemid = 26046, - type = "equip", - slot = "hand" - }, - { - -- ornate carving blade - itemid = 26046, - type = "deequip", - slot = "hand" - }, - { - -- valuable carving blade - itemid = 26045, - type = "equip", - slot = "hand" - }, - { - -- valuable carving blade - itemid = 26045, - type = "deequip", - slot = "hand" - }, - { - -- plain carving blade - itemid = 26044, - type = "equip", - slot = "hand" - }, - { - -- plain carving blade - itemid = 26044, - type = "deequip", - slot = "hand" - }, - { - -- ornate remedy hammer - itemid = 26031, - type = "equip", - slot = "hand" - }, - { - -- ornate remedy hammer - itemid = 26031, - type = "deequip", - slot = "hand" - }, - { - -- valuable remedy hammer - itemid = 26030, - type = "equip", - slot = "hand" - }, - { - -- valuable remedy hammer - itemid = 26030, - type = "deequip", - slot = "hand" - }, - { - -- plain remedy hammer - itemid = 26029, - type = "equip", - slot = "hand" - }, - { - -- plain remedy hammer - itemid = 26029, - type = "deequip", - slot = "hand" - }, - { - -- ornate remedy mace - itemid = 26028, - type = "equip", - slot = "hand" - }, - { - -- ornate remedy mace - itemid = 26028, - type = "deequip", - slot = "hand" - }, - { - -- valuable remedy mace - itemid = 26027, - type = "equip", - slot = "hand" - }, - { - -- valuable remedy mace - itemid = 26027, - type = "deequip", - slot = "hand" - }, - { - -- plain remedy mace - itemid = 26026, - type = "equip", - slot = "hand" - }, - { - -- plain remedy mace - itemid = 26026, - type = "deequip", - slot = "hand" - }, - { - -- ornate remedy chopper - itemid = 26025, - type = "equip", - slot = "hand" - }, - { - -- ornate remedy chopper - itemid = 26025, - type = "deequip", - slot = "hand" - }, - { - -- valuable remedy chopper - itemid = 26024, - type = "equip", - slot = "hand" - }, - { - -- valuable remedy chopper - itemid = 26024, - type = "deequip", - slot = "hand" - }, - { - -- plain remedy chopper - itemid = 26023, - type = "equip", - slot = "hand" - }, - { - -- plain remedy chopper - itemid = 26023, - type = "deequip", - slot = "hand" - }, - { - -- ornate remedy axe - itemid = 26022, - type = "equip", - slot = "hand" - }, - { - -- ornate remedy axe - itemid = 26022, - type = "deequip", - slot = "hand" - }, - { - -- valuable remedy axe - itemid = 26021, - type = "equip", - slot = "hand" - }, - { - -- valuable remedy axe - itemid = 26021, - type = "deequip", - slot = "hand" - }, - { - -- plain remedy axe - itemid = 26020, - type = "equip", - slot = "hand" - }, - { - -- plain remedy axe - itemid = 26020, - type = "deequip", - slot = "hand" - }, - { - -- ornate remedy slayer - itemid = 26019, - type = "equip", - slot = "hand" - }, - { - -- ornate remedy slayer - itemid = 26019, - type = "deequip", - slot = "hand" - }, - { - -- valuable remedy slayer - itemid = 26018, - type = "equip", - slot = "hand" - }, - { - -- valuable remedy slayer - itemid = 26018, - type = "deequip", - slot = "hand" - }, - { - -- plain remedy slayer - itemid = 26017, - type = "equip", - slot = "hand" - }, - { - -- plain remedy slayer - itemid = 26017, - type = "deequip", - slot = "hand" - }, - { - -- ornate remedy blade - itemid = 26016, - type = "equip", - slot = "hand" - }, - { - -- ornate remedy blade - itemid = 26016, - type = "deequip", - slot = "hand" - }, - { - -- valuable remedy blade - itemid = 26015, - type = "equip", - slot = "hand" - }, - { - -- valuable remedy blade - itemid = 26015, - type = "deequip", - slot = "hand" - }, - { - -- plain remedy blade - itemid = 26014, - type = "equip", - slot = "hand" - }, - { - -- plain remedy blade - itemid = 26014, - type = "deequip", - slot = "hand" - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = "equip", - slot = "hand" - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = "deequip", - slot = "hand" - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = "equip", - slot = "hand" - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = "deequip", - slot = "hand" - }, - { - -- plain mayhem hammer - itemid = 25998, - type = "equip", - slot = "hand" - }, - { - -- plain mayhem hammer - itemid = 25998, - type = "deequip", - slot = "hand" - }, - { - -- ornate mayhem mace - itemid = 25997, - type = "equip", - slot = "hand" - }, - { - -- ornate mayhem mace - itemid = 25997, - type = "deequip", - slot = "hand" - }, - { - -- valuable mayhem mace - itemid = 25996, - type = "equip", - slot = "hand" - }, - { - -- valuable mayhem mace - itemid = 25996, - type = "deequip", - slot = "hand" - }, - { - -- plain mayhem mace - itemid = 25995, - type = "equip", - slot = "hand" - }, - { - -- plain mayhem mace - itemid = 25995, - type = "deequip", - slot = "hand" - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = "equip", - slot = "hand" - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = "deequip", - slot = "hand" - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = "equip", - slot = "hand" - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = "deequip", - slot = "hand" - }, - { - -- plain mayhem chopper - itemid = 25992, - type = "equip", - slot = "hand" - }, - { - -- plain mayhem chopper - itemid = 25992, - type = "deequip", - slot = "hand" - }, - { - -- ornate mayhem axe - itemid = 25991, - type = "equip", - slot = "hand" - }, - { - -- ornate mayhem axe - itemid = 25991, - type = "deequip", - slot = "hand" - }, - { - -- valuable mayhem axe - itemid = 25990, - type = "equip", - slot = "hand" - }, - { - -- valuable mayhem axe - itemid = 25990, - type = "deequip", - slot = "hand" - }, - { - -- plain mayhem axe - itemid = 25989, - type = "equip", - slot = "hand" - }, - { - -- plain mayhem axe - itemid = 25989, - type = "deequip", - slot = "hand" - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = "equip", - slot = "hand" - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = "deequip", - slot = "hand" - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = "equip", - slot = "hand" - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = "deequip", - slot = "hand" - }, - { - -- plain mayhem slayer - itemid = 25986, - type = "equip", - slot = "hand" - }, - { - -- plain mayhem slayer - itemid = 25986, - type = "deequip", - slot = "hand" - }, - { - -- ornate mayhem blade - itemid = 25985, - type = "equip", - slot = "hand" - }, - { - -- ornate mayhem blade - itemid = 25985, - type = "deequip", - slot = "hand" - }, - { - -- valuable mayhem blade - itemid = 25984, - type = "equip", - slot = "hand" - }, - { - -- valuable mayhem blade - itemid = 25984, - type = "deequip", - slot = "hand" - }, - { - -- plain mayhem blade - itemid = 25983, - type = "equip", - slot = "hand" - }, - { - -- plain mayhem blade - itemid = 25983, - type = "deequip", - slot = "hand" - }, - { - -- mathmaster shield (souvenir) - itemid = 25982, - type = "equip", - slot = "shield" - }, - { - -- mathmaster shield (souvenir) - itemid = 25982, - type = "deequip", - slot = "shield" - }, - { - -- sun catcher - itemid = 25977, - type = "equip", - slot = "ammo" - }, - { - -- sun catcher - itemid = 25977, - type = "deequip", - slot = "ammo" - }, - { - -- starlight vial - itemid = 25976, - type = "equip", - slot = "ammo" - }, - { - -- starlight vial - itemid = 25976, - type = "deequip", - slot = "ammo" - }, - { - -- moon mirror - itemid = 25975, - type = "equip", - slot = "ammo" - }, - { - -- moon mirror - itemid = 25975, - type = "deequip", - slot = "ammo" - }, - { - -- energy war hammer replica - itemid = 25974, - type = "equip", - slot = "hand" - }, - { - -- energy war hammer replica - itemid = 25974, - type = "deequip", - slot = "hand" - }, - { - -- energy orcish maul replica - itemid = 25973, - type = "equip", - slot = "hand" - }, - { - -- energy orcish maul replica - itemid = 25973, - type = "deequip", - slot = "hand" - }, - { - -- energy basher replica - itemid = 25972, - type = "equip", - slot = "hand" - }, - { - -- energy basher replica - itemid = 25972, - type = "deequip", - slot = "hand" - }, - { - -- energy crystal mace replica - itemid = 25971, - type = "equip", - slot = "hand" - }, - { - -- energy crystal mace replica - itemid = 25971, - type = "deequip", - slot = "hand" - }, - { - -- energy clerical mace replica - itemid = 25970, - type = "equip", - slot = "hand" - }, - { - -- energy clerical mace replica - itemid = 25970, - type = "deequip", - slot = "hand" - }, - { - -- energy war axe replica - itemid = 25969, - type = "equip", - slot = "hand" - }, - { - -- energy war axe replica - itemid = 25969, - type = "deequip", - slot = "hand" - }, - { - -- energy headchopper replica - itemid = 25968, - type = "equip", - slot = "hand" - }, - { - -- energy headchopper replica - itemid = 25968, - type = "deequip", - slot = "hand" - }, - { - -- energy heroic axe replica - itemid = 25967, - type = "equip", - slot = "hand" - }, - { - -- energy heroic axe replica - itemid = 25967, - type = "deequip", - slot = "hand" - }, - { - -- energy knight axe replica - itemid = 25966, - type = "equip", - slot = "hand" - }, - { - -- energy knight axe replica - itemid = 25966, - type = "deequip", - slot = "hand" - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = "equip", - slot = "hand" - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = "deequip", - slot = "hand" - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = "equip", - slot = "hand" - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = "deequip", - slot = "hand" - }, - { - -- energy blacksteel replica - itemid = 25963, - type = "equip", - slot = "hand" - }, - { - -- energy blacksteel replica - itemid = 25963, - type = "deequip", - slot = "hand" - }, - { - -- energy mystic blade replica - itemid = 25962, - type = "equip", - slot = "hand" - }, - { - -- energy mystic blade replica - itemid = 25962, - type = "deequip", - slot = "hand" - }, - { - -- energy relic sword replica - itemid = 25961, - type = "equip", - slot = "hand" - }, - { - -- energy relic sword replica - itemid = 25961, - type = "deequip", - slot = "hand" - }, - { - -- energy spike sword replica - itemid = 25960, - type = "equip", - slot = "hand" - }, - { - -- energy spike sword replica - itemid = 25960, - type = "deequip", - slot = "hand" - }, - { - -- earth war hammer replica - itemid = 25959, - type = "equip", - slot = "hand" - }, - { - -- earth war hammer replica - itemid = 25959, - type = "deequip", - slot = "hand" - }, - { - -- earth orcish maul replica - itemid = 25958, - type = "equip", - slot = "hand" - }, - { - -- earth orcish maul replica - itemid = 25958, - type = "deequip", - slot = "hand" - }, - { - -- earth basher replica - itemid = 25957, - type = "equip", - slot = "hand" - }, - { - -- earth basher replica - itemid = 25957, - type = "deequip", - slot = "hand" - }, - { - -- earth crystal mace replica - itemid = 25956, - type = "equip", - slot = "hand" - }, - { - -- earth crystal mace replica - itemid = 25956, - type = "deequip", - slot = "hand" - }, - { - -- earth clerical mace replica - itemid = 25955, - type = "equip", - slot = "hand" - }, - { - -- earth clerical mace replica - itemid = 25955, - type = "deequip", - slot = "hand" - }, - { - -- earth war axe replica - itemid = 25954, - type = "equip", - slot = "hand" - }, - { - -- earth war axe replica - itemid = 25954, - type = "deequip", - slot = "hand" - }, - { - -- earth headchopper replica - itemid = 25953, - type = "equip", - slot = "hand" - }, - { - -- earth headchopper replica - itemid = 25953, - type = "deequip", - slot = "hand" - }, - { - -- earth heroic axe replica - itemid = 25952, - type = "equip", - slot = "hand" - }, - { - -- earth heroic axe replica - itemid = 25952, - type = "deequip", - slot = "hand" - }, - { - -- earth knight axe replica - itemid = 25951, - type = "equip", - slot = "hand" - }, - { - -- earth knight axe replica - itemid = 25951, - type = "deequip", - slot = "hand" - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = "equip", - slot = "hand" - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = "deequip", - slot = "hand" - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = "equip", - slot = "hand" - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = "deequip", - slot = "hand" - }, - { - -- earth blacksteel replica - itemid = 25948, - type = "equip", - slot = "hand" - }, - { - -- earth blacksteel replica - itemid = 25948, - type = "deequip", - slot = "hand" - }, - { - -- earth mystic blade replica - itemid = 25947, - type = "equip", - slot = "hand" - }, - { - -- earth mystic blade replica - itemid = 25947, - type = "deequip", - slot = "hand" - }, - { - -- earth relic sword replica - itemid = 25946, - type = "equip", - slot = "hand" - }, - { - -- earth relic sword replica - itemid = 25946, - type = "deequip", - slot = "hand" - }, - { - -- earth spike sword replica - itemid = 25945, - type = "equip", - slot = "hand" - }, - { - -- earth spike sword replica - itemid = 25945, - type = "deequip", - slot = "hand" - }, - { - -- icy war hammer replica - itemid = 25944, - type = "equip", - slot = "hand" - }, - { - -- icy war hammer replica - itemid = 25944, - type = "deequip", - slot = "hand" - }, - { - -- icy orcish maul replica - itemid = 25943, - type = "equip", - slot = "hand" - }, - { - -- icy orcish maul replica - itemid = 25943, - type = "deequip", - slot = "hand" - }, - { - -- icy basher replica - itemid = 25942, - type = "equip", - slot = "hand" - }, - { - -- icy basher replica - itemid = 25942, - type = "deequip", - slot = "hand" - }, - { - -- icy crystal mace replica - itemid = 25941, - type = "equip", - slot = "hand" - }, - { - -- icy crystal mace replica - itemid = 25941, - type = "deequip", - slot = "hand" - }, - { - -- icy clerical mace replica - itemid = 25940, - type = "equip", - slot = "hand" - }, - { - -- icy clerical mace replica - itemid = 25940, - type = "deequip", - slot = "hand" - }, - { - -- icy war axe replica - itemid = 25939, - type = "equip", - slot = "hand" - }, - { - -- icy war axe replica - itemid = 25939, - type = "deequip", - slot = "hand" - }, - { - -- icy headchopper replica - itemid = 25938, - type = "equip", - slot = "hand" - }, - { - -- icy headchopper replica - itemid = 25938, - type = "deequip", - slot = "hand" - }, - { - -- icy heroic axe replica - itemid = 25937, - type = "equip", - slot = "hand" - }, - { - -- icy heroic axe replica - itemid = 25937, - type = "deequip", - slot = "hand" - }, - { - -- icy knight axe replica - itemid = 25936, - type = "equip", - slot = "hand" - }, - { - -- icy knight axe replica - itemid = 25936, - type = "deequip", - slot = "hand" - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = "equip", - slot = "hand" - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = "deequip", - slot = "hand" - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = "equip", - slot = "hand" - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = "deequip", - slot = "hand" - }, - { - -- icy blacksteel replica - itemid = 25933, - type = "equip", - slot = "hand" - }, - { - -- icy blacksteel replica - itemid = 25933, - type = "deequip", - slot = "hand" - }, - { - -- icy mystic blade replica - itemid = 25932, - type = "equip", - slot = "hand" - }, - { - -- icy mystic blade replica - itemid = 25932, - type = "deequip", - slot = "hand" - }, - { - -- icy relic sword replica - itemid = 25931, - type = "equip", - slot = "hand" - }, - { - -- icy relic sword replica - itemid = 25931, - type = "deequip", - slot = "hand" - }, - { - -- icy spike sword replica - itemid = 25930, - type = "equip", - slot = "hand" - }, - { - -- icy spike sword replica - itemid = 25930, - type = "deequip", - slot = "hand" - }, - { - -- fiery war hammer replica - itemid = 25929, - type = "equip", - slot = "hand" - }, - { - -- fiery war hammer replica - itemid = 25929, - type = "deequip", - slot = "hand" - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = "equip", - slot = "hand" - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = "deequip", - slot = "hand" - }, - { - -- fiery basher replica - itemid = 25927, - type = "equip", - slot = "hand" - }, - { - -- fiery basher replica - itemid = 25927, - type = "deequip", - slot = "hand" - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = "equip", - slot = "hand" - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = "deequip", - slot = "hand" - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = "equip", - slot = "hand" - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = "deequip", - slot = "hand" - }, - { - -- fiery war axe replica - itemid = 25924, - type = "equip", - slot = "hand" - }, - { - -- fiery war axe replica - itemid = 25924, - type = "deequip", - slot = "hand" - }, - { - -- fiery headchopper replica - itemid = 25923, - type = "equip", - slot = "hand" - }, - { - -- fiery headchopper replica - itemid = 25923, - type = "deequip", - slot = "hand" - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = "equip", - slot = "hand" - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = "deequip", - slot = "hand" - }, - { - -- fiery knight axe replica - itemid = 25921, - type = "equip", - slot = "hand" - }, - { - -- fiery knight axe replica - itemid = 25921, - type = "deequip", - slot = "hand" - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = "equip", - slot = "hand" - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = "deequip", - slot = "hand" - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = "equip", - slot = "hand" - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = "deequip", - slot = "hand" - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = "equip", - slot = "hand" - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = "deequip", - slot = "hand" - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = "equip", - slot = "hand" - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = "deequip", - slot = "hand" - }, - { - -- fiery relic sword replica - itemid = 25916, - type = "equip", - slot = "hand" - }, - { - -- fiery relic sword replica - itemid = 25916, - type = "deequip", - slot = "hand" - }, - { - -- fiery spike sword replica - itemid = 25915, - type = "equip", - slot = "hand" - }, - { - -- fiery spike sword replica - itemid = 25915, - type = "deequip", - slot = "hand" - }, - { - -- blossom bag - itemid = 25780, - type = "equip", - slot = "backpack" - }, - { - -- blossom bag - itemid = 25780, - type = "deequip", - slot = "backpack" - }, - { - -- swan feather cloak - itemid = 25779, - type = "equip", - slot = "armor", - level = 60 - }, - { - -- swan feather cloak - itemid = 25779, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- wand of darkness - itemid = 25760, - type = "equip", - slot = "hand", - level = 41, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of darkness - itemid = 25760, - type = "deequip", - slot = "hand", - level = 41 - }, - { - -- royal star - itemid = 25759, - type = "equip", - slot = "hand", - level = 120 - }, - { - -- royal star - itemid = 25759, - type = "deequip", - slot = "hand", - level = 120 - }, - { - -- spectral bolt - itemid = 25758, - type = "equip", - slot = "ammo" - }, - { - -- spectral bolt - itemid = 25758, - type = "deequip", - slot = "ammo" - }, - { - -- leaf star - itemid = 25735, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- leaf star - itemid = 25735, - type = "deequip", - slot = "hand", - level = 60 - }, - { - -- dream blossom staff - itemid = 25700, - type = "equip", - slot = "hand", - level = 80, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- dream blossom staff - itemid = 25700, - type = "deequip", - slot = "hand", - level = 80 - }, - { - -- wooden spellbook - itemid = 25699, - type = "equip", - slot = "shield", - level = 80, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- wooden spellbook - itemid = 25699, - type = "deequip", - slot = "shield", - level = 80 - }, - { - -- butterfly ring - itemid = 25698, - type = "equip", - slot = "ring", - level = 50 - }, - { - -- butterfly ring - itemid = 25698, - type = "deequip", - slot = "ring", - level = 50 - }, - { - -- glowing rubbish amulet - itemid = 25297, - type = "equip", - slot = "necklace" - }, - { - -- glowing rubbish amulet - itemid = 25297, - type = "deequip", - slot = "necklace" - }, - { - -- rubbish amulet - itemid = 25296, - type = "equip", - slot = "necklace" - }, - { - -- rubbish amulet - itemid = 25296, - type = "deequip", - slot = "necklace" - }, - { - -- porcelain mask - itemid = 25088, - type = "equip", - slot = "head" - }, - { - -- porcelain mask - itemid = 25088, - type = "deequip", - slot = "head" - }, - { - -- filthy bunnyslippers - itemid = 24409, - type = "equip", - slot = "feet" - }, - { - -- filthy bunnyslippers - itemid = 24409, - type = "deequip", - slot = "feet" - }, - { - -- rusty winged helmet - itemid = 24405, - type = "equip", - slot = "head" - }, - { - -- rusty winged helmet - itemid = 24405, - type = "deequip", - slot = "head" - }, - { - -- tatty Dragon scale legs - itemid = 24404, - type = "equip", - slot = "legs" - }, - { - -- tatty Dragon scale legs - itemid = 24404, - type = "deequip", - slot = "legs" - }, - { - -- chocolatey dragon scale legs - itemid = 24402, - type = "equip", - slot = "legs" - }, - { - -- chocolatey dragon scale legs - itemid = 24402, - type = "deequip", - slot = "legs" - }, - { - -- Ferumbras' Candy Hat - itemid = 24397, - type = "equip", - slot = "head" - }, - { - -- Ferumbras' Candy Hat - itemid = 24397, - type = "deequip", - slot = "head" - }, - { - -- birthday backpack - itemid = 24395, - type = "equip", - slot = "backpack" - }, - { - -- birthday backpack - itemid = 24395, - type = "deequip", - slot = "backpack" - }, - { - -- pillow backpack - itemid = 24393, - type = "equip", - slot = "backpack" - }, - { - -- pillow backpack - itemid = 24393, - type = "deequip", - slot = "backpack" - }, - { - -- collar of red plasma - itemid = 23544, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- collar of red plasma - itemid = 23544, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- collar of green plasma - itemid = 23543, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- collar of green plasma - itemid = 23543, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- collar of blue plasma - itemid = 23542, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- collar of blue plasma - itemid = 23542, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- ring of red plasma - itemid = 23534, - type = "equip", - slot = "ring", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ring of red plasma - itemid = 23534, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- ring of red plasma - itemid = 23533, - type = "equip", - slot = "ring", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ring of red plasma - itemid = 23533, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- ring of green plasma - itemid = 23532, - type = "equip", - slot = "ring", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- ring of green plasma - itemid = 23532, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- ring of green plasma - itemid = 23531, - type = "equip", - slot = "ring", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- ring of green plasma - itemid = 23531, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- ring of blue plasma - itemid = 23530, - type = "equip", - slot = "ring", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ring of blue plasma - itemid = 23530, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- ring of blue plasma - itemid = 23529, - type = "equip", - slot = "ring", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ring of blue plasma - itemid = 23529, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- collar of red plasma - itemid = 23528, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- collar of red plasma - itemid = 23528, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- collar of green plasma - itemid = 23527, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- collar of green plasma - itemid = 23527, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- collar of blue plasma - itemid = 23526, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- collar of blue plasma - itemid = 23526, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- energetic backpack - itemid = 23525, - type = "equip", - slot = "backpack" - }, - { - -- energetic backpack - itemid = 23525, - type = "deequip", - slot = "backpack" - }, - { - -- void boots - itemid = 23477, - type = "equip", - slot = "feet", - level = 150 - }, - { - -- void boots - itemid = 23477, - type = "deequip", - slot = "feet", - level = 150 - }, - { - -- void boots - itemid = 23476, - type = "equip", - slot = "feet", - level = 150 - }, - { - -- void boots - itemid = 23476, - type = "deequip", - slot = "feet", - level = 150 - }, - { - -- tiara of power - itemid = 23475, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- tiara of power - itemid = 23475, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- tiara of power - itemid = 23474, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- tiara of power - itemid = 23474, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- rod of carving - itemid = 23339, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- rod of carving - itemid = 23339, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- wand of carving - itemid = 23335, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of carving - itemid = 23335, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- crossbow of carving - itemid = 23331, - type = "equip", - slot = "hand" - }, - { - -- crossbow of carving - itemid = 23331, - type = "deequip", - slot = "hand" - }, - { - -- bow of carving - itemid = 23327, - type = "equip", - slot = "hand" - }, - { - -- bow of carving - itemid = 23327, - type = "deequip", - slot = "hand" - }, - { - -- hammer of carving - itemid = 23323, - type = "equip", - slot = "hand" - }, - { - -- hammer of carving - itemid = 23323, - type = "deequip", - slot = "hand" - }, - { - -- mace of carving - itemid = 23319, - type = "equip", - slot = "hand" - }, - { - -- mace of carving - itemid = 23319, - type = "deequip", - slot = "hand" - }, - { - -- chopper of carving - itemid = 23315, - type = "equip", - slot = "hand" - }, - { - -- chopper of carving - itemid = 23315, - type = "deequip", - slot = "hand" - }, - { - -- axe of carving - itemid = 23311, - type = "equip", - slot = "hand" - }, - { - -- axe of carving - itemid = 23311, - type = "deequip", - slot = "hand" - }, - { - -- slayer of carving - itemid = 23307, - type = "equip", - slot = "hand" - }, - { - -- slayer of carving - itemid = 23307, - type = "deequip", - slot = "hand" - }, - { - -- blade of carving - itemid = 23303, - type = "equip", - slot = "hand" - }, - { - -- blade of carving - itemid = 23303, - type = "deequip", - slot = "hand" - }, - { - -- rod of remedy - itemid = 23299, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- rod of remedy - itemid = 23299, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- wand of remedy - itemid = 23295, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of remedy - itemid = 23295, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- crossbow of remedy - itemid = 23291, - type = "equip", - slot = "hand" - }, - { - -- crossbow of remedy - itemid = 23291, - type = "deequip", - slot = "hand" - }, - { - -- bow of remedy - itemid = 23287, - type = "equip", - slot = "hand" - }, - { - -- bow of remedy - itemid = 23287, - type = "deequip", - slot = "hand" - }, - { - -- mace of remedy - itemid = 23279, - type = "equip", - slot = "hand" - }, - { - -- mace of remedy - itemid = 23279, - type = "deequip", - slot = "hand" - }, - { - -- chopper of remedy - itemid = 23275, - type = "equip", - slot = "hand" - }, - { - -- chopper of remedy - itemid = 23275, - type = "deequip", - slot = "hand" - }, - { - -- axe of remedy - itemid = 23271, - type = "equip", - slot = "hand" - }, - { - -- axe of remedy - itemid = 23271, - type = "deequip", - slot = "hand" - }, - { - -- slayer of remedy - itemid = 23267, - type = "equip", - slot = "hand" - }, - { - -- slayer of remedy - itemid = 23267, - type = "deequip", - slot = "hand" - }, - { - -- blade of remedy - itemid = 23263, - type = "equip", - slot = "hand" - }, - { - -- blade of remedy - itemid = 23263, - type = "deequip", - slot = "hand" - }, - { - -- rod of mayhem - itemid = 23232, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- rod of mayhem - itemid = 23232, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- wand of mayhem - itemid = 23231, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of mayhem - itemid = 23231, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- crossbow of mayhem - itemid = 23230, - type = "equip", - slot = "hand" - }, - { - -- crossbow of mayhem - itemid = 23230, - type = "deequip", - slot = "hand" - }, - { - -- bow of mayhem - itemid = 23229, - type = "equip", - slot = "hand" - }, - { - -- bow of mayhem - itemid = 23229, - type = "deequip", - slot = "hand" - }, - { - -- hammer of mayhem - itemid = 23228, - type = "equip", - slot = "hand" - }, - { - -- hammer of mayhem - itemid = 23228, - type = "deequip", - slot = "hand" - }, - { - -- mace of mayhem - itemid = 23227, - type = "equip", - slot = "hand" - }, - { - -- mace of mayhem - itemid = 23227, - type = "deequip", - slot = "hand" - }, - { - -- chopper of mayhem - itemid = 23226, - type = "equip", - slot = "hand" - }, - { - -- chopper of mayhem - itemid = 23226, - type = "deequip", - slot = "hand" - }, - { - -- axe of mayhem - itemid = 23225, - type = "equip", - slot = "hand" - }, - { - -- axe of mayhem - itemid = 23225, - type = "deequip", - slot = "hand" - }, - { - -- slayer of mayhem - itemid = 23224, - type = "equip", - slot = "hand" - }, - { - -- slayer of mayhem - itemid = 23224, - type = "deequip", - slot = "hand" - }, - { - -- blade of mayhem - itemid = 23223, - type = "equip", - slot = "hand" - }, - { - -- blade of mayhem - itemid = 23223, - type = "deequip", - slot = "hand" - }, - { - -- shield of destiny - itemid = 22890, - type = "equip", - slot = "shield" - }, - { - -- shield of destiny - itemid = 22890, - type = "deequip", - slot = "shield" - }, - { - -- shield of destiny - itemid = 22889, - type = "equip", - slot = "shield" - }, - { - -- shield of destiny - itemid = 22889, - type = "deequip", - slot = "shield" - }, - { - -- rift crossbow - itemid = 22867, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- rift crossbow - itemid = 22867, - type = "deequip", - slot = "hand" - }, - { - -- rift bow - itemid = 22866, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- rift bow - itemid = 22866, - type = "deequip", - slot = "hand" - }, - { - -- boots of homecoming - itemid = 22774, - type = "equip", - slot = "feet", - level = 100 - }, - { - -- boots of homecoming - itemid = 22774, - type = "deequip", - slot = "feet", - level = 100 - }, - { - -- boots of homecoming - itemid = 22773, - type = "equip", - slot = "feet", - level = 100 - }, - { - -- boots of homecoming - itemid = 22773, - type = "deequip", - slot = "feet", - level = 100 - }, - { - -- ferumbras' amulet - itemid = 22768, - type = "equip", - slot = "necklace", - level = 100 - }, - { - -- ferumbras' amulet - itemid = 22768, - type = "deequip", - slot = "necklace", - level = 100 - }, - { - -- ferumbras' amulet - itemid = 22767, - type = "equip", - slot = "necklace", - level = 100 - }, - { - -- ferumbras' amulet - itemid = 22767, - type = "deequip", - slot = "necklace", - level = 100 - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = "deequip", - slot = "hand", - level = 100 - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = "deequip", - slot = "hand", - level = 65 - }, - { - -- Ferumbras' staff (club) - itemid = 22764, - type = "equip", - slot = "hand", - level = 100 - }, - { - -- Ferumbras' staff (club) - itemid = 22764, - type = "deequip", - slot = "hand" - }, - { - -- maimer - itemid = 22762, - type = "equip", - slot = "hand", - level = 150 - }, - { - -- maimer - itemid = 22762, - type = "deequip", - slot = "hand" - }, - { - -- Impaler of the igniter - itemid = 22760, - type = "equip", - slot = "hand", - level = 150 - }, - { - -- Impaler of the igniter - itemid = 22760, - type = "deequip", - slot = "hand" - }, - { - -- plague bite - itemid = 22759, - type = "equip", - slot = "hand", - level = 150 - }, - { - -- plague bite - itemid = 22759, - type = "deequip", - slot = "hand" - }, - { - -- death gaze - itemid = 22758, - type = "equip", - slot = "shield", - level = 200 - }, - { - -- death gaze - itemid = 22758, - type = "deequip", - slot = "shield", - level = 200 - }, - { - -- shroud of despair - itemid = 22757, - type = "equip", - slot = "head", - level = 150 - }, - { - -- shroud of despair - itemid = 22757, - type = "deequip", - slot = "head", - level = 150 - }, - { - -- treader of torment - itemid = 22756, - type = "equip", - slot = "feet" - }, - { - -- treader of torment - itemid = 22756, - type = "deequip", - slot = "feet" - }, - { - -- book of lies - itemid = 22755, - type = "equip", - slot = "shield", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- book of lies - itemid = 22755, - type = "deequip", - slot = "shield", - level = 150 - }, - { - -- visage of the end days - itemid = 22754, - type = "equip", - slot = "head" - }, - { - -- visage of the end days - itemid = 22754, - type = "deequip", - slot = "head" - }, - { - -- ancient amulet - itemid = 22746, - type = "equip", - slot = "necklace" - }, - { - -- ancient amulet - itemid = 22746, - type = "deequip", - slot = "necklace" - }, - { - -- rift lance - itemid = 22727, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- rift lance - itemid = 22727, - type = "deequip", - slot = "hand" - }, - { - -- rift shield - itemid = 22726, - type = "equip", - slot = "shield" - }, - { - -- rift shield - itemid = 22726, - type = "deequip", - slot = "shield" - }, - { - -- rattling gourd - itemid = 22651, - type = "equip", - slot = "shield" - }, - { - -- rattling gourd - itemid = 22651, - type = "deequip", - slot = "shield" - }, - { - -- gourd - itemid = 22650, - type = "equip", - slot = "shield" - }, - { - -- gourd - itemid = 22650, - type = "deequip", - slot = "shield" - }, - { - -- frostmind raiment - itemid = 22537, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- frostmind raiment - itemid = 22537, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- thundermind raiment - itemid = 22536, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- thundermind raiment - itemid = 22536, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- earthmind raiment - itemid = 22535, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- earthmind raiment - itemid = 22535, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- firemind raiment - itemid = 22534, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- firemind raiment - itemid = 22534, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- frostsoul tabard - itemid = 22533, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- frostsoul tabard - itemid = 22533, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- thundersoul tabard - itemid = 22532, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- thundersoul tabard - itemid = 22532, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- earthsoul tabard - itemid = 22531, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- earthsoul tabard - itemid = 22531, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- firesoul tabard - itemid = 22530, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- firesoul tabard - itemid = 22530, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- frostheart platemail - itemid = 22529, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- frostheart platemail - itemid = 22529, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- frostheart hauberk - itemid = 22528, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- frostheart hauberk - itemid = 22528, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- frostheart cuirass - itemid = 22527, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- frostheart cuirass - itemid = 22527, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- thunderheart platemail - itemid = 22526, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- thunderheart platemail - itemid = 22526, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- thunderheart hauberk - itemid = 22525, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- thunderheart hauberk - itemid = 22525, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- thunderheart cuirass - itemid = 22524, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- thunderheart cuirass - itemid = 22524, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- earthheart platemail - itemid = 22523, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earthheart platemail - itemid = 22523, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- earthheart hauberk - itemid = 22522, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earthheart hauberk - itemid = 22522, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- earthheart cuirass - itemid = 22521, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earthheart cuirass - itemid = 22521, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- fireheart platemail - itemid = 22520, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fireheart platemail - itemid = 22520, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- fireheart hauberk - itemid = 22519, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fireheart hauberk - itemid = 22519, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- fireheart cuirass - itemid = 22518, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fireheart cuirass - itemid = 22518, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- onyx pendant - itemid = 22195, - type = "equip", - slot = "necklace", - level = 60 - }, - { - -- onyx pendant - itemid = 22195, - type = "deequip", - slot = "necklace", - level = 60 - }, - { - -- shamanic mask - itemid = 22192, - type = "equip", - slot = "head" - }, - { - -- shamanic mask - itemid = 22192, - type = "deequip", - slot = "head" - }, - { - -- painted gourd rattle - itemid = 22190, - type = "equip", - slot = "shield" - }, - { - -- painted gourd rattle - itemid = 22190, - type = "deequip", - slot = "shield" - }, - { - -- ogre scepta - itemid = 22183, - type = "equip", - slot = "hand", - level = 37, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- ogre scepta - itemid = 22183, - type = "deequip", - slot = "hand", - level = 37 - }, - { - -- ogre choppa - itemid = 22172, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- ogre choppa - itemid = 22172, - type = "deequip", - slot = "hand" - }, - { - -- ogre klubba - itemid = 22171, - type = "equip", - slot = "hand", - level = 50 - }, - { - -- ogre klubba - itemid = 22171, - type = "deequip", - slot = "hand" - }, - { - -- house silversun's signet ring - itemid = 22170, - type = "equip", - slot = "ring" - }, - { - -- house silversun's signet ring - itemid = 22170, - type = "deequip", - slot = "ring" - }, - { - -- dark wizard's crown - itemid = 22154, - type = "equip", - slot = "head" - }, - { - -- dark wizard's crown - itemid = 22154, - type = "deequip", - slot = "head" - }, - { - -- dark wizard's crown - itemid = 22153, - type = "equip", - slot = "head" - }, - { - -- dark wizard's crown - itemid = 22153, - type = "deequip", - slot = "head" - }, - { - -- enchanted werewolf amulet - itemid = 22134, - type = "equip", - slot = "necklace" - }, - { - -- enchanted werewolf amulet - itemid = 22134, - type = "deequip", - slot = "necklace" - }, - { - -- enchanted werewolf helmet - sword - itemid = 22132, - type = "equip", - slot = "necklace", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- enchanted werewolf helmet - sword - itemid = 22132, - type = "deequip", - slot = "necklace", - level = 100 - }, - { - -- enchanted werewolf helmet - ml - itemid = 22130, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- enchanted werewolf helmet - ml - itemid = 22130, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- enchanted werewolf helmet - distance - itemid = 22129, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- enchanted werewolf helmet - distance - itemid = 22129, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- enchanted werewolf helmet - club - itemid = 22128, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- enchanted werewolf helmet - club - itemid = 22128, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- enchanted werewolf helmet - axe - itemid = 22127, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- enchanted werewolf helmet - axe - itemid = 22127, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- wereboar loincloth - itemid = 22087, - type = "equip", - slot = "legs" - }, - { - -- wereboar loincloth - itemid = 22087, - type = "deequip", - slot = "legs" - }, - { - -- badger boots - itemid = 22086, - type = "equip", - slot = "feet", - level = 60 - }, - { - -- badger boots - itemid = 22086, - type = "deequip", - slot = "feet", - level = 60 - }, - { - -- fur armor - itemid = 22085, - type = "equip", - slot = "armor", - level = 50 - }, - { - -- fur armor - itemid = 22085, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- wolf backpack - itemid = 22084, - type = "equip", - slot = "backpack" - }, - { - -- wolf backpack - itemid = 22084, - type = "deequip", - slot = "backpack" - }, - { - -- werewolf helmet - itemid = 22062, - type = "equip", - slot = "head", - level = 100 - }, - { - -- werewolf helmet - itemid = 22062, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- enchanted werewolf amulet - itemid = 22061, - type = "equip", - slot = "necklace" - }, - { - -- enchanted werewolf amulet - itemid = 22061, - type = "deequip", - slot = "necklace" - }, - { - -- werewolf amulet - itemid = 22060, - type = "equip", - slot = "necklace" - }, - { - -- werewolf amulet - itemid = 22060, - type = "deequip", - slot = "necklace" - }, - { - -- oriental shoes - itemid = 21981, - type = "equip", - slot = "feet", - level = 80, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- oriental shoes - itemid = 21981, - type = "deequip", - slot = "feet", - level = 80 - }, - { - -- sweetheart ring - itemid = 21955, - type = "equip", - slot = "ring" - }, - { - -- sweetheart ring - itemid = 21955, - type = "deequip", - slot = "ring" - }, - { - -- crest of the deep seas - itemid = 21892, - type = "equip", - slot = "head", - level = 80 - }, - { - -- crest of the deep seas - itemid = 21892, - type = "deequip", - slot = "head", - level = 80 - }, - { - -- brandon's wedding ring - itemid = 21745, - type = "equip", - slot = "ring" - }, - { - -- brandon's wedding ring - itemid = 21745, - type = "deequip", - slot = "ring" - }, - { - -- simple arrow - itemid = 21470, - type = "equip", - slot = "ammo" - }, - { - -- simple arrow - itemid = 21470, - type = "deequip", - slot = "ammo" - }, - { - -- war backpack - itemid = 21445, - type = "equip", - slot = "backpack" - }, - { - -- war backpack - itemid = 21445, - type = "deequip", - slot = "backpack" - }, - { - -- the Lion's Heart - itemid = 21439, - type = "equip", - slot = "necklace" - }, - { - -- the Lion's Heart - itemid = 21439, - type = "deequip", - slot = "necklace" - }, - { - -- shopping bag - itemid = 21411, - type = "equip", - slot = "backpack" - }, - { - -- shopping bag - itemid = 21411, - type = "deequip", - slot = "backpack" - }, - { - -- broken wooden shield - itemid = 21401, - type = "equip", - slot = "shield" - }, - { - -- broken wooden shield - itemid = 21401, - type = "deequip", - slot = "shield" - }, - { - -- spellbook of the novice - itemid = 21400, - type = "equip", - slot = "shield", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of the novice - itemid = 21400, - type = "deequip", - slot = "shield" - }, - { - -- the chiller - itemid = 21350, - type = "equip", - slot = "hand", - level = 1, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- the chiller - itemid = 21350, - type = "deequip", - slot = "hand", - level = 1 - }, - { - -- the scorcher - itemid = 21348, - type = "equip", - slot = "hand", - level = 1, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- the scorcher - itemid = 21348, - type = "deequip", - slot = "hand", - level = 1 - }, - { - -- glooth backpack - itemid = 21295, - type = "equip", - slot = "backpack" - }, - { - -- glooth backpack - itemid = 21295, - type = "deequip", - slot = "backpack" - }, - { - -- feedbag - itemid = 21292, - type = "equip", - slot = "backpack" - }, - { - -- feedbag - itemid = 21292, - type = "deequip", - slot = "backpack" - }, - { - -- one hit wonder - itemid = 21219, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- one hit wonder - itemid = 21219, - type = "deequip", - slot = "hand" - }, - { - -- glooth amulet - itemid = 21183, - type = "equip", - slot = "necklace", - level = 75, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- glooth amulet - itemid = 21183, - type = "deequip", - slot = "necklace", - level = 75 - }, - { - -- glooth axe - itemid = 21180, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- glooth axe - itemid = 21180, - type = "deequip", - slot = "hand" - }, - { - -- glooth blade - itemid = 21179, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- glooth blade - itemid = 21179, - type = "deequip", - slot = "hand" - }, - { - -- glooth club - itemid = 21178, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- glooth club - itemid = 21178, - type = "deequip", - slot = "hand" - }, - { - -- cowtana - itemid = 21177, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- cowtana - itemid = 21177, - type = "deequip", - slot = "hand", - level = 25 - }, - { - -- execowtioner axe - itemid = 21176, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- execowtioner axe - itemid = 21176, - type = "deequip", - slot = "hand" - }, - { - -- mino shield - itemid = 21175, - type = "equip", - slot = "shield" - }, - { - -- mino shield - itemid = 21175, - type = "deequip", - slot = "shield" - }, - { - -- mino lance - itemid = 21174, - type = "equip", - slot = "hand", - level = 45 - }, - { - -- mino lance - itemid = 21174, - type = "deequip", - slot = "hand" - }, - { - -- moohtant cudgel - itemid = 21173, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- moohtant cudgel - itemid = 21173, - type = "deequip", - slot = "hand" - }, - { - -- glooth whip - itemid = 21172, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- glooth whip - itemid = 21172, - type = "deequip", - slot = "hand" - }, - { - -- metal bat - itemid = 21171, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- metal bat - itemid = 21171, - type = "deequip", - slot = "hand" - }, - { - -- gearwheel chain - itemid = 21170, - type = "equip", - slot = "necklace", - level = 75 - }, - { - -- gearwheel chain - itemid = 21170, - type = "deequip", - slot = "necklace", - level = 75 - }, - { - -- metal spats - itemid = 21169, - type = "equip", - slot = "feet", - level = 50, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- metal spats - itemid = 21169, - type = "deequip", - slot = "feet", - level = 50 - }, - { - -- alloy legs - itemid = 21168, - type = "equip", - slot = "legs", - level = 60 - }, - { - -- alloy legs - itemid = 21168, - type = "deequip", - slot = "legs", - level = 60 - }, - { - -- heat core - itemid = 21167, - type = "equip", - slot = "armor" - }, - { - -- heat core - itemid = 21167, - type = "deequip", - slot = "armor" - }, - { - -- mooh'tah plate - itemid = 21166, - type = "equip", - slot = "armor", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- mooh'tah plate - itemid = 21166, - type = "deequip", - slot = "armor" - }, - { - -- rubber cap - itemid = 21165, - type = "equip", - slot = "head", - level = 70, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- rubber cap - itemid = 21165, - type = "deequip", - slot = "head", - level = 70 - }, - { - -- glooth cape - itemid = 21164, - type = "equip", - slot = "armor", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- glooth cape - itemid = 21164, - type = "deequip", - slot = "armor", - level = 40 - }, - { - -- glooth spear - itemid = 21158, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- glooth spear - itemid = 21158, - type = "deequip", - slot = "hand", - level = 60 - }, - { - -- cake backpack - itemid = 20347, - type = "equip", - slot = "backpack" - }, - { - -- cake backpack - itemid = 20347, - type = "deequip", - slot = "backpack" - }, - { - -- unstable ring of ending - itemid = 20209, - type = "equip", - slot = "ring" - }, - { - -- unstable ring of ending - itemid = 20209, - type = "deequip", - slot = "ring" - }, - { - -- broken visor - itemid = 20184, - type = "equip", - slot = "head" - }, - { - -- broken visor - itemid = 20184, - type = "deequip", - slot = "head" - }, - { - -- ring of ending - itemid = 20182, - type = "equip", - slot = "ring", - level = 200 - }, - { - -- ring of ending - itemid = 20182, - type = "deequip", - slot = "ring", - level = 200 - }, - { - -- eerie song book - itemid = 20140, - type = "equip", - slot = "shield" - }, - { - -- eerie song book - itemid = 20140, - type = "deequip", - slot = "shield" - }, - { - -- umbral master spellbook - itemid = 20090, - type = "equip", - slot = "shield", - level = 250, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- umbral master spellbook - itemid = 20090, - type = "deequip", - slot = "shield", - level = 250 - }, - { - -- umbral spellbook - itemid = 20089, - type = "equip", - slot = "shield", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- umbral spellbook - itemid = 20089, - type = "deequip", - slot = "shield", - level = 150 - }, - { - -- crude umbral spellbook - itemid = 20088, - type = "equip", - slot = "shield", - level = 75, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- crude umbral spellbook - itemid = 20088, - type = "deequip", - slot = "shield", - level = 75 - }, - { - -- umbral master crossbow - itemid = 20087, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral master crossbow - itemid = 20087, - type = "deequip", - slot = "hand" - }, - { - -- umbral crossbow - itemid = 20086, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral crossbow - itemid = 20086, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral crossbow - itemid = 20085, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crude umbral crossbow - itemid = 20085, - type = "deequip", - slot = "hand" - }, - { - -- umbral master bow - itemid = 20084, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral master bow - itemid = 20084, - type = "deequip", - slot = "hand" - }, - { - -- umbral bow - itemid = 20083, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral bow - itemid = 20083, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral bow - itemid = 20082, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crude umbral bow - itemid = 20082, - type = "deequip", - slot = "hand" - }, - { - -- umbral master hammer - itemid = 20081, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master hammer - itemid = 20081, - type = "deequip", - slot = "hand" - }, - { - -- umbral hammer - itemid = 20080, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral hammer - itemid = 20080, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral hammer - itemid = 20079, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral hammer - itemid = 20079, - type = "deequip", - slot = "hand" - }, - { - -- umbral master mace - itemid = 20078, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master mace - itemid = 20078, - type = "deequip", - slot = "hand" - }, - { - -- umbral mace - itemid = 20077, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral mace - itemid = 20077, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral mace - itemid = 20076, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral mace - itemid = 20076, - type = "deequip", - slot = "hand" - }, - { - -- umbral master chopper - itemid = 20075, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master chopper - itemid = 20075, - type = "deequip", - slot = "hand" - }, - { - -- umbral chopper - itemid = 20074, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral chopper - itemid = 20074, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral chopper - itemid = 20073, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral chopper - itemid = 20073, - type = "deequip", - slot = "hand" - }, - { - -- umbral master axe - itemid = 20072, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - - }, - { - -- umbral master axe - itemid = 20072, - type = "deequip", - slot = "hand" - }, - { - -- umbral axe - itemid = 20071, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral axe - itemid = 20071, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral axe - itemid = 20070, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral axe - itemid = 20070, - type = "deequip", - slot = "hand" - }, - { - -- umbral master slayer - itemid = 20069, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master slayer - itemid = 20069, - type = "deequip", - slot = "hand" - }, - { - -- umbral slayer - itemid = 20068, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral slayer - itemid = 20068, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral slayer - itemid = 20067, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral slayer - itemid = 20067, - type = "deequip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral masterblade - itemid = 20066, - type = "equip", - slot = "hand", - level = 250, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral masterblade - itemid = 20066, - type = "deequip", - slot = "hand" - }, - { - -- umbral blade - itemid = 20065, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral blade - itemid = 20065, - type = "deequip", - slot = "hand" - }, - { - -- crude umbral blade - itemid = 20064, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral blade - itemid = 20064, - type = "deequip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- strange good night songs - itemid = 20050, - type = "equip", - slot = "shield" - }, - { - -- strange good night songs - itemid = 20050, - type = "deequip", - slot = "shield" - }, - { - -- furious frock - itemid = 19391, - type = "equip", - slot = "armor", - level = 130, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- furious frock - itemid = 19391, - type = "deequip", - slot = "armor", - level = 130 - }, - { - -- vampire silk slippers - itemid = 19374, - type = "equip", - slot = "feet" - }, - { - -- vampire silk slippers - itemid = 19374, - type = "deequip", - slot = "feet" - }, - { - -- haunted mirror piece - itemid = 19373, - type = "equip", - slot = "shield" - }, - { - -- haunted mirror piece - itemid = 19373, - type = "deequip", - slot = "shield" - }, - { - -- goo shell - itemid = 19372, - type = "equip", - slot = "armor" - }, - { - -- goo shell - itemid = 19372, - type = "deequip", - slot = "armor" - }, - { - -- icy culottes - itemid = 19366, - type = "equip", - slot = "legs", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- icy culottes - itemid = 19366, - type = "deequip", - slot = "legs" - }, - { - -- runic ice shield - itemid = 19363, - type = "equip", - slot = "shield" - }, - { - -- runic ice shield - itemid = 19363, - type = "deequip", - slot = "shield" - }, - { - -- icicle bow - itemid = 19362, - type = "equip", - slot = "hand" - }, - { - -- icicle bow - itemid = 19362, - type = "deequip", - slot = "hand" - }, - { - -- horn - itemid = 19359, - type = "equip", - slot = "ring" - }, - { - -- horn - itemid = 19359, - type = "deequip", - slot = "ring" - }, - { - -- albino plate - itemid = 19358, - type = "equip", - slot = "armor" - }, - { - -- albino plate - itemid = 19358, - type = "deequip", - slot = "armor" - }, - { - -- shrunken head necklace - itemid = 19357, - type = "equip", - slot = "necklace", - level = 150 - }, - { - -- shrunken head necklace - itemid = 19357, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- triple bolt crossbow - itemid = 19356, - type = "equip", - slot = "hand", - level = 70, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- triple bolt crossbow - itemid = 19356, - type = "deequip", - slot = "hand" - }, - { - -- pannier backpack - itemid = 19159, - type = "equip", - slot = "backpack" - }, - { - -- pannier backpack - itemid = 19159, - type = "deequip", - slot = "backpack" - }, - { - -- friendship amulet - itemid = 19153, - type = "equip", - slot = "necklace" - }, - { - -- friendship amulet - itemid = 19153, - type = "deequip", - slot = "necklace" - }, - { - -- vampire's signet ring - itemid = 18935, - type = "equip", - slot = "ring" - }, - { - -- vampire's signet ring - itemid = 18935, - type = "deequip", - slot = "ring" - }, - { - -- spiky club - itemid = 17859, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- spiky club - itemid = 17859, - type = "deequip", - slot = "hand" - }, - { - -- helmet of the lost - itemid = 17852, - type = "equip", - slot = "head" - }, - { - -- helmet of the lost - itemid = 17852, - type = "deequip", - slot = "head" - }, - { - -- leather harness - itemid = 17846, - type = "equip", - slot = "armor" - }, - { - -- leather harness - itemid = 17846, - type = "deequip", - slot = "armor" - }, - { - -- buckle - itemid = 17829, - type = "equip", - slot = "armor" - }, - { - -- buckle - itemid = 17829, - type = "deequip", - slot = "armor" - }, - { - -- pair of iron fists - itemid = 17828, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- pair of iron fists - itemid = 17828, - type = "deequip", - slot = "hand" - }, - { - -- swampling club - itemid = 17824, - type = "equip", - slot = "hand" - }, - { - -- swampling club - itemid = 17824, - type = "deequip", - slot = "hand" - }, - { - -- life preserver - itemid = 17813, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- life preserver - itemid = 17813, - type = "deequip", - slot = "hand" - }, - { - -- ratana - itemid = 17812, - type = "equip", - slot = "hand", - level = 15 - }, - { - -- ratana - itemid = 17812, - type = "deequip", - slot = "hand" - }, - { - -- spike shield - itemid = 17810, - type = "equip", - slot = "shield" - }, - { - -- spike shield - itemid = 17810, - type = "deequip", - slot = "shield" - }, - { - -- sorc and druid staff - itemid = 17111, - type = "equip", - slot = "hand", - level = 1, - vocation = { - {"None", true} - } - }, - { - -- sorc and druid staff - itemid = 17111, - type = "deequip", - slot = "hand", - level = 1 - }, - { - -- mean paladin spear - itemid = 17110, - type = "equip", - slot = "hand", - vocation = { - {"None", true} - } - }, - { - -- mean paladin spear - itemid = 17110, - type = "deequip", - slot = "hand", - vocation = { - {"None", true} - } - }, - { - -- mean knight sword - itemid = 17109, - type = "equip", - slot = "hand", - vocation = { - {"None", true} - } - }, - { - -- mean knight sword - itemid = 17109, - type = "deequip", - slot = "hand" - }, - { - -- prismatic ring - itemid = 16264, - type = "equip", - slot = "ring", - level = 120 - }, - { - -- prismatic ring - itemid = 16264, - type = "deequip", - slot = "ring", - level = 120 - }, - { - -- shiny blade - itemid = 16175, - type = "equip", - slot = "hand", - level = 120 - }, - { - -- shiny blade - itemid = 16175, - type = "deequip", - slot = "hand" - }, - { - -- mycological bow - itemid = 16164, - type = "equip", - slot = "hand", - level = 105, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- mycological bow - itemid = 16164, - type = "deequip", - slot = "hand" - }, - { - -- crystal crossbow - itemid = 16163, - type = "equip", - slot = "hand", - level = 90, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crystal crossbow - itemid = 16163, - type = "deequip", - slot = "hand" - }, - { - -- mycological mace - itemid = 16162, - type = "equip", - slot = "hand", - level = 120 - - }, - { - -- mycological mace - itemid = 16162, - type = "deequip", - slot = "hand" - }, - { - -- crystalline axe - itemid = 16161, - type = "equip", - slot = "hand", - level = 120 - }, - { - -- crystalline axe - itemid = 16161, - type = "deequip", - slot = "hand" - }, - { - -- crystalline sword - itemid = 16160, - type = "equip", - slot = "hand", - level = 62 - }, - { - -- crystalline sword - itemid = 16160, - type = "deequip", - slot = "hand" - }, - { - -- envenomed arrow - itemid = 16143, - type = "equip", - slot = "ammo" - }, - { - -- envenomed arrow - itemid = 16143, - type = "deequip", - slot = "ammo" - }, - { - -- drill bolt - itemid = 16142, - type = "equip", - slot = "ammo" - }, - { - -- drill bolt - itemid = 16142, - type = "deequip", - slot = "ammo" - }, - { - -- prismatic bolt - itemid = 16141, - type = "equip", - slot = "ammo" - }, - { - -- prismatic bolt - itemid = 16141, - type = "deequip", - slot = "ammo" - }, - { - -- glacial rod - itemid = 16118, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- glacial rod - itemid = 16118, - type = "deequip", - slot = "hand", - level = 65 - }, - { - -- muck rod - itemid = 16117, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- muck rod - itemid = 16117, - type = "deequip", - slot = "hand", - level = 65 - }, - { - -- prismatic shield - itemid = 16116, - type = "equip", - slot = "shield", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- prismatic shield - itemid = 16116, - type = "deequip", - slot = "shield", - level = 150 - }, - { - -- wand of everblazing - itemid = 16115, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of everblazing - itemid = 16115, - type = "deequip", - slot = "hand", - level = 65 - }, - { - -- prismatic ring - itemid = 16114, - type = "equip", - slot = "ring", - level = 120 - }, - { - -- prismatic ring - itemid = 16114, - type = "deequip", - slot = "ring", - level = 120 - }, - { - -- prismatic necklace - itemid = 16113, - type = "equip", - slot = "necklace", - level = 150 - }, - { - -- prismatic necklace - itemid = 16113, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- prismatic boots - itemid = 16112, - type = "equip", - slot = "feet", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- prismatic boots - itemid = 16112, - type = "deequip", - slot = "feet", - level = 150 - }, - { - -- prismatic legs - itemid = 16111, - type = "equip", - slot = "legs", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- prismatic legs - itemid = 16111, - type = "deequip", - slot = "legs", - level = 150 - }, - { - -- prismatic armor - itemid = 16110, - type = "equip", - slot = "armor", - level = 120, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- prismatic armor - itemid = 16110, - type = "deequip", - slot = "armor", - level = 120 - }, - { - -- prismatic helmet - itemid = 16109, - type = "equip", - slot = "head", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- prismatic helmet - itemid = 16109, - type = "deequip", - slot = "head", - level = 150 - }, - { - -- gill necklace - itemid = 16108, - type = "equip", - slot = "necklace", - level = 150 - }, - { - -- gill necklace - itemid = 16108, - type = "deequip", - slot = "necklace", - level = 150 - }, - { - -- spellbook of vigilance - itemid = 16107, - type = "equip", - slot = "shield", - level = 130, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of vigilance - itemid = 16107, - type = "deequip", - slot = "shield", - level = 130 - }, - { - -- gill legs - itemid = 16106, - type = "equip", - slot = "legs", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- gill legs - itemid = 16106, - type = "deequip", - slot = "legs", - level = 150 - }, - { - -- gill coat - itemid = 16105, - type = "equip", - slot = "armor", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- gill coat - itemid = 16105, - type = "deequip", - slot = "armor", - level = 150 - }, - { - -- gill gugel - itemid = 16104, - type = "equip", - slot = "head", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- gill gugel - itemid = 16104, - type = "deequip", - slot = "head", - level = 150 - }, - { - -- crystal backpack - itemid = 16100, - type = "equip", - slot = "backpack" - }, - { - -- crystal backpack - itemid = 16100, - type = "deequip", - slot = "backpack" - }, - { - -- mushroom backpack - itemid = 16099, - type = "equip", - slot = "backpack" - }, - { - -- mushroom backpack - itemid = 16099, - type = "deequip", - slot = "backpack" - }, - { - -- wand of defiance - itemid = 16096, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of defiance - itemid = 16096, - type = "deequip", - slot = "hand", - level = 65 - }, - { - -- crystalline arrow - itemid = 15793, - type = "equip", - slot = "ammo" - }, - { - -- crystalline arrow - itemid = 15793, - type = "deequip", - slot = "ammo" - }, - { - -- crystal bolt - itemid = 15792, - type = "equip", - slot = "ammo" - }, - { - -- crystal bolt - itemid = 15792, - type = "deequip", - slot = "ammo" - }, - { - -- spellbook of ancient arcana - itemid = 14769, - type = "equip", - slot = "shield", - level = 150, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of ancient arcana - itemid = 14769, - type = "deequip", - slot = "shield", - level = 150 - }, - { - -- thorn spitter - itemid = 14768, - type = "equip", - slot = "hand", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- thorn spitter - itemid = 14768, - type = "deequip", - slot = "hand" - }, - { - -- mathmaster shield - itemid = 14761, - type = "equip", - slot = "shield" - }, - { - -- mathmaster shield - itemid = 14761, - type = "deequip", - slot = "shield" - }, - { - -- mathmaster shield - itemid = 14760, - type = "equip", - slot = "shield" - }, - { - -- mathmaster shield - itemid = 14760, - type = "deequip", - slot = "shield" - }, - { - -- anniversary backpack - itemid = 14674, - type = "equip", - slot = "backpack" - }, - { - -- anniversary backpack - itemid = 14674, - type = "deequip", - slot = "backpack" - }, - { - -- vortex bolt - itemid = 14252, - type = "equip", - slot = "ammo" - }, - { - -- vortex bolt - itemid = 14252, - type = "deequip", - slot = "ammo" - }, - { - -- tarsal arrow - itemid = 14251, - type = "equip", - slot = "ammo" - }, - { - -- tarsal arrow - itemid = 14251, - type = "deequip", - slot = "ammo" - }, - { - -- deepling squelcher - itemid = 14250, - type = "equip", - slot = "hand", - level = 48 - - }, - { - -- deepling squelcher - itemid = 14250, - type = "deequip", - slot = "hand" - }, - { - -- buggy backpack - itemid = 14249, - type = "equip", - slot = "backpack" - }, - { - -- buggy backpack - itemid = 14249, - type = "deequip", - slot = "backpack" - }, - { - -- deepling backpack - itemid = 14248, - type = "equip", - slot = "backpack" - }, - { - -- deepling backpack - itemid = 14248, - type = "deequip", - slot = "backpack" - }, - { - -- ornate crossbow - itemid = 14247, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ornate crossbow - itemid = 14247, - type = "deequip", - slot = "hand" - }, - { - -- hive bow - itemid = 14246, - type = "equip", - slot = "hand", - level = 85, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hive bow - itemid = 14246, - type = "deequip", - slot = "hand" - }, - { - -- hive scythe - itemid = 14089, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- hive scythe - itemid = 14089, - type = "deequip", - slot = "hand" - }, - { - -- carapace shield - itemid = 14088, - type = "equip", - slot = "shield" - }, - { - -- carapace shield - itemid = 14088, - type = "deequip", - slot = "shield" - }, - { - -- grasshopper legs - itemid = 14087, - type = "equip", - slot = "legs", - level = 75 - }, - { - -- grasshopper legs - itemid = 14087, - type = "deequip", - slot = "legs", - level = 75 - }, - { - -- calopteryx cape - itemid = 14086, - type = "equip", - slot = "armor", - level = 80, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- calopteryx cape - itemid = 14086, - type = "deequip", - slot = "armor", - level = 80 - }, - { - -- guardian axe - itemid = 14043, - type = "equip", - slot = "hand", - level = 50 - }, - { - -- guardian axe - itemid = 14043, - type = "deequip", - slot = "hand" - }, - { - -- warrior's shield - itemid = 14042, - type = "equip", - slot = "shield" - }, - { - -- warrior's shield - itemid = 14042, - type = "deequip", - slot = "shield" - }, - { - -- warrior's axe - itemid = 14040, - type = "equip", - slot = "hand", - level = 40 - }, - { - -- warrior's axe - itemid = 14040, - type = "deequip", - slot = "hand" - }, - { - -- ornate mace - itemid = 14001, - type = "equip", - slot = "hand", - level = 90 - }, - { - -- ornate mace - itemid = 14001, - type = "deequip", - slot = "hand" - }, - { - -- ornate shield - itemid = 14000, - type = "equip", - slot = "shield", - level = 130, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ornate shield - itemid = 14000, - type = "deequip", - slot = "shield", - level = 130 - }, - { - -- ornate legs - itemid = 13999, - type = "equip", - slot = "legs", - level = 185, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ornate legs - itemid = 13999, - type = "deequip", - slot = "legs", - level = 185 - }, - { - -- depth scutum - itemid = 13998, - type = "equip", - slot = "shield", - level = 120, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- depth scutum - itemid = 13998, - type = "deequip", - slot = "shield", - level = 120 - }, - { - -- depth calcei - itemid = 13997, - type = "equip", - slot = "feet", - level = 150, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- depth calcei - itemid = 13997, - type = "deequip", - slot = "feet", - level = 150 - }, - { - -- depth ocrea - itemid = 13996, - type = "equip", - slot = "legs", - level = 130, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- depth ocrea - itemid = 13996, - type = "deequip", - slot = "legs", - level = 130 - }, - { - -- depth galea - itemid = 13995, - type = "equip", - slot = "head", - level = 150 - }, - { - -- depth galea - itemid = 13995, - type = "deequip", - slot = "head", - level = 150 - }, - { - -- depth lorica - itemid = 13994, - type = "equip", - slot = "armor", - level = 150, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- depth lorica - itemid = 13994, - type = "deequip", - slot = "armor", - level = 150 - }, - { - -- ornate chestplate - itemid = 13993, - type = "equip", - slot = "armor", - level = 200, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ornate chestplate - itemid = 13993, - type = "deequip", - slot = "armor", - level = 200 - }, - { - -- deepling axe - itemid = 13991, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- deepling axe - itemid = 13991, - type = "deequip", - slot = "hand" - }, - { - -- necklace of the deep - itemid = 13990, - type = "equip", - slot = "necklace", - level = 120 - }, - { - -- necklace of the deep - itemid = 13990, - type = "deequip", - slot = "necklace", - level = 120 - }, - { - -- deepling staff - itemid = 13987, - type = "equip", - slot = "hand", - level = 38 - }, - { - -- deepling staff - itemid = 13987, - type = "deequip", - slot = "hand" - }, - { - -- the Epic Wisdom - itemid = 12810, - type = "equip", - slot = "head" - }, - { - -- the Epic Wisdom - itemid = 12810, - type = "deequip", - slot = "head" - }, - { - -- the Epic Wisdom - itemid = 12809, - type = "equip", - slot = "head" - }, - { - -- the Epic Wisdom - itemid = 12809, - type = "deequip", - slot = "head" - }, - { - -- shimmer wand - itemid = 12741, - type = "equip", - slot = "hand", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- shimmer wand - itemid = 12741, - type = "deequip", - slot = "hand", - level = 40 - }, - { - -- broken ring of ending - itemid = 12737, - type = "equip", - slot = "ring" - }, - { - -- broken ring of ending - itemid = 12737, - type = "deequip", - slot = "ring" - }, - { - -- shimmer bow - itemid = 12733, - type = "equip", - slot = "hand", - level = 40, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- shimmer bow - itemid = 12733, - type = "deequip", - slot = "hand" - }, - { - -- shimmer rod - itemid = 12732, - type = "equip", - slot = "hand", - level = 40, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- shimmer rod - itemid = 12732, - type = "deequip", - slot = "hand", - level = 40 - }, - { - -- shimmer sword - itemid = 12731, - type = "equip", - slot = "hand", - level = 40 - }, - { - -- shimmer sword - itemid = 12731, - type = "deequip", - slot = "hand" - }, - { - -- heavy trident - itemid = 12683, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- heavy trident - itemid = 12683, - type = "deequip", - slot = "hand" - }, - { - -- wooden sword - itemid = 12673, - type = "equip", - slot = "hand" - }, - { - -- wooden sword - itemid = 12673, - type = "deequip", - slot = "hand" - }, - { - -- star ring - itemid = 12670, - type = "equip", - slot = "ring", - vocation = { - {"None", true} - } - }, - { - -- star ring - itemid = 12670, - type = "deequip", - slot = "ring", - vocation = { - {"None", true} - } - }, - { - -- star ring - itemid = 12669, - type = "equip", - slot = "ring", - vocation = { - {"None", true} - } - }, - { - -- star ring - itemid = 12669, - type = "deequip", - slot = "ring", - vocation = { - {"None", true} - } - }, - { - -- wand of dimensions - itemid = 12603, - type = "equip", - slot = "hand", - level = 37, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of dimensions - itemid = 12603, - type = "deequip", - slot = "hand", - level = 37 - }, - { - -- mage's cap - itemid = 12599, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- mage's cap - itemid = 12599, - type = "deequip", - slot = "head" - }, - { - -- fish tail (equipped) - itemid = 11543, - type = "equip", - slot = "feet" - }, - { - -- fish tail (equipped) - itemid = 11543, - type = "deequip", - slot = "feet" - }, - { - -- golden hyena pendant - itemid = 12543, - type = "equip", - slot = "necklace" - }, - { - -- golden hyena pendant - itemid = 12543, - type = "deequip", - slot = "necklace" - }, - { - -- golden scorpion pendant - itemid = 12542, - type = "equip", - slot = "necklace" - }, - { - -- golden scorpion pendant - itemid = 12542, - type = "deequip", - slot = "necklace" - }, - { - -- old cape - itemid = 11701, - type = "equip", - slot = "armor" - }, - { - -- old cape - itemid = 11701, - type = "deequip", - slot = "armor" - }, - { - -- sedge hat - itemid = 11700, - type = "equip", - slot = "head" - }, - { - -- sedge hat - itemid = 11700, - type = "deequip", - slot = "head" - }, - { - -- loot bag - itemid = 11698, - type = "equip", - slot = "backpack" - }, - { - -- loot bag - itemid = 11698, - type = "deequip", - slot = "backpack" - }, - { - -- blade of corruption - itemid = 11693, - type = "equip", - slot = "hand", - level = 82 - }, - { - -- blade of corruption - itemid = 11693, - type = "deequip", - slot = "hand", - level = 82 - }, - { - -- snake god's sceptre - itemid = 11692, - type = "equip", - slot = "hand", - level = 82 - }, - { - -- snake god's sceptre - itemid = 11692, - type = "deequip", - slot = "hand" - }, - { - -- snake god's wristguard - itemid = 11691, - type = "equip", - slot = "shield", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- snake god's wristguard - itemid = 11691, - type = "deequip", - slot = "shield", - level = 100 - }, - { - -- draken boots - itemid = 4033, - type = "equip", - slot = "feet", - level = 80, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- draken boots - itemid = 4033, - type = "deequip", - slot = "feet", - level = 80 - }, - { - -- elite draken helmet - itemid = 11689, - type = "equip", - slot = "head", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- elite draken helmet - itemid = 11689, - type = "deequip", - slot = "head", - level = 100 - }, - { - -- shield of corruption - itemid = 11688, - type = "equip", - slot = "shield", - level = 80, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- shield of corruption - itemid = 11688, - type = "deequip", - slot = "shield", - level = 80 - }, - { - -- royal scale robe - itemid = 11687, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- royal scale robe - itemid = 11687, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- royal draken mail - itemid = 11686, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- royal draken mail - itemid = 11686, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- cobra crown - itemid = 11674, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- cobra crown - itemid = 11674, - type = "deequip", - slot = "head" - }, - { - -- twiceslicer - itemid = 11657, - type = "equip", - slot = "hand", - level = 58, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- twiceslicer - itemid = 11657, - type = "deequip", - slot = "hand" - }, - { - -- elite draken mail - itemid = 11651, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- elite draken mail - itemid = 11651, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- fish tail (unequipped) - itemid = 11542, - type = "equip", - slot = "feet" - }, - { - -- fish tail (unequipped) - itemid = 11542, - type = "deequip", - slot = "feet" - }, - { - -- ornamented brooch - itemid = 11468, - type = "equip", - slot = "necklace" - }, - { - -- ornamented brooch - itemid = 11468, - type = "deequip", - slot = "necklace" - }, - { - -- lucky clover amulet - itemid = 10476, - type = "equip", - slot = "necklace" - }, - { - -- lucky clover amulet - itemid = 10476, - type = "deequip", - slot = "necklace" - }, - { - -- beetle necklace - itemid = 10457, - type = "equip", - slot = "necklace" - }, - { - -- beetle necklace - itemid = 10457, - type = "deequip", - slot = "necklace" - }, - { - -- jade hat - itemid = 10451, - type = "equip", - slot = "head", - level = 60, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- jade hat - itemid = 10451, - type = "deequip", - slot = "head", - level = 60 - }, - { - -- Zaoan robe - itemid = 10439, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- Zaoan robe - itemid = 10439, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- spellweaver's robe - itemid = 10438, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellweaver's robe - itemid = 10438, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- wailing widow's necklace - itemid = 10412, - type = "equip", - slot = "necklace" - }, - { - -- wailing widow's necklace - itemid = 10412, - type = "deequip", - slot = "necklace" - }, - { - -- Zaoan halberd - itemid = 10406, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- Zaoan halberd - itemid = 10406, - type = "deequip", - slot = "hand" - }, - { - -- twin hooks - itemid = 10392, - type = "equip", - slot = "hand", - level = 20, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- twin hooks - itemid = 10392, - type = "deequip", - slot = "hand" - }, - { - -- drachaku - itemid = 10391, - type = "equip", - slot = "hand", - level = 55, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- drachaku - itemid = 10391, - type = "deequip", - slot = "hand" - }, - { - -- Zaoan sword - itemid = 10390, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- Zaoan sword - itemid = 10390, - type = "deequip", - slot = "hand" - }, - { - -- sai - itemid = 10389, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sai - itemid = 10389, - type = "deequip", - slot = "hand" - }, - { - -- drakinata - itemid = 10388, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- drakinata - itemid = 10388, - type = "deequip", - slot = "hand" - }, - { - -- Zaoan legs - itemid = 10387, - type = "equip", - slot = "legs" - }, - { - -- Zaoan legs - itemid = 10387, - type = "deequip", - slot = "legs" - }, - { - -- zaoan shoes - itemid = 10386, - type = "equip", - slot = "feet" - }, - { - -- zaoan shoes - itemid = 10386, - type = "deequip", - slot = "feet" - }, - { - -- Zaoan helmet - itemid = 10385, - type = "equip", - slot = "head", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- Zaoan helmet - itemid = 10385, - type = "deequip", - slot = "head" - }, - { - -- Zaoan armor - itemid = 10384, - type = "equip", - slot = "armor", - level = 50, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- Zaoan armor - itemid = 10384, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- santa backpack - itemid = 10346, - type = "equip", - slot = "backpack" - }, - { - -- santa backpack - itemid = 10346, - type = "deequip", - slot = "backpack" - }, - { - -- minotaur backpack - itemid = 10327, - type = "equip", - slot = "backpack" - }, - { - -- minotaur backpack - itemid = 10327, - type = "deequip", - slot = "backpack" - }, - { - -- dragon backpack - itemid = 10326, - type = "equip", - slot = "backpack" - }, - { - -- dragon backpack - itemid = 10326, - type = "deequip", - slot = "backpack" - }, - { - -- expedition bag - itemid = 10325, - type = "equip", - slot = "backpack" - }, - { - -- expedition bag - itemid = 10325, - type = "deequip", - slot = "backpack" - }, - { - -- expedition backpack - itemid = 10324, - type = "equip", - slot = "backpack" - }, - { - -- expedition backpack - itemid = 10324, - type = "deequip", - slot = "backpack" - }, - { - -- guardian boots - itemid = 10323, - type = "equip", - slot = "feet", - level = 70, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- guardian boots - itemid = 10323, - type = "deequip", - slot = "feet", - level = 70 - }, - { - -- heart backpack - itemid = 10202, - type = "equip", - slot = "backpack" - }, - { - -- heart backpack - itemid = 10202, - type = "deequip", - slot = "backpack" - }, - { - -- dragon scale boots - itemid = 10201, - type = "equip", - slot = "feet", - level = 70, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- dragon scale boots - itemid = 10201, - type = "deequip", - slot = "feet", - level = 70 - }, - { - -- crystal boots - itemid = 10200, - type = "equip", - slot = "feet", - level = 70, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- crystal boots - itemid = 10200, - type = "deequip", - slot = "feet", - level = 70 - }, - { - -- witch hat - itemid = 9653, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- witch hat - itemid = 9653, - type = "deequip", - slot = "head" - }, - { - -- crown backpack - itemid = 9605, - type = "equip", - slot = "backpack" - }, - { - -- crown backpack - itemid = 9605, - type = "deequip", - slot = "backpack" - }, - { - -- moon backpack - itemid = 9604, - type = "equip", - slot = "backpack" - }, - { - -- moon backpack - itemid = 9604, - type = "deequip", - slot = "backpack" - }, - { - -- orange bag - itemid = 9603, - type = "equip", - slot = "backpack" - }, - { - -- orange bag - itemid = 9603, - type = "deequip", - slot = "backpack" - }, - { - -- orange backpack - itemid = 9602, - type = "equip", - slot = "backpack" - }, - { - -- orange backpack - itemid = 9602, - type = "deequip", - slot = "backpack" - }, - { - -- demon backpack - itemid = 9601, - type = "equip", - slot = "backpack" - }, - { - -- demon backpack - itemid = 9601, - type = "deequip", - slot = "backpack" - }, - { - -- broken wedding ring - itemid = 9593, - type = "equip", - slot = "ring" - }, - { - -- broken wedding ring - itemid = 9593, - type = "deequip", - slot = "ring" - }, - { - -- engraved wedding ring - itemid = 9585, - type = "equip", - slot = "ring" - }, - { - -- engraved wedding ring - itemid = 9585, - type = "deequip", - slot = "ring" - }, - { - -- the shield Nevermourn - itemid = 9447, - type = "equip", - slot = "shield" - }, - { - -- the shield Nevermourn - itemid = 9447, - type = "deequip", - slot = "shield" - }, - { - -- the rain coat - itemid = 9446, - type = "equip", - slot = "armor" - }, - { - -- the rain coat - itemid = 9446, - type = "deequip", - slot = "armor" - }, - { - -- the shield Nevermourn - itemid = 9401, - type = "equip", - slot = "shield" - }, - { - -- the shield Nevermourn - itemid = 9401, - type = "deequip", - slot = "shield" - }, - { - -- the rain coat - itemid = 9400, - type = "equip", - slot = "armor" - }, - { - -- the rain coat - itemid = 9400, - type = "deequip", - slot = "armor" - }, - { - -- mighty helm of green sparks - itemid = 9399, - type = "equip", - slot = "head" - }, - { - -- mighty helm of green sparks - itemid = 9399, - type = "deequip", - slot = "head" - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = "equip", - slot = "hand" - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = "deequip", - slot = "hand" - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9394, - type = "equip", - slot = "ring", - level = 100 - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9394, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9392, - type = "equip", - slot = "ring", - level = 100 - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9392, - type = "deequip", - slot = "ring", - level = 100 - }, - { - -- poet's fencing quill - itemid = 9387, - type = "equip", - slot = "hand" - }, - { - -- poet's fencing quill - itemid = 9387, - type = "deequip", - slot = "hand" - }, - { - -- farmer's avenger - itemid = 9386, - type = "equip", - slot = "hand" - }, - { - -- farmer's avenger - itemid = 9386, - type = "deequip", - slot = "hand" - }, - { - -- club of the fury - itemid = 9385, - type = "equip", - slot = "hand" - }, - { - -- club of the fury - itemid = 9385, - type = "deequip", - slot = "hand" - }, - { - -- scythe of the reaper - itemid = 9384, - type = "equip", - slot = "hand" - }, - { - -- scythe of the reaper - itemid = 9384, - type = "deequip", - slot = "hand" - }, - { - -- trousers of the ancients - itemid = 9383, - type = "equip", - slot = "legs" - }, - { - -- trousers of the ancients - itemid = 9383, - type = "deequip", - slot = "legs" - }, - { - -- helmet of nature - itemid = 9382, - type = "equip", - slot = "head" - }, - { - -- helmet of nature - itemid = 9382, - type = "deequip", - slot = "head" - }, - { - -- helmet of ultimate terror - itemid = 9381, - type = "equip", - slot = "head" - }, - { - -- helmet of ultimate terror - itemid = 9381, - type = "deequip", - slot = "head" - }, - { - -- shield of care - itemid = 9380, - type = "equip", - slot = "shield" - }, - { - -- shield of care - itemid = 9380, - type = "deequip", - slot = "shield" - }, - { - -- heavy metal t-shirt - itemid = 9379, - type = "equip", - slot = "armor" - }, - { - -- heavy metal t-shirt - itemid = 9379, - type = "deequip", - slot = "armor" - }, - { - -- musician's bow - itemid = 9378, - type = "equip", - slot = "hand" - }, - { - -- musician's bow - itemid = 9378, - type = "deequip", - slot = "hand" - }, - { - -- shield of the white knight - itemid = 9377, - type = "equip", - slot = "shield" - }, - { - -- shield of the white knight - itemid = 9377, - type = "deequip", - slot = "shield" - }, - { - -- stale bread of ancientness - itemid = 9376, - type = "equip", - slot = "hand" - }, - { - -- stale bread of ancientness - itemid = 9376, - type = "deequip", - slot = "hand" - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = "equip", - slot = "hand" - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = "deequip", - slot = "hand" - }, - { - -- odd hat - itemid = 9374, - type = "equip", - slot = "head" - }, - { - -- odd hat - itemid = 9374, - type = "deequip", - slot = "head" - }, - { - -- glutton's mace - itemid = 9373, - type = "equip", - slot = "hand" - }, - { - -- glutton's mace - itemid = 9373, - type = "deequip", - slot = "hand" - }, - { - -- meat shield - itemid = 9372, - type = "equip", - slot = "shield" - }, - { - -- meat shield - itemid = 9372, - type = "deequip", - slot = "shield" - }, - { - -- shockwave amulet - itemid = 9304, - type = "equip", - slot = "necklace", - level = 80 - }, - { - -- shockwave amulet - itemid = 9304, - type = "deequip", - slot = "necklace", - level = 80 - }, - { - -- leviathan's amulet - itemid = 9303, - type = "equip", - slot = "necklace", - level = 80 - }, - { - -- leviathan's amulet - itemid = 9303, - type = "deequip", - slot = "necklace", - level = 80 - }, - { - -- sacred tree amulet - itemid = 9302, - type = "equip", - slot = "necklace", - level = 80 - }, - { - -- sacred tree amulet - itemid = 9302, - type = "deequip", - slot = "necklace", - level = 80 - }, - { - -- bonfire amulet - itemid = 9301, - type = "equip", - slot = "necklace", - level = 80 - }, - { - -- bonfire amulet - itemid = 9301, - type = "deequip", - slot = "necklace", - level = 80 - }, - { - -- laurel wreath - itemid = 9221, - type = "equip", - slot = "head" - }, - { - -- laurel wreath - itemid = 9221, - type = "deequip", - slot = "head" - }, - { - -- bronze medal - itemid = 9217, - type = "equip", - slot = "necklace" - }, - { - -- bronze medal - itemid = 9217, - type = "deequip", - slot = "necklace" - }, - { - -- silver medal - itemid = 9216, - type = "equip", - slot = "necklace" - }, - { - -- silver medal - itemid = 9216, - type = "deequip", - slot = "necklace" - }, - { - -- gold medal - itemid = 9215, - type = "equip", - slot = "necklace" - }, - { - -- gold medal - itemid = 9215, - type = "deequip", - slot = "necklace" - }, - { - -- grey bag - itemid = 9151, - type = "equip", - slot = "backpack" - }, - { - -- grey bag - itemid = 9151, - type = "deequip", - slot = "backpack" - }, - { - -- batwing hat - itemid = 9103, - type = "equip", - slot = "head", - level = 50, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- batwing hat - itemid = 9103, - type = "deequip", - slot = "head", - level = 50 - }, - { - -- pair firewalker boots - itemid = 9019, - type = "equip", - slot = "feet", - level = 130 - }, - { - -- pair firewalker boots - itemid = 9019, - type = "deequip", - slot = "feet", - level = 130 - }, - { - -- firewalker boots - itemid = 9018, - type = "equip", - slot = "feet", - level = 130 - }, - { - -- firewalker boots - itemid = 9018, - type = "deequip", - slot = "feet", - level = 130 - }, - { - -- coconut shoes - itemid = 9017, - type = "equip", - slot = "feet" - }, - { - -- coconut shoes - itemid = 9017, - type = "deequip", - slot = "feet" - }, - { - -- flower dress - itemid = 9015, - type = "equip", - slot = "armor" - }, - { - -- flower dress - itemid = 9015, - type = "deequip", - slot = "armor" - }, - { - -- leaf legs - itemid = 9014, - type = "equip", - slot = "legs" - }, - { - -- leaf legs - itemid = 9014, - type = "deequip", - slot = "legs" - }, - { - -- flower wreath - itemid = 9013, - type = "equip", - slot = "head" - }, - { - -- flower wreath - itemid = 9013, - type = "deequip", - slot = "head" - }, - { - -- yalahari mask - itemid = 8864, - type = "equip", - slot = "head", - level = 80, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- yalahari mask - itemid = 8864, - type = "deequip", - slot = "head", - level = 80 - }, - { - -- yalahari leg piece - itemid = 8863, - type = "equip", - slot = "legs", - level = 80, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- yalahari leg piece - itemid = 8863, - type = "deequip", - slot = "legs", - level = 80 - }, - { - -- yalahari armor - itemid = 8862, - type = "equip", - slot = "armor", - level = 80, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- yalahari armor - itemid = 8862, - type = "deequip", - slot = "armor", - level = 80 - }, - { - -- brocade bag - itemid = 8861, - type = "equip", - slot = "backpack" - }, - { - -- brocade bag - itemid = 8861, - type = "deequip", - slot = "backpack" - }, - { - -- brocade backpack - itemid = 8860, - type = "equip", - slot = "backpack" - }, - { - -- brocade backpack - itemid = 8860, - type = "deequip", - slot = "backpack" - }, - { - -- golden bag - itemid = 655, - type = "equip", - slot = "backpack" - }, - { - -- golden bag - itemid = 655, - type = "deequip", - slot = "backpack" - }, - { - -- purple bag - itemid = 653, - type = "equip", - slot = "backpack" - }, - { - -- purple bag - itemid = 653, - type = "deequip", - slot = "backpack" - }, - { - -- the calamity - itemid = 8104, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- the calamity - itemid = 8104, - type = "deequip", - slot = "hand" - }, - { - -- the epiphany - itemid = 8103, - type = "equip", - slot = "hand", - level = 120 - }, - { - -- the epiphany - itemid = 8103, - type = "deequip", - slot = "hand" - }, - { - -- emerald sword - itemid = 8102, - type = "equip", - slot = "hand", - level = 100 - }, - { - -- emerald sword - itemid = 8102, - type = "deequip", - slot = "hand" - }, - { - -- the stomper - itemid = 8101, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- the stomper - itemid = 8101, - type = "deequip", - slot = "hand" - }, - { - -- obsidian truncheon - itemid = 8100, - type = "equip", - slot = "hand", - level = 100 - }, - { - -- obsidian truncheon - itemid = 8100, - type = "deequip", - slot = "hand" - }, - { - -- dark trinity mace - itemid = 8099, - type = "equip", - slot = "hand", - level = 120 - }, - { - -- dark trinity mace - itemid = 8099, - type = "deequip", - slot = "hand" - }, - { - -- demonwing axe - itemid = 8098, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- demonwing axe - itemid = 8098, - type = "deequip", - slot = "hand" - }, - { - -- solar axe - itemid = 8097, - type = "equip", - slot = "hand", - level = 130 - }, - { - -- solar axe - itemid = 8097, - type = "deequip", - slot = "hand" - }, - { - -- hellforged axe - itemid = 8096, - type = "equip", - slot = "hand", - level = 110 - }, - { - -- hellforged axe - itemid = 8096, - type = "deequip", - slot = "hand" - }, - { - -- ranger legs - itemid = 8095, - type = "equip", - slot = "legs", - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ranger legs - itemid = 8095, - type = "deequip", - slot = "legs" - }, - { - -- wand of voodoo - itemid = 8094, - type = "equip", - slot = "hand", - level = 42, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of voodoo - itemid = 8094, - type = "deequip", - slot = "hand", - level = 42 - }, - { - -- wand of draconia - itemid = 8093, - type = "equip", - slot = "hand", - level = 22, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of draconia - itemid = 8093, - type = "deequip", - slot = "hand", - level = 22 - }, - { - -- wand of starstorm - itemid = 8092, - type = "equip", - slot = "hand", - level = 37, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of starstorm - itemid = 8092, - type = "deequip", - slot = "hand", - level = 37 - }, - { - -- spellbook of dark mysteries - itemid = 8090, - type = "equip", - slot = "shield", - level = 80, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of dark mysteries - itemid = 8090, - type = "deequip", - slot = "shield", - level = 80 - }, - { - -- springsprout rod - itemid = 8084, - type = "equip", - slot = "hand", - level = 37, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- springsprout rod - itemid = 8084, - type = "deequip", - slot = "hand", - level = 37 - }, - { - -- northwind rod - itemid = 8083, - type = "equip", - slot = "hand", - level = 22, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- northwind rod - itemid = 8083, - type = "deequip", - slot = "hand", - level = 22 - }, - { - -- underworld rod - itemid = 8082, - type = "equip", - slot = "hand", - level = 42, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- underworld rod - itemid = 8082, - type = "deequip", - slot = "hand", - level = 42 - }, - { - -- terran rainbow shield - itemid = 8081, - type = "equip", - slot = "shield", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- terran rainbow shield - itemid = 8081, - type = "deequip", - slot = "shield", - level = 100 - }, - { - -- sparking rainbow shield - itemid = 8080, - type = "equip", - slot = "shield", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sparking rainbow shield - itemid = 8080, - type = "deequip", - slot = "shield", - level = 100 - }, - { - -- icy rainbow shield - itemid = 8079, - type = "equip", - slot = "shield", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icy rainbow shield - itemid = 8079, - type = "deequip", - slot = "shield", - level = 100 - }, - { - -- fiery rainbow shield - itemid = 8078, - type = "equip", - slot = "shield", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fiery rainbow shield - itemid = 8078, - type = "deequip", - slot = "shield", - level = 100 - }, - { - -- rainbow shield - itemid = 8077, - type = "equip", - slot = "shield", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- rainbow shield - itemid = 8077, - type = "deequip", - slot = "shield", - level = 100 - }, - { - -- spellscroll of prophecies - itemid = 8076, - type = "equip", - slot = "shield", - level = 70, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellscroll of prophecies - itemid = 8076, - type = "deequip", - slot = "shield", - level = 70 - }, - { - -- spellbook of lost souls - itemid = 8075, - type = "equip", - slot = "shield", - level = 60, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of lost souls - itemid = 8075, - type = "deequip", - slot = "shield", - level = 60 - }, - { - -- spellbook of mind control - itemid = 8074, - type = "equip", - slot = "shield", - level = 50, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of mind control - itemid = 8074, - type = "deequip", - slot = "shield", - level = 50 - }, - { - -- spellbook of warding - itemid = 8073, - type = "equip", - slot = "shield", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of warding - itemid = 8073, - type = "deequip", - slot = "shield", - level = 40 - }, - { - -- spellbook of enlightenment - itemid = 8072, - type = "equip", - slot = "shield", - level = 30, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook of enlightenment - itemid = 8072, - type = "deequip", - slot = "shield", - level = 30 - }, - { - -- ethno coat - itemid = 8064, - type = "equip", - slot = "armor", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- ethno coat - itemid = 8064, - type = "deequip", - slot = "armor" - }, - { - -- paladin armor - itemid = 8063, - type = "equip", - slot = "armor", - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- paladin armor - itemid = 8063, - type = "deequip", - slot = "armor" - }, - { - -- robe of the underworld - itemid = 8062, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- robe of the underworld - itemid = 8062, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- skullcracker armor - itemid = 8061, - type = "equip", - slot = "armor", - level = 85, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- skullcracker armor - itemid = 8061, - type = "deequip", - slot = "armor", - level = 85 - }, - { - -- master archer's armor - itemid = 8060, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- master archer's armor - itemid = 8060, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- frozen plate - itemid = 8059, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- frozen plate - itemid = 8059, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- molten plate - itemid = 8058, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- molten plate - itemid = 8058, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- divine plate - itemid = 8057, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- divine plate - itemid = 8057, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- oceanborn leviathan armor - itemid = 8056, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- oceanborn leviathan armor - itemid = 8056, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- windborn colossus armor - itemid = 8055, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- windborn colossus armor - itemid = 8055, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- earthborn titan armor - itemid = 8054, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earthborn titan armor - itemid = 8054, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- fireborn giant armor - itemid = 8053, - type = "equip", - slot = "armor", - level = 100, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fireborn giant armor - itemid = 8053, - type = "deequip", - slot = "armor", - level = 100 - }, - { - -- swamplair armor - itemid = 8052, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- swamplair armor - itemid = 8052, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- voltage armor - itemid = 8051, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- voltage armor - itemid = 8051, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- crystalline armor - itemid = 8050, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- crystalline armor - itemid = 8050, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- lavos armor - itemid = 8049, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- lavos armor - itemid = 8049, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- girl's dress - itemid = 8048, - type = "equip", - slot = "armor" - }, - { - -- girl's dress - itemid = 8048, - type = "deequip", - slot = "armor" - }, - { - -- tunic - itemid = 8047, - type = "equip", - slot = "armor" - }, - { - -- tunic - itemid = 8047, - type = "deequip", - slot = "armor" - }, - { - -- summer dress - itemid = 8046, - type = "equip", - slot = "armor" - }, - { - -- summer dress - itemid = 8046, - type = "deequip", - slot = "armor" - }, - { - -- hibiscus dress - itemid = 8045, - type = "equip", - slot = "armor" - }, - { - -- hibiscus dress - itemid = 8045, - type = "deequip", - slot = "armor" - }, - { - -- belted cape - itemid = 8044, - type = "equip", - slot = "armor", - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- belted cape - itemid = 8044, - type = "deequip", - slot = "armor" - }, - { - -- focus cape - itemid = 8043, - type = "equip", - slot = "armor", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- focus cape - itemid = 8043, - type = "deequip", - slot = "armor" - }, - { - -- spirit cloak - itemid = 8042, - type = "equip", - slot = "armor", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spirit cloak - itemid = 8042, - type = "deequip", - slot = "armor" - }, - { - -- greenwood coat - itemid = 8041, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- greenwood coat - itemid = 8041, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- velvet mantle - itemid = 8040, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- velvet mantle - itemid = 8040, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- dragon robe - itemid = 8039, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- dragon robe - itemid = 8039, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- robe of the ice queen - itemid = 8038, - type = "equip", - slot = "armor", - level = 75, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- robe of the ice queen - itemid = 8038, - type = "deequip", - slot = "armor", - level = 75 - }, - { - -- dark lord's cape - itemid = 8037, - type = "equip", - slot = "armor", - level = 65, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- dark lord's cape - itemid = 8037, - type = "deequip", - slot = "armor", - level = 65 - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = "equip", - slot = "hand", - level = 70, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = "deequip", - slot = "hand" - }, - { - -- silkweaver bow - itemid = 8029, - type = "equip", - slot = "hand", - level = 40, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- silkweaver bow - itemid = 8029, - type = "deequip", - slot = "hand" - }, - { - -- yol's bow - itemid = 8028, - type = "equip", - slot = "hand", - level = 60, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- yol's bow - itemid = 8028, - type = "deequip", - slot = "hand" - }, - { - -- composite hornbow - itemid = 8027, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- composite hornbow - itemid = 8027, - type = "deequip", - slot = "hand" - }, - { - -- warsinger bow - itemid = 8026, - type = "equip", - slot = "hand", - level = 80, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- warsinger bow - itemid = 8026, - type = "deequip", - slot = "hand" - }, - { - -- The ironworker - itemid = 8025, - type = "equip", - slot = "hand", - level = 80, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- The ironworker - itemid = 8025, - type = "deequip", - slot = "hand" - }, - { - -- The Devileye - itemid = 8024, - type = "equip", - slot = "hand", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- The Devileye - itemid = 8024, - type = "deequip", - slot = "hand", - level = 100, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- royal crossbow - itemid = 8023, - type = "equip", - slot = "hand", - level = 130, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- royal crossbow - itemid = 8023, - type = "deequip", - slot = "hand" - }, - { - -- chain bolter - itemid = 8022, - type = "equip", - slot = "hand", - level = 60, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- chain bolter - itemid = 8022, - type = "deequip", - slot = "hand" - }, - { - -- modified crossbow - itemid = 8021, - type = "equip", - slot = "hand", - level = 45, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- modified crossbow - itemid = 8021, - type = "deequip", - slot = "hand" - }, - { - -- witchhunter's coat - itemid = 7993, - type = "equip", - slot = "armor", - level = 50 - }, - { - -- witchhunter's coat - itemid = 7993, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- mage hat - itemid = 7992, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- mage hat - itemid = 7992, - type = "deequip", - slot = "head" - }, - { - -- magician's robe - itemid = 7991, - type = "equip", - slot = "armor", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- magician's robe - itemid = 7991, - type = "deequip", - slot = "armor" - }, - { - -- jagged sword - itemid = 7774, - type = "equip", - slot = "hand" - }, - { - -- jagged sword - itemid = 7774, - type = "deequip", - slot = "hand" - }, - { - -- steel axe - itemid = 7773, - type = "equip", - slot = "hand" - }, - { - -- steel axe - itemid = 7773, - type = "deequip", - slot = "hand" - }, - { - -- Jerom's family necklace - itemid = 7754, - type = "equip", - slot = "necklace" - }, - { - -- Jerom's family necklace - itemid = 7754, - type = "deequip", - slot = "necklace" - }, - { - -- Koshei's ancient amulet - itemid = 7532, - type = "equip", - slot = "necklace" - }, - { - -- Koshei's ancient amulet - itemid = 7532, - type = "deequip", - slot = "necklace" - }, - { - -- viper star - itemid = 7366, - type = "equip", - slot = "hand" - }, - { - -- viper star - itemid = 7366, - type = "deequip", - slot = "hand" - }, - { - -- crimson sword - itemid = 860, - type = "equip", - slot = "hand" - }, - { - -- crimson sword - itemid = 860, - type = "deequip", - slot = "hand" - }, - { - -- shapeshifter ring - itemid = 908, - type = "equip", - slot = "ring" - }, - { - -- shapeshifter ring - itemid = 908, - type = "deequip", - slot = "ring" - }, - { - -- shapeshifter ring - itemid = 907, - type = "equip", - slot = "ring" - }, - { - -- shapeshifter ring - itemid = 907, - type = "deequip", - slot = "ring" - }, - { - -- Throwing Cake - itemid = 904, - type = "equip", - slot = "ring" - }, - { - -- Throwing Cake - itemid = 904, - type = "deequip", - slot = "ring" - }, - { - -- jester hat - itemid = 894, - type = "equip", - slot = "head" - }, - { - -- jester hat - itemid = 894, - type = "deequip", - slot = "head" - }, - { - -- terra hood - itemid = 830, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- terra hood - itemid = 830, - type = "deequip", - slot = "head" - }, - { - -- glacier mask - itemid = 829, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- glacier mask - itemid = 829, - type = "deequip", - slot = "head" - }, - { - -- lightning headband - itemid = 828, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- lightning headband - itemid = 828, - type = "deequip", - slot = "head" - }, - { - -- magma monocle - itemid = 827, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- magma monocle - itemid = 827, - type = "deequip", - slot = "head" - }, - { - -- magma coat - itemid = 826, - type = "equip", - slot = "armor", - level = 50, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- magma coat - itemid = 826, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- lightning robe - itemid = 825, - type = "equip", - slot = "armor", - level = 50, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- lightning robe - itemid = 825, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- glacier robe - itemid = 824, - type = "equip", - slot = "armor", - level = 50, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- glacier robe - itemid = 824, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- glacier kilt - itemid = 823, - type = "equip", - slot = "legs", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- glacier kilt - itemid = 823, - type = "deequip", - slot = "legs", - level = 40 - }, - { - -- lightning legs - itemid = 822, - type = "equip", - slot = "legs", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- lightning legs - itemid = 822, - type = "deequip", - slot = "legs", - level = 40 - }, - { - -- magma legs - itemid = 821, - type = "equip", - slot = "legs", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- magma legs - itemid = 821, - type = "deequip", - slot = "legs", - level = 40 - }, - { - -- lightning boots - itemid = 820, - type = "equip", - slot = "feet", - level = 35, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- lightning boots - itemid = 820, - type = "deequip", - slot = "feet", - level = 35 - }, - { - -- glacier shoes - itemid = 819, - type = "equip", - slot = "feet", - level = 35, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- glacier shoes - itemid = 819, - type = "deequip", - slot = "feet", - level = 35 - }, - { - -- magma boots - itemid = 818, - type = "equip", - slot = "feet", - level = 35, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- magma boots - itemid = 818, - type = "deequip", - slot = "feet", - level = 35 - }, - { - -- magma amulet - itemid = 817, - type = "equip", - slot = "necklace", - level = 60 - }, - { - -- magma amulet - itemid = 817, - type = "deequip", - slot = "necklace", - level = 60 - }, - { - -- lightning pendant - itemid = 816, - type = "equip", - slot = "necklace", - level = 60 - }, - { - -- lightning pendant - itemid = 816, - type = "deequip", - slot = "necklace", - level = 60 - }, - { - -- glacier amulet - itemid = 815, - type = "equip", - slot = "necklace", - level = 60 - }, - { - -- glacier amulet - itemid = 815, - type = "deequip", - slot = "necklace", - level = 60 - }, - { - -- terra amulet - itemid = 814, - type = "equip", - slot = "necklace", - level = 60 - }, - { - -- terra amulet - itemid = 814, - type = "deequip", - slot = "necklace", - level = 60 - }, - { - -- terra boots - itemid = 813, - type = "equip", - slot = "feet", - level = 35, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- terra boots - itemid = 813, - type = "deequip", - slot = "feet", - level = 35 - }, - { - -- terra legs - itemid = 812, - type = "equip", - slot = "legs", - level = 40, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- terra legs - itemid = 812, - type = "deequip", - slot = "legs", - level = 40 - }, - { - -- terra mantle - itemid = 811, - type = "equip", - slot = "armor", - level = 50, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- terra mantle - itemid = 811, - type = "deequip", - slot = "armor", - level = 50 - }, - { - -- energy war hammer - itemid = 810, - type = "equip", - slot = "hand" - }, - { - -- energy war hammer - itemid = 810, - type = "deequip", - slot = "hand" - }, - { - -- energy orcish maul - itemid = 809, - type = "equip", - slot = "hand" - }, - { - -- energy orcish maul - itemid = 809, - type = "deequip", - slot = "hand" - }, - { - -- energy cranial basher - itemid = 808, - type = "equip", - slot = "hand" - }, - { - -- energy cranial basher - itemid = 808, - type = "deequip", - slot = "hand" - }, - { - -- energy crystal mace - itemid = 807, - type = "equip", - slot = "hand" - }, - { - -- energy crystal mace - itemid = 807, - type = "deequip", - slot = "hand" - }, - { - -- energy clerical mace - itemid = 806, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- energy clerical mace - itemid = 806, - type = "deequip", - slot = "hand" - }, - { - -- energy war axe - itemid = 805, - type = "equip", - slot = "hand" - }, - { - -- energy war axe - itemid = 805, - type = "deequip", - slot = "hand" - }, - { - -- energy headchopper - itemid = 804, - type = "equip", - slot = "hand" - }, - { - -- energy headchopper - itemid = 804, - type = "deequip", - slot = "hand" - }, - { - -- energy heroic axe - itemid = 803, - type = "equip", - slot = "hand" - }, - { - -- energy heroic axe - itemid = 803, - type = "deequip", - slot = "hand" - }, - { - -- energy knight axe - itemid = 802, - type = "equip", - slot = "hand" - }, - { - -- energy knight axe - itemid = 802, - type = "deequip", - slot = "hand" - }, - { - -- energy barbarian axe - itemid = 801, - type = "equip", - slot = "hand" - }, - { - -- energy barbarian axe - itemid = 801, - type = "deequip", - slot = "hand" - }, - { - -- energy dragon slayer - itemid = 798, - type = "equip", - slot = "hand", - level = 45, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- energy dragon slayer - itemid = 798, - type = "deequip", - slot = "hand" - }, - { - -- energy blacksteel sword - itemid = 797, - type = "equip", - slot = "hand" - }, - { - -- energy blacksteel sword - itemid = 797, - type = "deequip", - slot = "hand" - }, - { - -- energy mystic blade - itemid = 796, - type = "equip", - slot = "hand" - }, - { - -- energy mystic blade - itemid = 796, - type = "deequip", - slot = "hand" - }, - { - -- energy relic sword - itemid = 795, - type = "equip", - slot = "hand" - }, - { - -- energy relic sword - itemid = 795, - type = "deequip", - slot = "hand" - }, - { - -- energy spike sword - itemid = 794, - type = "equip", - slot = "hand" - }, - { - -- energy spike sword - itemid = 794, - type = "deequip", - slot = "hand" - }, - { - -- earth war hammer - itemid = 793, - type = "equip", - slot = "hand" - }, - { - -- earth war hammer - itemid = 793, - type = "deequip", - slot = "hand" - }, - { - -- earth orcish maul - itemid = 792, - type = "equip", - slot = "hand" - }, - { - -- earth orcish maul - itemid = 792, - type = "deequip", - slot = "hand" - }, - { - -- earth cranial basher - itemid = 791, - type = "equip", - slot = "hand" - }, - { - -- earth cranial basher - itemid = 791, - type = "deequip", - slot = "hand" - }, - { - -- earth crystal mace - itemid = 790, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- earth crystal mace - itemid = 790, - type = "deequip", - slot = "hand" - }, - { - -- earth clerical mace - itemid = 789, - type = "equip", - slot = "hand" - }, - { - -- earth clerical mace - itemid = 789, - type = "deequip", - slot = "hand" - }, - { - -- earth war axe - itemid = 788, - type = "equip", - slot = "hand" - }, - { - -- earth war axe - itemid = 788, - type = "deequip", - slot = "hand" - }, - { - -- earth headchopper - itemid = 787, - type = "equip", - slot = "hand" - }, - { - -- earth headchopper - itemid = 787, - type = "deequip", - slot = "hand" - }, - { - -- earth heroic axe - itemid = 786, - type = "equip", - slot = "hand" - }, - { - -- earth heroic axe - itemid = 786, - type = "deequip", - slot = "hand" - }, - { - -- earth knight axe - itemid = 785, - type = "equip", - slot = "hand" - }, - { - -- earth knight axe - itemid = 785, - type = "deequip", - slot = "hand" - }, - { - -- earth barbarian axe - itemid = 784, - type = "equip", - slot = "hand" - }, - { - -- earth barbarian axe - itemid = 784, - type = "deequip", - slot = "hand" - }, - { - -- earth dragon slayer - itemid = 783, - type = "equip", - slot = "hand" - }, - { - -- earth dragon slayer - itemid = 783, - type = "deequip", - slot = "hand" - }, - { - -- earth blacksteel sword - itemid = 782, - type = "equip", - slot = "hand" - }, - { - -- earth blacksteel sword - itemid = 782, - type = "deequip", - slot = "hand" - }, - { - -- earth mystic blade - itemid = 781, - type = "equip", - slot = "hand" - }, - { - -- earth mystic blade - itemid = 781, - type = "deequip", - slot = "hand" - }, - { - -- earth relic sword - itemid = 780, - type = "equip", - slot = "hand" - }, - { - -- earth relic sword - itemid = 780, - type = "deequip", - slot = "hand" - }, - { - -- earth spike sword - itemid = 779, - type = "equip", - slot = "hand" - }, - { - -- earth spike sword - itemid = 779, - type = "deequip", - slot = "hand" - }, - { - -- earth arrow - itemid = 774, - type = "equip", - slot = "ammo" - }, - { - -- earth arrow - itemid = 774, - type = "deequip", - slot = "ammo" - }, - { - -- flaming arrow - itemid = 763, - type = "equip", - slot = "ammo" - }, - { - -- flaming arrow - itemid = 763, - type = "deequip", - slot = "ammo" - }, - { - -- shiver arrow - itemid = 762, - type = "equip", - slot = "ammo" - }, - { - -- shiver arrow - itemid = 762, - type = "deequip", - slot = "ammo" - }, - { - -- flash arrow - itemid = 761, - type = "equip", - slot = "ammo" - }, - { - -- flash arrow - itemid = 761, - type = "deequip", - slot = "ammo" - }, - { - -- icy war hammer - itemid = 693, - type = "equip", - slot = "hand" - }, - { - -- icy war hammer - itemid = 693, - type = "deequip", - slot = "hand" - }, - { - -- icy orcish maul - itemid = 692, - type = "equip", - slot = "hand" - }, - { - -- icy orcish maul - itemid = 692, - type = "deequip", - slot = "hand" - }, - { - -- icy cranial basher - itemid = 691, - type = "equip", - slot = "hand" - }, - { - -- icy cranial basher - itemid = 691, - type = "deequip", - slot = "hand" - }, - { - -- icy crystal mace - itemid = 690, - type = "equip", - slot = "hand" - }, - { - -- icy crystal mace - itemid = 690, - type = "deequip", - slot = "hand" - }, - { - -- icy clerical mace - itemid = 689, - type = "equip", - slot = "hand" - }, - { - -- icy clerical mace - itemid = 689, - type = "deequip", - slot = "hand" - }, - { - -- icy war axe - itemid = 688, - type = "equip", - slot = "hand" - }, - { - -- icy war axe - itemid = 688, - type = "deequip", - slot = "hand" - }, - { - -- icy headchopper - itemid = 687, - type = "equip", - slot = "hand" - }, - { - -- icy headchopper - itemid = 687, - type = "deequip", - slot = "hand" - }, - { - -- icy heroic axe - itemid = 686, - type = "equip", - slot = "hand" - }, - { - -- icy heroic axe - itemid = 686, - type = "deequip", - slot = "hand" - }, - { - -- icy knight axe - itemid = 685, - type = "equip", - slot = "hand" - }, - { - -- icy knight axe - itemid = 685, - type = "deequip", - slot = "hand" - }, - { - -- icy barbarian axe - itemid = 684, - type = "equip", - slot = "hand" - }, - { - -- icy barbarian axe - itemid = 684, - type = "deequip", - slot = "hand" - }, - { - -- icy dragon slayer - itemid = 683, - type = "equip", - slot = "hand" - }, - { - -- icy dragon slayer - itemid = 683, - type = "deequip", - slot = "hand" - }, - { - -- icy blacksteel sword - itemid = 682, - type = "equip", - slot = "hand" - }, - { - -- icy blacksteel sword - itemid = 682, - type = "deequip", - slot = "hand" - }, - { - -- icy mystic blade - itemid = 681, - type = "equip", - slot = "hand" - }, - { - -- icy mystic blade - itemid = 681, - type = "deequip", - slot = "hand" - }, - { - -- icy relic sword - itemid = 680, - type = "equip", - slot = "hand" - }, - { - -- icy relic sword - itemid = 680, - type = "deequip", - slot = "hand" - }, - { - -- icy spike sword - itemid = 679, - type = "equip", - slot = "hand" - }, - { - -- icy spike sword - itemid = 679, - type = "deequip", - slot = "hand" - }, - { - -- fiery war hammer - itemid = 674, - type = "equip", - slot = "hand" - }, - { - -- fiery war hammer - itemid = 674, - type = "deequip", - slot = "hand" - }, - { - -- fiery orcish maul - itemid = 673, - type = "equip", - slot = "hand" - }, - { - -- fiery orcish maul - itemid = 673, - type = "deequip", - slot = "hand" - }, - { - -- fiery cranial basher - itemid = 672, - type = "equip", - slot = "hand" - }, - { - -- fiery cranial basher - itemid = 672, - type = "deequip", - slot = "hand" - }, - { - -- fiery crystal mace - itemid = 671, - type = "equip", - slot = "hand" - }, - { - -- fiery crystal mace - itemid = 671, - type = "deequip", - slot = "hand" - }, - { - -- fiery clerical mace - itemid = 670, - type = "equip", - slot = "hand" - }, - { - -- fiery clerical mace - itemid = 670, - type = "deequip", - slot = "hand" - }, - { - -- fiery war axe - itemid = 669, - type = "equip", - slot = "hand" - }, - { - -- fiery war axe - itemid = 669, - type = "deequip", - slot = "hand" - }, - { - -- fiery headchopper - itemid = 668, - type = "equip", - slot = "hand" - }, - { - -- fiery headchopper - itemid = 668, - type = "deequip", - slot = "hand" - }, - { - -- fiery heroic axe - itemid = 667, - type = "equip", - slot = "hand" - }, - { - -- fiery heroic axe - itemid = 667, - type = "deequip", - slot = "hand" - }, - { - -- fiery knight axe - itemid = 666, - type = "equip", - slot = "hand" - }, - { - -- fiery knight axe - itemid = 666, - type = "deequip", - slot = "hand" - }, - { - -- fiery barbarian axe - itemid = 665, - type = "equip", - slot = "hand" - }, - { - -- fiery barbarian axe - itemid = 665, - type = "deequip", - slot = "hand" - }, - { - -- fiery dragon slayer - itemid = 664, - type = "equip", - slot = "hand" - }, - { - -- fiery dragon slayer - itemid = 664, - type = "deequip", - slot = "hand" - }, - { - -- fiery blacksteel sword - itemid = 663, - type = "equip", - slot = "hand" - }, - { - -- fiery blacksteel sword - itemid = 663, - type = "deequip", - slot = "hand" - }, - { - -- fiery mystic blade - itemid = 662, - type = "equip", - slot = "hand" - }, - { - -- fiery mystic blade - itemid = 662, - type = "deequip", - slot = "hand" - }, - { - -- fiery relic sword - itemid = 661, - type = "equip", - slot = "hand" - }, - { - -- fiery relic sword - itemid = 661, - type = "deequip", - slot = "hand" - }, - { - -- fiery spike sword - itemid = 660, - type = "equip", - slot = "hand" - }, - { - -- fiery spike sword - itemid = 660, - type = "deequip", - slot = "hand" - }, - { - -- blue legs - itemid = 645, - type = "equip", - slot = "legs" - }, - { - -- blue legs - itemid = 645, - type = "deequip", - slot = "legs" - }, - { - -- family signet ring - itemid = 406, - type = "equip", - slot = "ring" - }, - { - -- family signet ring - itemid = 406, - type = "deequip", - slot = "ring" - }, - { - -- suspicious signet ring - itemid = 349, - type = "equip", - slot = "ring" - }, - { - -- suspicious signet ring - itemid = 349, - type = "deequip", - slot = "ring" - }, - { - -- mining helmet - itemid = 875, - type = "equip", - slot = "head" - }, - { - -- mining helmet - itemid = 875, - type = "deequip", - slot = "head" - }, - { - -- mammoth fur shorts - itemid = 7464, - type = "equip", - slot = "legs" - }, - { - -- mammoth fur shorts - itemid = 7464, - type = "deequip", - slot = "legs" - }, - { - -- mammoth fur cape - itemid = 7463, - type = "equip", - slot = "armor" - }, - { - -- mammoth fur cape - itemid = 7463, - type = "deequip", - slot = "armor" - }, - { - -- ragnir helmet - itemid = 7462, - type = "equip", - slot = "head" - }, - { - -- ragnir helmet - itemid = 7462, - type = "deequip", - slot = "head" - }, - { - -- krimhorn helmet - itemid = 7461, - type = "equip", - slot = "head" - }, - { - -- krimhorn helmet - itemid = 7461, - type = "deequip", - slot = "head" - }, - { - -- norse shield - itemid = 7460, - type = "equip", - slot = "shield" - }, - { - -- norse shield - itemid = 7460, - type = "deequip", - slot = "shield" - }, - { - -- pair of earmuffs - itemid = 7459, - type = "equip", - slot = "head" - }, - { - -- pair of earmuffs - itemid = 7459, - type = "deequip", - slot = "head" - }, - { - -- fur cap - itemid = 7458, - type = "equip", - slot = "head" - }, - { - -- fur cap - itemid = 7458, - type = "deequip", - slot = "head" - }, - { - -- fur boots - itemid = 7457, - type = "equip", - slot = "feet" - }, - { - -- fur boots - itemid = 7457, - type = "deequip", - slot = "feet" - }, - { - -- noble axe - itemid = 7456, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- noble axe - itemid = 7456, - type = "deequip", - slot = "hand" - }, - { - -- mythril axe - itemid = 7455, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- mythril axe - itemid = 7455, - type = "deequip", - slot = "hand" - }, - { - -- glorious axe - itemid = 7454, - type = "equip", - slot = "hand", - level = 30, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- glorious axe - itemid = 7454, - type = "deequip", - slot = "hand" - }, - { - -- executioner - itemid = 7453, - type = "equip", - slot = "hand", - level = 85, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- executioner - itemid = 7453, - type = "deequip", - slot = "hand" - }, - { - -- spiked squelcher - itemid = 7452, - type = "equip", - slot = "hand", - level = 30, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spiked squelcher - itemid = 7452, - type = "deequip", - slot = "hand" - }, - { - -- shadow sceptre - itemid = 7451, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- shadow sceptre - itemid = 7451, - type = "deequip", - slot = "hand" - }, - { - -- hammer of prophecy - itemid = 7450, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- hammer of prophecy - itemid = 7450, - type = "deequip", - slot = "hand" - }, - { - -- crystal sword - itemid = 7449, - type = "equip", - slot = "hand", - level = 25, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crystal sword - itemid = 7449, - type = "deequip", - slot = "hand" - }, - { - -- elvish bow - itemid = 7438, - type = "equip", - slot = "hand" - }, - { - -- elvish bow - itemid = 7438, - type = "deequip", - slot = "hand" - }, - { - -- sapphire hammer - itemid = 7437, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- sapphire hammer - itemid = 7437, - type = "deequip", - slot = "hand" - }, - { - -- angelic axe - itemid = 7436, - type = "equip", - slot = "hand", - level = 45, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- angelic axe - itemid = 7436, - type = "deequip", - slot = "hand" - }, - { - -- impaler - itemid = 7435, - type = "equip", - slot = "hand", - level = 85 - }, - { - -- impaler - itemid = 7435, - type = "deequip", - slot = "hand" - }, - { - -- royal axe - itemid = 7434, - type = "equip", - slot = "hand", - level = 75 - }, - { - -- royal axe - itemid = 7434, - type = "deequip", - slot = "hand" - }, - { - -- ravenwing - itemid = 7433, - type = "equip", - slot = "hand", - level = 65 - }, - { - -- ravenwing - itemid = 7433, - type = "deequip", - slot = "hand" - }, - { - -- furry club - itemid = 7432, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- furry club - itemid = 7432, - type = "deequip", - slot = "hand" - }, - { - -- demonbone - itemid = 7431, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- demonbone - itemid = 7431, - type = "deequip", - slot = "hand" - }, - { - -- dragonbone staff - itemid = 7430, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- dragonbone staff - itemid = 7430, - type = "deequip", - slot = "hand" - }, - { - -- blessed sceptre - itemid = 7429, - type = "equip", - slot = "hand", - level = 75 - }, - { - -- blessed sceptre - itemid = 7429, - type = "deequip", - slot = "hand" - }, - { - -- bonebreaker - itemid = 7428, - type = "equip", - slot = "hand", - level = 55, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- bonebreaker - itemid = 7428, - type = "deequip", - slot = "hand" - }, - { - -- chaos mace - itemid = 7427, - type = "equip", - slot = "hand", - level = 45 - }, - { - -- chaos mace - itemid = 7427, - type = "deequip", - slot = "hand" - }, - { - -- amber staff - itemid = 7426, - type = "equip", - slot = "hand", - level = 40 - }, - { - -- amber staff - itemid = 7426, - type = "deequip", - slot = "hand" - }, - { - -- taurus mace - itemid = 7425, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- taurus mace - itemid = 7425, - type = "deequip", - slot = "hand" - }, - { - -- lunar staff - itemid = 7424, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- lunar staff - itemid = 7424, - type = "deequip", - slot = "hand" - }, - { - -- skullcrusher - itemid = 7423, - type = "equip", - slot = "hand", - level = 85, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- skullcrusher - itemid = 7423, - type = "deequip", - slot = "hand" - }, - { - -- jade hammer - itemid = 7422, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- jade hammer - itemid = 7422, - type = "deequip", - slot = "hand" - }, - { - -- onyx flail - itemid = 7421, - type = "equip", - slot = "hand", - level = 65 - }, - { - -- onyx flail - itemid = 7421, - type = "deequip", - slot = "hand" - }, - { - -- reaper's axe - itemid = 7420, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- reaper's axe - itemid = 7420, - type = "deequip", - slot = "hand" - }, - { - -- dreaded cleaver - itemid = 7419, - type = "equip", - slot = "hand", - level = 40 - }, - { - -- dreaded cleaver - itemid = 7419, - type = "deequip", - slot = "hand" - }, - { - -- nightmare blade - itemid = 7418, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- nightmare blade - itemid = 7418, - type = "deequip", - slot = "hand" - }, - { - -- runed sword - itemid = 7417, - type = "equip", - slot = "hand", - level = 65 - }, - { - -- runed sword - itemid = 7417, - type = "deequip", - slot = "hand" - }, - { - -- bloody edge - itemid = 7416, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- bloody edge - itemid = 7416, - type = "deequip", - slot = "hand", - level = 55 - }, - { - -- cranial basher - itemid = 7415, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- cranial basher - itemid = 7415, - type = "deequip", - slot = "hand" - }, - { - -- abyss hammer - itemid = 7414, - type = "equip", - slot = "hand", - level = 60, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- abyss hammer - itemid = 7414, - type = "deequip", - slot = "hand" - }, - { - -- titan axe - itemid = 7413, - type = "equip", - slot = "hand", - level = 40, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- titan axe - itemid = 7413, - type = "deequip", - slot = "hand" - }, - { - -- butcher's axe - itemid = 7412, - type = "equip", - slot = "hand", - level = 45 - }, - { - -- butcher's axe - itemid = 7412, - type = "deequip", - slot = "hand" - }, - { - -- ornamented axe - itemid = 7411, - type = "equip", - slot = "hand", - level = 50 - }, - { - -- ornamented axe - itemid = 7411, - type = "deequip", - slot = "hand" - }, - { - -- queen's sceptre - itemid = 7410, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- queen's sceptre - itemid = 7410, - type = "deequip", - slot = "hand" - }, - { - -- northern star - itemid = 7409, - type = "equip", - slot = "hand", - level = 50 - }, - { - -- northern star - itemid = 7409, - type = "deequip", - slot = "hand" - }, - { - -- wyvern fang - itemid = 7408, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- wyvern fang - itemid = 7408, - type = "deequip", - slot = "hand" - }, - { - -- haunted blade - itemid = 7407, - type = "equip", - slot = "hand", - level = 30, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- haunted blade - itemid = 7407, - type = "deequip", - slot = "hand" - }, - { - -- blacksteel sword - itemid = 7406, - type = "equip", - slot = "hand", - level = 35, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blacksteel sword - itemid = 7406, - type = "deequip", - slot = "hand", - level = 35 - }, - { - -- havoc blade - itemid = 7405, - type = "equip", - slot = "hand", - level = 70, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- havoc blade - itemid = 7405, - type = "deequip", - slot = "hand" - }, - { - -- assassin dagger - itemid = 7404, - type = "equip", - slot = "hand", - level = 40 - }, - { - -- assassin dagger - itemid = 7404, - type = "deequip", - slot = "hand", - level = 40 - }, - { - -- berserker - itemid = 7403, - type = "equip", - slot = "hand", - level = 65 - }, - { - -- berserker - itemid = 7403, - type = "deequip", - slot = "hand", - level = 65, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- dragon slayer - itemid = 7402, - type = "equip", - slot = "hand", - level = 45, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- dragon slayer - itemid = 7402, - type = "deequip", - slot = "hand" - }, - { - -- orcish maul - itemid = 7392, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- orcish maul - itemid = 7392, - type = "deequip", - slot = "hand" - }, - { - -- thaian sword - itemid = 7391, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- thaian sword - itemid = 7391, - type = "deequip", - slot = "hand" - }, - { - -- the justice seeker - itemid = 7390, - type = "equip", - slot = "hand", - level = 75 - }, - { - -- the justice seeker - itemid = 7390, - type = "deequip", - slot = "hand" - }, - { - -- heroic axe - itemid = 7389, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- heroic axe - itemid = 7389, - type = "deequip", - slot = "hand" - }, - { - -- vile axe - itemid = 7388, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- vile axe - itemid = 7388, - type = "deequip", - slot = "hand" - }, - { - -- diamond sceptre - itemid = 7387, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- diamond sceptre - itemid = 7387, - type = "deequip", - slot = "hand" - }, - { - -- mercenary sword - itemid = 7386, - type = "equip", - slot = "hand", - level = 40, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mercenary sword - itemid = 7386, - type = "deequip", - slot = "hand" - }, - { - -- crimson sword - itemid = 7385, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- crimson sword - itemid = 7385, - type = "deequip", - slot = "hand", - level = 20 - }, - { - -- mystic blade - itemid = 7384, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- mystic blade - itemid = 7384, - type = "deequip", - slot = "hand" - }, - { - -- relic sword - itemid = 7383, - type = "equip", - slot = "hand", - level = 50 - }, - { - -- relic sword - itemid = 7383, - type = "deequip", - slot = "hand" - }, - { - -- demonrage sword - itemid = 7382, - type = "equip", - slot = "hand", - level = 60, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- demonrage sword - itemid = 7382, - type = "deequip", - slot = "hand" - }, - { - -- mammoth whopper - itemid = 7381, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- mammoth whopper - itemid = 7381, - type = "deequip", - slot = "hand" - }, - { - -- headchopper - itemid = 7380, - type = "equip", - slot = "hand", - level = 35, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- headchopper - itemid = 7380, - type = "deequip", - slot = "hand" - }, - { - -- brutetamer's staff - itemid = 7379, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- brutetamer's staff - itemid = 7379, - type = "deequip", - slot = "hand" - }, - { - -- royal spear - itemid = 7378, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- royal spear - itemid = 7378, - type = "deequip", - slot = "hand", - level = 25 - }, - { - -- assassin star - itemid = 7368, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- assassin star - itemid = 7368, - type = "deequip", - slot = "hand", - level = 80 - }, - { - -- enchanted spear - itemid = 7367, - type = "equip", - slot = "hand", - level = 42 - }, - { - -- enchanted spear - itemid = 7367, - type = "deequip", - slot = "hand", - level = 42 - }, - { - -- onyx arrow - itemid = 7365, - type = "equip", - slot = "ammo" - }, - { - -- onyx arrow - itemid = 7365, - type = "deequip", - slot = "ammo" - }, - { - -- sniper arrow - itemid = 7364, - type = "equip", - slot = "ammo" - }, - { - -- sniper arrow - itemid = 7364, - type = "deequip", - slot = "ammo" - }, - { - -- piercing bolt - itemid = 7363, - type = "equip", - slot = "ammo" - }, - { - -- piercing bolt - itemid = 7363, - type = "deequip", - slot = "ammo" - }, - { - -- flame of life - itemid = 7360, - type = "additem" - }, - { - -- flame of life - itemid = 7359, - type = "stepin" - }, - { - -- fur bag - itemid = 7343, - type = "equip", - slot = "backpack" - }, - { - -- fur bag - itemid = 7343, - type = "deequip", - slot = "backpack" - }, - { - -- fur backpack - itemid = 7342, - type = "equip", - slot = "backpack" - }, - { - -- fur backpack - itemid = 7342, - type = "deequip", - slot = "backpack" - }, - { - -- party hat - itemid = 6578, - type = "equip", - slot = "head" - }, - { - -- party hat - itemid = 6578, - type = "deequip", - slot = "head" - }, - { - -- ruthless axe - itemid = 6553, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ruthless axe - itemid = 6553, - type = "deequip", - slot = "hand" - }, - { - -- santa hat - itemid = 6531, - type = "equip", - slot = "head" - }, - { - -- santa hat - itemid = 6531, - type = "deequip", - slot = "head" - }, - { - -- infernal bolt - itemid = 6528, - type = "equip", - slot = "ammo" - }, - { - -- infernal bolt - itemid = 6528, - type = "deequip", - slot = "ammo" - }, - { - -- the avenger - itemid = 6527, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- the avenger - itemid = 6527, - type = "deequip", - slot = "hand" - }, - { - -- necromancer shield - itemid = 6432, - type = "equip", - slot = "shield" - }, - { - -- necromancer shield - itemid = 6432, - type = "deequip", - slot = "shield" - }, - { - -- nightmare shield - itemid = 6390, - type = "equip", - slot = "shield" - }, - { - -- nightmare shield - itemid = 6390, - type = "deequip", - slot = "shield" - }, - { - -- death ring - itemid = 6300, - type = "equip", - slot = "ring" - }, - { - -- death ring - itemid = 6300, - type = "deequip", - slot = "ring" - }, - { - -- death ring - itemid = 6299, - type = "equip", - slot = "ring" - }, - { - -- death ring - itemid = 6299, - type = "deequip", - slot = "ring" - }, - { - -- pair of soft boots - itemid = 6529, - type = "equip", - slot = "feet" - }, - { - -- pair of soft boots - itemid = 6529, - type = "deequip", - slot = "feet" - }, - { - -- tortoise shield - itemid = 6131, - type = "equip", - slot = "shield" - }, - { - -- tortoise shield - itemid = 6131, - type = "deequip", - slot = "shield" - }, - { - -- Dragha's spellbook - itemid = 6120, - type = "equip", - slot = "shield" - }, - { - -- Dragha's spellbook - itemid = 6120, - type = "deequip", - slot = "shield" - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = "equip", - slot = "hand" - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = "deequip", - slot = "hand" - }, - { - -- pirate hat - itemid = 6096, - type = "equip", - slot = "head" - }, - { - -- pirate hat - itemid = 6096, - type = "deequip", - slot = "head" - }, - { - -- pirate shirt - itemid = 6095, - type = "equip", - slot = "armor" - }, - { - -- pirate shirt - itemid = 6095, - type = "deequip", - slot = "armor" - }, - { - -- beach bag - itemid = 5950, - type = "equip", - slot = "backpack" - }, - { - -- beach bag - itemid = 5950, - type = "deequip", - slot = "backpack" - }, - { - -- beach backpack - itemid = 5949, - type = "equip", - slot = "backpack" - }, - { - -- beach backpack - itemid = 5949, - type = "deequip", - slot = "backpack" - }, - { - -- pirate bag - itemid = 5927, - type = "equip", - slot = "backpack" - }, - { - -- pirate bag - itemid = 5927, - type = "deequip", - slot = "backpack" - }, - { - -- pirate backpack - itemid = 5926, - type = "equip", - slot = "backpack" - }, - { - -- pirate backpack - itemid = 5926, - type = "deequip", - slot = "backpack" - }, - { - -- pirate knee breeches - itemid = 5918, - type = "equip", - slot = "legs" - }, - { - -- pirate knee breeches - itemid = 5918, - type = "deequip", - slot = "legs" - }, - { - -- bandana - itemid = 5917, - type = "equip", - slot = "head" - }, - { - -- bandana - itemid = 5917, - type = "deequip", - slot = "head" - }, - { - -- Ferumbras' hat - itemid = 5903, - type = "equip", - slot = "head" - }, - { - -- Ferumbras' hat - itemid = 5903, - type = "deequip", - slot = "head" - }, - { - -- arbalest - itemid = 5803, - type = "equip", - slot = "hand", - level = 75, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- arbalest - itemid = 5803, - type = "deequip", - slot = "hand" - }, - { - -- jewelled backpack - itemid = 5801, - type = "equip", - slot = "backpack" - }, - { - -- jewelled backpack - itemid = 5801, - type = "deequip", - slot = "backpack" - }, - { - -- skull helmet - itemid = 5741, - type = "equip", - slot = "head" - }, - { - -- skull helmet - itemid = 5741, - type = "deequip", - slot = "head" - }, - { - -- pirate boots - itemid = 5461, - type = "equip", - slot = "feet" - }, - { - -- pirate boots - itemid = 5461, - type = "deequip", - slot = "feet" - }, - { - -- helmet of the deep - itemid = 5460, - type = "equip", - slot = "head" - }, - { - -- helmet of the deep - itemid = 5460, - type = "deequip", - slot = "head" - }, - { - -- spectral dress - itemid = 4836, - type = "equip", - slot = "armor" - }, - { - -- spectral dress - itemid = 4836, - type = "deequip", - slot = "armor" - }, - { - -- bast skirt - itemid = 3560, - type = "equip", - slot = "legs" - }, - { - -- bast skirt - itemid = 3560, - type = "deequip", - slot = "legs" - }, - { - -- crocodile boots - itemid = 3556, - type = "equip", - slot = "feet" - }, - { - -- crocodile boots - itemid = 3556, - type = "deequip", - slot = "feet" - }, - { - -- salamander shield - itemid = 3445, - type = "equip", - slot = "shield" - }, - { - -- salamander shield - itemid = 3445, - type = "deequip", - slot = "shield" - }, - { - -- sentinel shield - itemid = 3444, - type = "equip", - slot = "shield" - }, - { - -- sentinel shield - itemid = 3444, - type = "deequip", - slot = "shield" - }, - { - -- tusk shield - itemid = 3443, - type = "equip", - slot = "shield" - }, - { - -- tusk shield - itemid = 3443, - type = "deequip", - slot = "shield" - }, - { - -- bonelord helmet - itemid = 3408, - type = "equip", - slot = "head" - }, - { - -- bonelord helmet - itemid = 3408, - type = "deequip", - slot = "head" - }, - { - -- charmer's tiara - itemid = 3407, - type = "equip", - slot = "head" - }, - { - -- charmer's tiara - itemid = 3407, - type = "deequip", - slot = "head" - }, - { - -- feather headdress - itemid = 3406, - type = "equip", - slot = "head" - }, - { - -- feather headdress - itemid = 3406, - type = "deequip", - slot = "head" - }, - { - -- horseman helmet - itemid = 3405, - type = "equip", - slot = "head" - }, - { - -- horseman helmet - itemid = 3405, - type = "deequip", - slot = "head" - }, - { - -- leopard armor - itemid = 3404, - type = "equip", - slot = "armor" - }, - { - -- leopard armor - itemid = 3404, - type = "deequip", - slot = "armor" - }, - { - -- tribal mask - itemid = 3403, - type = "equip", - slot = "head" - }, - { - -- tribal mask - itemid = 3403, - type = "deequip", - slot = "head" - }, - { - -- banana staff - itemid = 3348, - type = "equip", - slot = "hand" - }, - { - -- banana staff - itemid = 3348, - type = "deequip", - slot = "hand" - }, - { - -- hunting spear - itemid = 3347, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- hunting spear - itemid = 3347, - type = "deequip", - slot = "hand", - level = 20 - }, - { - -- ripper lance - itemid = 3346, - type = "equip", - slot = "hand" - }, - { - -- ripper lance - itemid = 3346, - type = "deequip", - slot = "hand" - }, - { - -- templar scytheblade - itemid = 3345, - type = "equip", - slot = "hand" - }, - { - -- templar scytheblade - itemid = 3345, - type = "deequip", - slot = "hand" - }, - { - -- beastslayer axe - itemid = 3344, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- beastslayer axe - itemid = 3344, - type = "deequip", - slot = "hand" - }, - { - -- lich staff - itemid = 3343, - type = "equip", - slot = "hand", - level = 40 - }, - { - -- lich staff - itemid = 3343, - type = "deequip", - slot = "hand" - }, - { - -- old and used backpack - itemid = 3244, - type = "equip", - slot = "backpack" - }, - { - -- old and used backpack - itemid = 3244, - type = "deequip", - slot = "backpack" - }, - { - -- camouflage backpack - itemid = 2872, - type = "equip", - slot = "backpack" - }, - { - -- camouflage backpack - itemid = 2872, - type = "deequip", - slot = "backpack" - }, - { - -- camouflage bag - itemid = 2864, - type = "equip", - slot = "backpack" - }, - { - -- camouflage bag - itemid = 2864, - type = "deequip", - slot = "backpack" - }, - { - -- post officer's hat - itemid = 3576, - type = "equip", - slot = "head" - }, - { - -- post officer's hat - itemid = 3576, - type = "deequip", - slot = "head" - }, - { - -- wood cape - itemid = 3575, - type = "equip", - slot = "head", - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- wood cape - itemid = 3575, - type = "deequip", - slot = "head" - }, - { - -- mystic turban - itemid = 3574, - type = "equip", - slot = "head" - }, - { - -- mystic turban - itemid = 3574, - type = "deequip", - slot = "head" - }, - { - -- magician hat - itemid = 3573, - type = "equip", - slot = "head" - }, - { - -- magician hat - itemid = 3573, - type = "deequip", - slot = "head" - }, - { - -- scarf - itemid = 3572, - type = "equip", - slot = "necklace" - }, - { - -- scarf - itemid = 3572, - type = "deequip", - slot = "necklace" - }, - { - -- ranger's cloak - itemid = 3571, - type = "equip", - slot = "armor", - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ranger's cloak - itemid = 3571, - type = "deequip", - slot = "armor" - }, - { - -- ball gown - itemid = 3570, - type = "equip", - slot = "armor" - }, - { - -- ball gown - itemid = 3570, - type = "deequip", - slot = "armor" - }, - { - -- white dress - itemid = 3569, - type = "equip", - slot = "armor" - }, - { - -- white dress - itemid = 3569, - type = "deequip", - slot = "armor" - }, - { - -- simple dress - itemid = 3568, - type = "equip", - slot = "armor" - }, - { - -- simple dress - itemid = 3568, - type = "deequip", - slot = "armor" - }, - { - -- blue robe - itemid = 3567, - type = "equip", - slot = "armor" - }, - { - -- blue robe - itemid = 3567, - type = "deequip", - slot = "armor" - }, - { - -- red robe - itemid = 3566, - type = "equip", - slot = "armor" - }, - { - -- red robe - itemid = 3566, - type = "deequip", - slot = "armor" - }, - { - -- cape - itemid = 3565, - type = "equip", - slot = "armor" - }, - { - -- cape - itemid = 3565, - type = "deequip", - slot = "armor" - }, - { - -- red tunic - itemid = 3564, - type = "equip", - slot = "armor" - }, - { - -- red tunic - itemid = 3564, - type = "deequip", - slot = "armor" - }, - { - -- green tunic - itemid = 3563, - type = "equip", - slot = "armor" - }, - { - -- green tunic - itemid = 3563, - type = "deequip", - slot = "armor" - }, - { - -- coat - itemid = 3562, - type = "equip", - slot = "armor" - }, - { - -- coat - itemid = 3562, - type = "deequip", - slot = "armor" - }, - { - -- jacket - itemid = 3561, - type = "equip", - slot = "armor" - }, - { - -- jacket - itemid = 3561, - type = "deequip", - slot = "armor" - }, - { - -- leather legs - itemid = 3559, - type = "equip", - slot = "legs" - }, - { - -- leather legs - itemid = 3559, - type = "deequip", - slot = "legs" - }, - { - -- chain legs - itemid = 3558, - type = "equip", - slot = "legs" - }, - { - -- chain legs - itemid = 3558, - type = "deequip", - slot = "legs" - }, - { - -- plate legs - itemid = 3557, - type = "equip", - slot = "legs" - }, - { - -- plate legs - itemid = 3557, - type = "deequip", - slot = "legs" - }, - { - -- golden boots - itemid = 3555, - type = "equip", - slot = "feet" - }, - { - -- golden boots - itemid = 3555, - type = "deequip", - slot = "feet" - }, - { - -- steel boots - itemid = 3554, - type = "equip", - slot = "feet" - }, - { - -- steel boots - itemid = 3554, - type = "deequip", - slot = "feet" - }, - { - -- bunnyslippers - itemid = 3553, - type = "equip", - slot = "feet" - }, - { - -- bunnyslippers - itemid = 3553, - type = "deequip", - slot = "feet" - }, - { - -- leather boots - itemid = 3552, - type = "equip", - slot = "feet" - }, - { - -- leather boots - itemid = 3552, - type = "deequip", - slot = "feet" - }, - { - -- sandals - itemid = 3551, - type = "equip", - slot = "feet" - }, - { - -- sandals - itemid = 3551, - type = "deequip", - slot = "feet" - }, - { - -- patched boots - itemid = 3550, - type = "equip", - slot = "feet" - }, - { - -- patched boots - itemid = 3550, - type = "deequip", - slot = "feet" - }, - { - -- pair of soft boots - itemid = 3549, - type = "equip", - slot = "feet" - }, - { - -- pair of soft boots - itemid = 3549, - type = "deequip", - slot = "feet" - }, - { - -- scythe - itemid = 3453, - type = "equip", - slot = "hand" - }, - { - -- scythe - itemid = 3453, - type = "deequip", - slot = "hand" - }, - { - -- power bolt - itemid = 3450, - type = "equip", - slot = "ammo" - }, - { - -- power bolt - itemid = 3450, - type = "deequip", - slot = "ammo" - }, - { - -- arrow - itemid = 3447, - type = "equip", - slot = "ammo" - }, - { - -- arrow - itemid = 3447, - type = "deequip", - slot = "ammo" - }, - { - -- bolt - itemid = 3446, - type = "equip", - slot = "ammo" - }, - { - -- bolt - itemid = 3446, - type = "deequip", - slot = "ammo" - }, - { - -- tempest shield - itemid = 3442, - type = "equip", - slot = "shield" - }, - { - -- tempest shield - itemid = 3442, - type = "deequip", - slot = "shield" - }, - { - -- bone shield - itemid = 3441, - type = "equip", - slot = "shield" - }, - { - -- bone shield - itemid = 3441, - type = "deequip", - slot = "shield" - }, - { - -- scarab shield - itemid = 3440, - type = "equip", - slot = "shield" - }, - { - -- scarab shield - itemid = 3440, - type = "deequip", - slot = "shield" - }, - { - -- phoenix shield - itemid = 3439, - type = "equip", - slot = "shield" - }, - { - -- phoenix shield - itemid = 3439, - type = "deequip", - slot = "shield" - }, - { - -- eagle shield - itemid = 3438, - type = "equip", - slot = "shield" - }, - { - -- eagle shield - itemid = 3438, - type = "deequip", - slot = "shield" - }, - { - -- amazon shield - itemid = 3437, - type = "equip", - slot = "shield" - }, - { - -- amazon shield - itemid = 3437, - type = "deequip", - slot = "shield" - }, - { - -- medusa shield - itemid = 3436, - type = "equip", - slot = "shield" - }, - { - -- medusa shield - itemid = 3436, - type = "deequip", - slot = "shield" - }, - { - -- castle shield - itemid = 3435, - type = "equip", - slot = "shield" - }, - { - -- castle shield - itemid = 3435, - type = "deequip", - slot = "shield" - }, - { - -- vampire shield - itemid = 3434, - type = "equip", - slot = "shield" - }, - { - -- vampire shield - itemid = 3434, - type = "deequip", - slot = "shield" - }, - { - -- griffin shield - itemid = 3433, - type = "equip", - slot = "shield" - }, - { - -- griffin shield - itemid = 3433, - type = "deequip", - slot = "shield" - }, - { - -- ancient shield - itemid = 3432, - type = "equip", - slot = "shield" - }, - { - -- ancient shield - itemid = 3432, - type = "deequip", - slot = "shield" - }, - { - -- viking shield - itemid = 3431, - type = "equip", - slot = "shield" - }, - { - -- viking shield - itemid = 3431, - type = "deequip", - slot = "shield" - }, - { - -- copper shield - itemid = 3430, - type = "equip", - slot = "shield" - }, - { - -- copper shield - itemid = 3430, - type = "deequip", - slot = "shield" - }, - { - -- black shield - itemid = 3429, - type = "equip", - slot = "shield" - }, - { - -- black shield - itemid = 3429, - type = "deequip", - slot = "shield" - }, - { - -- tower shield - itemid = 3428, - type = "equip", - slot = "shield" - }, - { - -- tower shield - itemid = 3428, - type = "deequip", - slot = "shield" - }, - { - -- rose shield - itemid = 3427, - type = "equip", - slot = "shield" - }, - { - -- rose shield - itemid = 3427, - type = "deequip", - slot = "shield" - }, - { - -- studded shield - itemid = 3426, - type = "equip", - slot = "shield" - }, - { - -- studded shield - itemid = 3426, - type = "deequip", - slot = "shield" - }, - { - -- dwarven shield - itemid = 3425, - type = "equip", - slot = "shield" - }, - { - -- dwarven shield - itemid = 3425, - type = "deequip", - slot = "shield" - }, - { - -- ornamented shield - itemid = 3424, - type = "equip", - slot = "shield" - }, - { - -- ornamented shield - itemid = 3424, - type = "deequip", - slot = "shield" - }, - { - -- blessed shield - itemid = 3423, - type = "equip", - slot = "shield" - }, - { - -- blessed shield - itemid = 3423, - type = "deequip", - slot = "shield" - }, - { - -- great shield - itemid = 3422, - type = "equip", - slot = "shield" - }, - { - -- great shield - itemid = 3422, - type = "deequip", - slot = "shield" - }, - { - -- dark shield - itemid = 3421, - type = "equip", - slot = "shield" - }, - { - -- dark shield - itemid = 3421, - type = "deequip", - slot = "shield" - }, - { - -- demon shield - itemid = 3420, - type = "equip", - slot = "shield" - }, - { - -- demon shield - itemid = 3420, - type = "deequip", - slot = "shield" - }, - { - -- crown shield - itemid = 3419, - type = "equip", - slot = "shield" - }, - { - -- crown shield - itemid = 3419, - type = "deequip", - slot = "shield" - }, - { - -- bonelord shield - itemid = 3418, - type = "equip", - slot = "shield" - }, - { - -- bonelord shield - itemid = 3418, - type = "deequip", - slot = "shield" - }, - { - -- shield of honour - itemid = 3417, - type = "equip", - slot = "shield" - }, - { - -- shield of honour - itemid = 3417, - type = "deequip", - slot = "shield" - }, - { - -- dragon shield - itemid = 3416, - type = "equip", - slot = "shield" - }, - { - -- dragon shield - itemid = 3416, - type = "deequip", - slot = "shield" - }, - { - -- guardian shield - itemid = 3415, - type = "equip", - slot = "shield" - }, - { - -- guardian shield - itemid = 3415, - type = "deequip", - slot = "shield" - }, - { - -- mastermind shield - itemid = 3414, - type = "equip", - slot = "shield" - }, - { - -- mastermind shield - itemid = 3414, - type = "deequip", - slot = "shield" - }, - { - -- battle shield - itemid = 3413, - type = "equip", - slot = "shield" - }, - { - -- battle shield - itemid = 3413, - type = "deequip", - slot = "shield" - }, - { - -- wooden shield - itemid = 3412, - type = "equip", - slot = "shield" - }, - { - -- wooden shield - itemid = 3412, - type = "deequip", - slot = "shield" - }, - { - -- brass shield - itemid = 3411, - type = "equip", - slot = "shield" - }, - { - -- brass shield - itemid = 3411, - type = "deequip", - slot = "shield" - }, - { - -- plate shield - itemid = 3410, - type = "equip", - slot = "shield" - }, - { - -- plate shield - itemid = 3410, - type = "deequip", - slot = "shield" - }, - { - -- steel shield - itemid = 3409, - type = "equip", - slot = "shield" - }, - { - -- steel shield - itemid = 3409, - type = "deequip", - slot = "shield" - }, - { - -- native armor - itemid = 3402, - type = "equip", - slot = "armor" - }, - { - -- native armor - itemid = 3402, - type = "deequip", - slot = "armor" - }, - { - -- elven legs - itemid = 3401, - type = "equip", - slot = "legs" - }, - { - -- elven legs - itemid = 3401, - type = "deequip", - slot = "legs" - }, - { - -- dragon scale helmet - itemid = 3400, - type = "equip", - slot = "head" - }, - { - -- dragon scale helmet - itemid = 3400, - type = "deequip", - slot = "head" - }, - { - -- elven mail - itemid = 3399, - type = "equip", - slot = "armor" - }, - { - -- elven mail - itemid = 3399, - type = "deequip", - slot = "armor" - }, - { - -- dwarven legs - itemid = 3398, - type = "equip", - slot = "legs" - }, - { - -- dwarven legs - itemid = 3398, - type = "deequip", - slot = "legs" - }, - { - -- dwarven armor - itemid = 3397, - type = "equip", - slot = "armor" - }, - { - -- dwarven armor - itemid = 3397, - type = "deequip", - slot = "armor" - }, - { - -- dwarven helmet - itemid = 3396, - type = "equip", - slot = "head" - }, - { - -- dwarven helmet - itemid = 3396, - type = "deequip", - slot = "head" - }, - { - -- ceremonial mask - itemid = 3395, - type = "equip", - slot = "head" - }, - { - -- ceremonial mask - itemid = 3395, - type = "deequip", - slot = "head" - }, - { - -- amazon armor - itemid = 3394, - type = "equip", - slot = "armor", - level = 60, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- amazon armor - itemid = 3394, - type = "deequip", - slot = "armor", - level = 60 - }, - { - -- amazon helmet - itemid = 3393, - type = "equip", - slot = "head" - }, - { - -- amazon helmet - itemid = 3393, - type = "deequip", - slot = "head" - }, - { - -- royal helmet - itemid = 3392, - type = "equip", - slot = "head" - }, - { - -- royal helmet - itemid = 3392, - type = "deequip", - slot = "head" - }, - { - -- crusader helmet - itemid = 3391, - type = "equip", - slot = "head" - }, - { - -- crusader helmet - itemid = 3391, - type = "deequip", - slot = "head" - }, - { - -- horned helmet - itemid = 3390, - type = "equip", - slot = "head" - }, - { - -- horned helmet - itemid = 3390, - type = "deequip", - slot = "head" - }, - { - -- demon legs - itemid = 3389, - type = "equip", - slot = "legs" - }, - { - -- demon legs - itemid = 3389, - type = "deequip", - slot = "legs" - }, - { - -- demon armor - itemid = 3388, - type = "equip", - slot = "armor" - }, - { - -- demon armor - itemid = 3388, - type = "deequip", - slot = "armor" - }, - { - -- demon helmet - itemid = 3387, - type = "equip", - slot = "head" - }, - { - -- demon helmet - itemid = 3387, - type = "deequip", - slot = "head" - }, - { - -- dragon scale mail - itemid = 3386, - type = "equip", - slot = "armor", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- dragon scale mail - itemid = 3386, - type = "deequip", - slot = "armor" - }, - { - -- crown helmet - itemid = 3385, - type = "equip", - slot = "head" - }, - { - -- crown helmet - itemid = 3385, - type = "deequip", - slot = "head" - }, - { - -- dark helmet - itemid = 3384, - type = "equip", - slot = "head" - }, - { - -- dark helmet - itemid = 3384, - type = "deequip", - slot = "head" - }, - { - -- dark armor - itemid = 3383, - type = "equip", - slot = "armor" - }, - { - -- dark armor - itemid = 3383, - type = "deequip", - slot = "armor" - }, - { - -- crown legs - itemid = 3382, - type = "equip", - slot = "legs", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- crown legs - itemid = 3382, - type = "deequip", - slot = "legs" - }, - { - -- crown armor - itemid = 3381, - type = "equip", - slot = "armor", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- crown armor - itemid = 3381, - type = "deequip", - slot = "armor" - }, - { - -- noble armor - itemid = 3380, - type = "equip", - slot = "armor" - }, - { - -- noble armor - itemid = 3380, - type = "deequip", - slot = "armor" - }, - { - -- doublet - itemid = 3379, - type = "equip", - slot = "armor" - }, - { - -- doublet - itemid = 3379, - type = "deequip", - slot = "armor" - }, - { - -- studded armor - itemid = 3378, - type = "equip", - slot = "armor" - }, - { - -- studded armor - itemid = 3378, - type = "deequip", - slot = "armor" - }, - { - -- scale armor - itemid = 3377, - type = "equip", - slot = "armor" - }, - { - -- scale armor - itemid = 3377, - type = "deequip", - slot = "armor" - }, - { - -- studded helmet - itemid = 3376, - type = "equip", - slot = "head" - }, - { - -- studded helmet - itemid = 3376, - type = "deequip", - slot = "head" - }, - { - -- soldier helmet - itemid = 3375, - type = "equip", - slot = "head" - }, - { - -- soldier helmet - itemid = 3375, - type = "deequip", - slot = "head" - }, - { - -- legion helmet - itemid = 3374, - type = "equip", - slot = "head" - }, - { - -- legion helmet - itemid = 3374, - type = "deequip", - slot = "head" - }, - { - -- strange helmet - itemid = 3373, - type = "equip", - slot = "head" - }, - { - -- strange helmet - itemid = 3373, - type = "deequip", - slot = "head" - }, - { - -- brass legs - itemid = 3372, - type = "equip", - slot = "legs" - }, - { - -- brass legs - itemid = 3372, - type = "deequip", - slot = "legs" - }, - { - -- knight legs - itemid = 3371, - type = "equip", - slot = "legs", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- knight legs - itemid = 3371, - type = "deequip", - slot = "legs" - }, - { - -- knight armor - itemid = 3370, - type = "equip", - slot = "armor", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- knight armor - itemid = 3370, - type = "deequip", - slot = "armor" - }, - { - -- warrior helmet - itemid = 3369, - type = "equip", - slot = "head" - }, - { - -- warrior helmet - itemid = 3369, - type = "deequip", - slot = "head" - }, - { - -- winged helmet - itemid = 3368, - type = "equip", - slot = "head" - }, - { - -- winged helmet - itemid = 3368, - type = "deequip", - slot = "head" - }, - { - -- viking helmet - itemid = 3367, - type = "equip", - slot = "head" - }, - { - -- viking helmet - itemid = 3367, - type = "deequip", - slot = "head" - }, - { - -- magic plate armor - itemid = 3366, - type = "equip", - slot = "armor", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- magic plate armor - itemid = 3366, - type = "deequip", - slot = "armor" - }, - { - -- golden helmet - itemid = 3365, - type = "equip", - slot = "head" - }, - { - -- golden helmet - itemid = 3365, - type = "deequip", - slot = "head" - }, - { - -- golden legs - itemid = 3364, - type = "equip", - slot = "legs", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- golden legs - itemid = 3364, - type = "deequip", - slot = "legs" - }, - { - -- dragon scale legs - itemid = 3363, - type = "equip", - slot = "legs" - }, - { - -- dragon scale legs - itemid = 3363, - type = "deequip", - slot = "legs" - }, - { - -- studded legs - itemid = 3362, - type = "equip", - slot = "legs" - }, - { - -- studded legs - itemid = 3362, - type = "deequip", - slot = "legs" - }, - { - -- leather armor - itemid = 3361, - type = "equip", - slot = "armor" - }, - { - -- leather armor - itemid = 3361, - type = "deequip", - slot = "armor" - }, - { - -- golden armor - itemid = 3360, - type = "equip", - slot = "armor", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- golden armor - itemid = 3360, - type = "deequip", - slot = "armor" - }, - { - -- brass armor - itemid = 3359, - type = "equip", - slot = "armor" - }, - { - -- brass armor - itemid = 3359, - type = "deequip", - slot = "armor" - }, - { - -- chain armor - itemid = 3358, - type = "equip", - slot = "armor" - }, - { - -- chain armor - itemid = 3358, - type = "deequip", - slot = "armor" - }, - { - -- plate armor - itemid = 3357, - type = "equip", - slot = "armor" - }, - { - -- plate armor - itemid = 3357, - type = "deequip", - slot = "armor" - }, - { - -- devil helmet - itemid = 3356, - type = "equip", - slot = "head" - }, - { - -- devil helmet - itemid = 3356, - type = "deequip", - slot = "head" - }, - { - -- leather helmet - itemid = 3355, - type = "equip", - slot = "head" - }, - { - -- leather helmet - itemid = 3355, - type = "deequip", - slot = "head" - }, - { - -- brass helmet - itemid = 3354, - type = "equip", - slot = "head" - }, - { - -- brass helmet - itemid = 3354, - type = "deequip", - slot = "head" - }, - { - -- iron helmet - itemid = 3353, - type = "equip", - slot = "head" - }, - { - -- iron helmet - itemid = 3353, - type = "deequip", - slot = "head" - }, - { - -- chain helmet - itemid = 3352, - type = "equip", - slot = "head" - }, - { - -- chain helmet - itemid = 3352, - type = "deequip", - slot = "head" - }, - { - -- steel helmet - itemid = 3351, - type = "equip", - slot = "head" - }, - { - -- steel helmet - itemid = 3351, - type = "deequip", - slot = "head" - }, - { - -- bow - itemid = 3350, - type = "equip", - slot = "hand" - }, - { - -- bow - itemid = 3350, - type = "deequip", - slot = "hand" - }, - { - -- crossbow - itemid = 3349, - type = "equip", - slot = "hand" - }, - { - -- crossbow - itemid = 3349, - type = "deequip", - slot = "hand" - }, - { - -- war axe - itemid = 3342, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- war axe - itemid = 3342, - type = "deequip", - slot = "hand" - }, - { - -- arcane staff - itemid = 3341, - type = "equip", - slot = "hand", - level = 75 - }, - { - -- arcane staff - itemid = 3341, - type = "deequip", - slot = "hand" - }, - { - -- heavy mace - itemid = 3340, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- heavy mace - itemid = 3340, - type = "deequip", - slot = "hand" - }, - { - -- djinn blade - itemid = 3339, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- djinn blade - itemid = 3339, - type = "deequip", - slot = "hand" - }, - { - -- bone sword - itemid = 3338, - type = "equip", - slot = "hand" - }, - { - -- bone sword - itemid = 3338, - type = "deequip", - slot = "hand" - }, - { - -- bone club - itemid = 3337, - type = "equip", - slot = "hand" - }, - { - -- bone club - itemid = 3337, - type = "deequip", - slot = "hand" - }, - { - -- studded club - itemid = 3336, - type = "equip", - slot = "hand" - }, - { - -- studded club - itemid = 3336, - type = "deequip", - slot = "hand" - }, - { - -- twin axe - itemid = 3335, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- twin axe - itemid = 3335, - type = "deequip", - slot = "hand" - }, - { - -- pharaoh sword - itemid = 3334, - type = "equip", - slot = "hand", - level = 45 - }, - { - -- pharaoh sword - itemid = 3334, - type = "deequip", - slot = "hand" - }, - { - -- crystal mace - itemid = 3333, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- crystal mace - itemid = 3333, - type = "deequip", - slot = "hand" - }, - { - -- hammer of wrath - itemid = 3332, - type = "equip", - slot = "hand", - level = 65, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- hammer of wrath - itemid = 3332, - type = "deequip", - slot = "hand" - }, - { - -- ravager's axe - itemid = 3331, - type = "equip", - slot = "hand", - level = 70 - }, - { - -- ravager's axe - itemid = 3331, - type = "deequip", - slot = "hand" - }, - { - -- heavy machete - itemid = 3330, - type = "equip", - slot = "hand" - }, - { - -- heavy machete - itemid = 3330, - type = "deequip", - slot = "hand" - }, - { - -- daramian axe - itemid = 3329, - type = "equip", - slot = "hand" - }, - { - -- daramian axe - itemid = 3329, - type = "deequip", - slot = "hand" - }, - { - -- daramian waraxe - itemid = 3328, - type = "equip", - slot = "hand", - level = 25, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- daramian waraxe - itemid = 3328, - type = "deequip", - slot = "hand" - }, - { - -- daramian mace - itemid = 3327, - type = "equip", - slot = "hand" - }, - { - -- daramian mace - itemid = 3327, - type = "deequip", - slot = "hand" - }, - { - -- epee - itemid = 3326, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- epee - itemid = 3326, - type = "deequip", - slot = "hand" - }, - { - -- light mace - itemid = 3325, - type = "equip", - slot = "hand" - }, - { - -- light mace - itemid = 3325, - type = "deequip", - slot = "hand" - }, - { - -- skull staff - itemid = 3324, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- skull staff - itemid = 3324, - type = "deequip", - slot = "hand" - }, - { - -- dwarven axe - itemid = 3323, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- dwarven axe - itemid = 3323, - type = "deequip", - slot = "hand" - }, - { - -- dragon hammer - itemid = 3322, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- dragon hammer - itemid = 3322, - type = "deequip", - slot = "hand" - }, - { - -- enchanted staff - itemid = 3321, - type = "equip", - slot = "hand" - }, - { - -- enchanted staff - itemid = 3321, - type = "deequip", - slot = "hand" - }, - { - -- fire axe - itemid = 3320, - type = "equip", - slot = "hand", - level = 35 - }, - { - -- fire axe - itemid = 3320, - type = "deequip", - slot = "hand" - }, - { - -- stonecutter axe - itemid = 3319, - type = "equip", - slot = "hand", - level = 90 - }, - { - -- stonecutter axe - itemid = 3319, - type = "deequip", - slot = "hand" - }, - { - -- knight axe - itemid = 3318, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- knight axe - itemid = 3318, - type = "deequip", - slot = "hand" - }, - { - -- barbarian axe - itemid = 3317, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- barbarian axe - itemid = 3317, - type = "deequip", - slot = "hand" - }, - { - -- orcish axe - itemid = 3316, - type = "equip", - slot = "hand" - }, - { - -- orcish axe - itemid = 3316, - type = "deequip", - slot = "hand" - }, - { - -- guardian halberd - itemid = 3315, - type = "equip", - slot = "hand", - level = 55 - }, - { - -- guardian halberd - itemid = 3315, - type = "deequip", - slot = "hand" - }, - { - -- naginata - itemid = 3314, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- naginata - itemid = 3314, - type = "deequip", - slot = "hand" - }, - { - -- obsidian lance - itemid = 3313, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- obsidian lance - itemid = 3313, - type = "deequip", - slot = "hand" - }, - { - -- silver mace - itemid = 3312, - type = "equip", - slot = "hand", - level = 45 - }, - { - -- silver mace - itemid = 3312, - type = "deequip", - slot = "hand" - }, - { - -- clerical mace - itemid = 3311, - type = "equip", - slot = "hand", - level = 20 - }, - { - -- clerical mace - itemid = 3311, - type = "deequip", - slot = "hand" - }, - { - -- iron hammer - itemid = 3310, - type = "equip", - slot = "hand" - }, - { - -- iron hammer - itemid = 3310, - type = "deequip", - slot = "hand" - }, - { - -- thunder hammer - itemid = 3309, - type = "equip", - slot = "hand", - level = 85 - }, - { - -- thunder hammer - itemid = 3309, - type = "deequip", - slot = "hand" - }, - { - -- machete - itemid = 3308, - type = "equip", - slot = "hand" - }, - { - -- machete - itemid = 3308, - type = "deequip", - slot = "hand" - }, - { - -- scimitar - itemid = 3307, - type = "equip", - slot = "hand" - }, - { - -- scimitar - itemid = 3307, - type = "deequip", - slot = "hand" - }, - { - -- golden sickle - itemid = 3306, - type = "equip", - slot = "hand" - }, - { - -- golden sickle - itemid = 3306, - type = "deequip", - slot = "hand" - }, - { - -- battle hammer - itemid = 3305, - type = "equip", - slot = "hand" - }, - { - -- battle hammer - itemid = 3305, - type = "deequip", - slot = "hand" - }, - { - -- crowbar - itemid = 3304, - type = "equip", - slot = "hand" - }, - { - -- crowbar - itemid = 3304, - type = "deequip", - slot = "hand" - }, - { - -- great axe - itemid = 3303, - type = "equip", - slot = "hand", - level = 95, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- great axe - itemid = 3303, - type = "deequip", - slot = "hand" - }, - { - -- dragon lance - itemid = 3302, - type = "equip", - slot = "hand", - level = 60 - }, - { - -- dragon lance - itemid = 3302, - type = "deequip", - slot = "hand" - }, - { - -- broadsword - itemid = 3301, - type = "equip", - slot = "hand", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- broadsword - itemid = 3301, - type = "deequip", - slot = "hand", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- katana - itemid = 3300, - type = "equip", - slot = "hand" - }, - { - -- katana - itemid = 3300, - type = "deequip", - slot = "hand" - }, - { - -- poison dagger - itemid = 3299, - type = "equip", - slot = "hand" - }, - { - -- poison dagger - itemid = 3299, - type = "deequip", - slot = "hand" - }, - { - -- throwing knife - itemid = 3298, - type = "equip", - slot = "hand" - }, - { - -- throwing knife - itemid = 3298, - type = "deequip", - slot = "hand" - }, - { - -- serpent sword - itemid = 3297, - type = "equip", - slot = "hand" - }, - { - -- serpent sword - itemid = 3297, - type = "deequip", - slot = "hand" - }, - { - -- warlord sword - itemid = 3296, - type = "equip", - slot = "hand", - level = 120, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- warlord sword - itemid = 3296, - type = "deequip", - slot = "hand" - }, - { - -- bright sword - itemid = 3295, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- bright sword - itemid = 3295, - type = "deequip", - slot = "hand", - level = 30 - }, - { - -- short sword - itemid = 3294, - type = "equip", - slot = "hand" - }, - { - -- short sword - itemid = 3294, - type = "deequip", - slot = "hand" - }, - { - -- sickle - itemid = 3293, - type = "equip", - slot = "hand" - }, - { - -- sickle - itemid = 3293, - type = "deequip", - slot = "hand" - }, - { - -- combat knife - itemid = 3292, - type = "equip", - slot = "hand" - }, - { - -- combat knife - itemid = 3292, - type = "deequip", - slot = "hand" - }, - { - -- knife - itemid = 3291, - type = "equip", - slot = "hand" - }, - { - -- knife - itemid = 3291, - type = "deequip", - slot = "hand" - }, - { - -- silver dagger - itemid = 3290, - type = "equip", - slot = "hand" - }, - { - -- silver dagger - itemid = 3290, - type = "deequip", - slot = "hand" - }, - { - -- staff - itemid = 3289, - type = "equip", - slot = "hand" - }, - { - -- staff - itemid = 3289, - type = "deequip", - slot = "hand" - }, - { - -- magic sword - itemid = 3288, - type = "equip", - slot = "hand", - level = 80 - }, - { - -- magic sword - itemid = 3288, - type = "deequip", - slot = "hand" - }, - { - -- throwing star - itemid = 3287, - type = "equip", - slot = "hand" - }, - { - -- throwing star - itemid = 3287, - type = "deequip", - slot = "hand" - }, - { - -- mace - itemid = 3286, - type = "equip", - slot = "hand" - }, - { - -- mace - itemid = 3286, - type = "deequip", - slot = "hand" - }, - { - -- longsword - itemid = 3285, - type = "equip", - slot = "hand" - }, - { - -- longsword - itemid = 3285, - type = "deequip", - slot = "hand" - }, - { - -- ice rapier - itemid = 3284, - type = "equip", - slot = "hand" - }, - { - -- ice rapier - itemid = 3284, - type = "deequip", - slot = "hand" - }, - { - -- carlin sword - itemid = 3283, - type = "equip", - slot = "hand" - }, - { - -- carlin sword - itemid = 3283, - type = "deequip", - slot = "hand" - }, - { - -- morning star - itemid = 3282, - type = "equip", - slot = "hand" - }, - { - -- morning star - itemid = 3282, - type = "deequip", - slot = "hand" - }, - { - -- giant sword - itemid = 3281, - type = "equip", - slot = "hand", - level = 55, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- giant sword - itemid = 3281, - type = "deequip", - slot = "hand" - }, - { - -- fire sword - itemid = 3280, - type = "equip", - slot = "hand", - level = 30 - }, - { - -- fire sword - itemid = 3280, - type = "deequip", - slot = "hand" - }, - { - -- war hammer - itemid = 3279, - type = "equip", - slot = "hand", - level = 50, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- war hammer - itemid = 3279, - type = "deequip", - slot = "hand" - }, - { - -- magic longsword - itemid = 3278, - type = "equip", - slot = "hand", - level = 140, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- magic longsword - itemid = 3278, - type = "deequip", - slot = "hand" - }, - { - -- spear - itemid = 3277, - type = "equip", - slot = "hand" - }, - { - -- spear - itemid = 3277, - type = "deequip", - slot = "hand" - }, - { - -- hatchet - itemid = 3276, - type = "equip", - slot = "hand" - }, - { - -- hatchet - itemid = 3276, - type = "deequip", - slot = "hand" - }, - { - -- double axe - itemid = 3275, - type = "equip", - slot = "hand", - level = 25, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- double axe - itemid = 3275, - type = "deequip", - slot = "hand" - }, - { - -- axe - itemid = 3274, - type = "equip", - slot = "hand" - }, - { - -- axe - itemid = 3274, - type = "deequip", - slot = "hand" - }, - { - -- sabre - itemid = 3273, - type = "equip", - slot = "hand" - }, - { - -- sabre - itemid = 3273, - type = "deequip", - slot = "hand" - }, - { - -- rapier - itemid = 3272, - type = "equip", - slot = "hand" - }, - { - -- rapier - itemid = 3272, - type = "deequip", - slot = "hand" - }, - { - -- spike sword - itemid = 3271, - type = "equip", - slot = "hand" - }, - { - -- spike sword - itemid = 3271, - type = "deequip", - slot = "hand" - }, - { - -- club - itemid = 3270, - type = "equip", - slot = "hand" - }, - { - -- club - itemid = 3270, - type = "deequip", - slot = "hand" - }, - { - -- halberd - itemid = 3269, - type = "equip", - slot = "hand", - level = 25 - }, - { - -- halberd - itemid = 3269, - type = "deequip", - slot = "hand" - }, - { - -- hand axe - itemid = 3268, - type = "equip", - slot = "hand" - }, - { - -- hand axe - itemid = 3268, - type = "deequip", - slot = "hand" - }, - { - -- dagger - itemid = 3267, - type = "equip", - slot = "hand" - }, - { - -- dagger - itemid = 3267, - type = "deequip", - slot = "hand" - }, - { - -- battle axe - itemid = 3266, - type = "equip", - slot = "hand", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- battle axe - itemid = 3266, - type = "deequip", - slot = "hand" - }, - { - -- two handed sword - itemid = 3265, - type = "equip", - slot = "hand", - level = 20, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- two handed sword - itemid = 3265, - type = "deequip", - slot = "hand" - }, - { - -- sword - itemid = 3264, - type = "equip", - slot = "hand" - }, - { - -- sword - itemid = 3264, - type = "deequip", - slot = "hand" - }, - { - -- backpack of holding - itemid = 3253, - type = "equip", - slot = "backpack" - }, - { - -- backpack of holding - itemid = 3253, - type = "deequip", - slot = "backpack" - }, - { - -- boots of waterwalking - itemid = 3246, - type = "equip", - slot = "feet" - }, - { - -- boots of waterwalking - itemid = 3246, - type = "deequip", - slot = "feet" - }, - { - -- ring of wishes - itemid = 3245, - type = "equip", - slot = "ring" - }, - { - -- ring of wishes - itemid = 3245, - type = "deequip", - slot = "ring" - }, - { - -- helmet of the ancients - itemid = 3230, - type = "equip", - slot = "head" - }, - { - -- helmet of the ancients - itemid = 3230, - type = "deequip", - slot = "head" - }, - { - -- helmet of the ancients - itemid = 3229, - type = "equip", - slot = "head" - }, - { - -- helmet of the ancients - itemid = 3229, - type = "deequip", - slot = "head" - }, - { - -- damaged helmet - itemid = 3226, - type = "equip", - slot = "head" - }, - { - -- damaged helmet - itemid = 3226, - type = "deequip", - slot = "head" - }, - { - -- hat of the mad - itemid = 3210, - type = "equip", - slot = "head", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- hat of the mad - itemid = 3210, - type = "deequip", - slot = "head" - }, - { - -- giant smithhammer - itemid = 3208, - type = "equip", - slot = "hand" - }, - { - -- giant smithhammer - itemid = 3208, - type = "deequip", - slot = "hand" - }, - { - -- paw amulet - itemid = 3102, - type = "equip", - slot = "necklace" - }, - { - -- paw amulet - itemid = 3102, - type = "deequip", - slot = "necklace" - }, - { - -- ring of healing - itemid = 3100, - type = "equip", - slot = "ring" - }, - { - -- ring of healing - itemid = 3100, - type = "deequip", - slot = "ring" - }, - { - -- dwarven ring - itemid = 3099, - type = "equip", - slot = "ring" - }, - { - -- dwarven ring - itemid = 3099, - type = "deequip", - slot = "ring" - }, - { - -- ring of healing - itemid = 3098, - type = "equip", - slot = "ring" - }, - { - -- ring of healing - itemid = 3098, - type = "deequip", - slot = "ring" - }, - { - -- dwarven ring - itemid = 3097, - type = "equip", - slot = "ring" - }, - { - -- dwarven ring - itemid = 3097, - type = "deequip", - slot = "ring" - }, - { - -- club ring - itemid = 3096, - type = "equip", - slot = "ring" - }, - { - -- club ring - itemid = 3096, - type = "deequip", - slot = "ring" - }, - { - -- axe ring - itemid = 3095, - type = "equip", - slot = "ring" - }, - { - -- axe ring - itemid = 3095, - type = "deequip", - slot = "ring" - }, - { - -- sword ring - itemid = 3094, - type = "equip", - slot = "ring" - }, - { - -- sword ring - itemid = 3094, - type = "deequip", - slot = "ring" - }, - { - -- club ring - itemid = 3093, - type = "equip", - slot = "ring" - }, - { - -- club ring - itemid = 3093, - type = "deequip", - slot = "ring" - }, - { - -- axe ring - itemid = 3092, - type = "equip", - slot = "ring" - }, - { - -- axe ring - itemid = 3092, - type = "deequip", - slot = "ring" - }, - { - -- sword ring - itemid = 3091, - type = "equip", - slot = "ring" - }, - { - -- sword ring - itemid = 3091, - type = "deequip", - slot = "ring" - }, - { - -- time ring - itemid = 3090, - type = "equip", - slot = "ring" - }, - { - -- time ring - itemid = 3090, - type = "deequip", - slot = "ring" - }, - { - -- life ring - itemid = 3089, - type = "equip", - slot = "ring" - }, - { - -- life ring - itemid = 3089, - type = "deequip", - slot = "ring" - }, - { - -- energy ring - itemid = 3088, - type = "equip", - slot = "ring", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- energy ring - itemid = 3088, - type = "deequip", - slot = "ring" - }, - { - -- power ring - itemid = 3087, - type = "equip", - slot = "ring" - }, - { - -- power ring - itemid = 3087, - type = "deequip", - slot = "ring" - }, - { - -- stealth ring - itemid = 3086, - type = "equip", - slot = "ring" - }, - { - -- stealth ring - itemid = 3086, - type = "deequip", - slot = "ring" - }, - { - -- dragon necklace - itemid = 3085, - type = "equip", - slot = "necklace" - }, - { - -- dragon necklace - itemid = 3085, - type = "deequip", - slot = "necklace" - }, - { - -- protection amulet - itemid = 3084, - type = "equip", - slot = "necklace" - }, - { - -- protection amulet - itemid = 3084, - type = "deequip", - slot = "necklace" - }, - { - -- garlic necklace - itemid = 3083, - type = "equip", - slot = "necklace" - }, - { - -- garlic necklace - itemid = 3083, - type = "deequip", - slot = "necklace" - }, - { - -- elven amulet - itemid = 3082, - type = "equip", - slot = "necklace" - }, - { - -- elven amulet - itemid = 3082, - type = "deequip", - slot = "necklace" - }, - { - -- stone skin amulet - itemid = 3081, - type = "equip", - slot = "necklace" - }, - { - -- stone skin amulet - itemid = 3081, - type = "deequip", - slot = "necklace" - }, - { - -- amulet of life - itemid = 3080, - type = "equip", - slot = "necklace" - }, - { - -- amulet of life - itemid = 3080, - type = "deequip", - slot = "necklace" - }, - { - -- boots of haste - itemid = 3079, - type = "equip", - slot = "feet" - }, - { - -- boots of haste - itemid = 3079, - type = "deequip", - slot = "feet" - }, - { - -- wand of dragonbreath - itemid = 3075, - type = "equip", - slot = "hand", - level = 13, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of dragonbreath - itemid = 3075, - type = "deequip", - slot = "hand", - level = 13 - }, - { - -- wand of vortex - itemid = 3074, - type = "equip", - slot = "hand", - level = 6, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of vortex - itemid = 3074, - type = "deequip", - slot = "hand", - level = 6 - }, - { - -- wand of cosmic energy - itemid = 3073, - type = "equip", - slot = "hand", - level = 26, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of cosmic energy - itemid = 3073, - type = "deequip", - slot = "hand", - level = 26 - }, - { - -- wand of decay - itemid = 3072, - type = "equip", - slot = "hand", - level = 19, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of decay - itemid = 3072, - type = "deequip", - slot = "hand", - level = 19 - }, - { - -- wand of inferno - itemid = 3071, - type = "equip", - slot = "hand", - level = 33, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of inferno - itemid = 3071, - type = "deequip", - slot = "hand", - level = 33 - }, - { - -- moonlight rod - itemid = 3070, - type = "equip", - slot = "hand", - level = 13, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- moonlight rod - itemid = 3070, - type = "deequip", - slot = "hand", - level = 13 - }, - { - -- necrotic rod - itemid = 3069, - type = "equip", - slot = "hand", - level = 19, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- necrotic rod - itemid = 3069, - type = "deequip", - slot = "hand", - level = 19 - }, - { - -- hailstorm rod - itemid = 3067, - type = "equip", - slot = "hand", - level = 33, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- hailstorm rod - itemid = 3067, - type = "deequip", - slot = "hand", - level = 33 - }, - { - -- snakebite rod - itemid = 3066, - type = "equip", - slot = "hand", - level = 6, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- snakebite rod - itemid = 3066, - type = "deequip", - slot = "hand", - level = 6 - }, - { - -- terra rod - itemid = 3065, - type = "equip", - slot = "hand", - level = 26, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- terra rod - itemid = 3065, - type = "deequip", - slot = "hand", - level = 26 - }, - { - -- gold ring - itemid = 3063, - type = "equip", - slot = "ring" - }, - { - -- gold ring - itemid = 3063, - type = "deequip", - slot = "ring" - }, - { - -- spellbook - itemid = 3059, - type = "equip", - slot = "shield", - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- spellbook - itemid = 3059, - type = "deequip", - slot = "shield" - }, - { - -- amulet of loss - itemid = 3057, - type = "equip", - slot = "necklace" - }, - { - -- amulet of loss - itemid = 3057, - type = "deequip", - slot = "necklace" - }, - { - -- bronze amulet - itemid = 3056, - type = "equip", - slot = "necklace" - }, - { - -- bronze amulet - itemid = 3056, - type = "deequip", - slot = "necklace" - }, - { - -- platinum amulet - itemid = 3055, - type = "equip", - slot = "necklace" - }, - { - -- platinum amulet - itemid = 3055, - type = "deequip", - slot = "necklace" - }, - { - -- silver amulet - itemid = 3054, - type = "equip", - slot = "necklace" - }, - { - -- silver amulet - itemid = 3054, - type = "deequip", - slot = "necklace" - }, - { - -- time ring - itemid = 3053, - type = "equip", - slot = "ring" - }, - { - -- time ring - itemid = 3053, - type = "deequip", - slot = "ring" - }, - { - -- life ring - itemid = 3052, - type = "equip", - slot = "ring" - }, - { - -- life ring - itemid = 3052, - type = "deequip", - slot = "ring" - }, - { - -- energy ring - itemid = 3051, - type = "equip", - slot = "ring", - vocation = { - {"Knight", true}, - {"Paladin", true, true}, - {"Elite Knight"}, - {"Royal Paladin"} - } - }, - { - -- energy ring - itemid = 3051, - type = "deequip", - slot = "ring" - }, - { - -- power ring - itemid = 3050, - type = "equip", - slot = "ring" - }, - { - -- power ring - itemid = 3050, - type = "deequip", - slot = "ring" - }, - { - -- stealth ring - itemid = 3049, - type = "equip", - slot = "ring" - }, - { - -- stealth ring - itemid = 3049, - type = "deequip", - slot = "ring" - }, - { - -- might ring - itemid = 3048, - type = "equip", - slot = "ring" - }, - { - -- might ring - itemid = 3048, - type = "deequip", - slot = "ring" - }, - { - -- strange talisman - itemid = 3045, - type = "equip", - slot = "necklace" - }, - { - -- strange talisman - itemid = 3045, - type = "deequip", - slot = "necklace" - }, - { - -- ancient amulet - itemid = 3025, - type = "equip", - slot = "necklace" - }, - { - -- ancient amulet - itemid = 3025, - type = "deequip", - slot = "necklace" - }, - { - -- ancient tiara - itemid = 3022, - type = "equip", - slot = "head" - }, - { - -- ancient tiara - itemid = 3022, - type = "deequip", - slot = "head" - }, - { - -- sapphire amulet - itemid = 3021, - type = "equip", - slot = "necklace" - }, - { - -- sapphire amulet - itemid = 3021, - type = "deequip", - slot = "necklace" - }, - { - -- demonbone amulet - itemid = 3019, - type = "equip", - slot = "necklace" - }, - { - -- demonbone amulet - itemid = 3019, - type = "deequip", - slot = "necklace" - }, - { - -- scarab amulet - itemid = 3018, - type = "equip", - slot = "necklace" - }, - { - -- scarab amulet - itemid = 3018, - type = "deequip", - slot = "necklace" - }, - { - -- ruby necklace - itemid = 3016, - type = "equip", - slot = "necklace" - }, - { - -- ruby necklace - itemid = 3016, - type = "deequip", - slot = "necklace" - }, - { - -- silver necklace - itemid = 3015, - type = "equip", - slot = "necklace" - }, - { - -- silver necklace - itemid = 3015, - type = "deequip", - slot = "necklace" - }, - { - -- star amulet - itemid = 3014, - type = "equip", - slot = "necklace" - }, - { - -- star amulet - itemid = 3014, - type = "deequip", - slot = "necklace" - }, - { - -- golden amulet - itemid = 3013, - type = "equip", - slot = "necklace" - }, - { - -- golden amulet - itemid = 3013, - type = "deequip", - slot = "necklace" - }, - { - -- wolf tooth chain - itemid = 3012, - type = "equip", - slot = "necklace" - }, - { - -- wolf tooth chain - itemid = 3012, - type = "deequip", - slot = "necklace" - }, - { - -- crown - itemid = 3011, - type = "equip", - slot = "head" - }, - { - -- crown - itemid = 3011, - type = "deequip", - slot = "head" - }, - { - -- bronze necklace - itemid = 3009, - type = "equip", - slot = "necklace" - }, - { - -- bronze necklace - itemid = 3009, - type = "deequip", - slot = "necklace" - }, - { - -- crystal necklace - itemid = 3008, - type = "equip", - slot = "necklace" - }, - { - -- crystal necklace - itemid = 3008, - type = "deequip", - slot = "necklace" - }, - { - -- crystal ring - itemid = 3007, - type = "equip", - slot = "ring" - }, - { - -- crystal ring - itemid = 3007, - type = "deequip", - slot = "ring" - }, - { - -- ring of the sky - itemid = 3006, - type = "equip", - slot = "ring" - }, - { - -- ring of the sky - itemid = 3006, - type = "deequip", - slot = "ring" - }, - { - -- wedding ring - itemid = 3004, - type = "equip", - slot = "ring" - }, - { - -- wedding ring - itemid = 3004, - type = "deequip", - slot = "ring" - }, - { - -- snowball - itemid = 2992, - type = "equip", - slot = "hand" - }, - { - -- snowball - itemid = 2992, - type = "deequip", - slot = "hand" - }, - { - -- golden backpack - itemid = 2871, - type = "equip", - slot = "backpack" - }, - { - -- golden backpack - itemid = 2871, - type = "deequip", - slot = "backpack" - }, - { - -- grey backpack - itemid = 2870, - type = "equip", - slot = "backpack" - }, - { - -- grey backpack - itemid = 2870, - type = "deequip", - slot = "backpack" - }, - { - -- blue backpack - itemid = 2869, - type = "equip", - slot = "backpack" - }, - { - -- blue backpack - itemid = 2869, - type = "deequip", - slot = "backpack" - }, - { - -- purple backpack - itemid = 2868, - type = "equip", - slot = "backpack" - }, - { - -- purple backpack - itemid = 2868, - type = "deequip", - slot = "backpack" - }, - { - -- red backpack - itemid = 2867, - type = "equip", - slot = "backpack" - }, - { - -- red backpack - itemid = 2867, - type = "deequip", - slot = "backpack" - }, - { - -- yellow backpack - itemid = 2866, - type = "equip", - slot = "backpack" - }, - { - -- yellow backpack - itemid = 2866, - type = "deequip", - slot = "backpack" - }, - { - -- green backpack - itemid = 2865, - type = "equip", - slot = "backpack" - }, - { - -- green backpack - itemid = 2865, - type = "deequip", - slot = "backpack" - }, - { - -- golden bag - itemid = 2863, - type = "equip", - slot = "backpack" - }, - { - -- golden bag - itemid = 2863, - type = "deequip", - slot = "backpack" - }, - { - -- grey bag - itemid = 2862, - type = "equip", - slot = "backpack" - }, - { - -- grey bag - itemid = 2862, - type = "deequip", - slot = "backpack" - }, - { - -- blue bag - itemid = 2861, - type = "equip", - slot = "backpack" - }, - { - -- blue bag - itemid = 2861, - type = "deequip", - slot = "backpack" - }, - { - -- purple bag - itemid = 2860, - type = "equip", - slot = "backpack" - }, - { - -- purple bag - itemid = 2860, - type = "deequip", - slot = "backpack" - }, - { - -- red bag - itemid = 2859, - type = "equip", - slot = "backpack" - }, - { - -- red bag - itemid = 2859, - type = "deequip", - slot = "backpack" - }, - { - -- yellow bag - itemid = 2858, - type = "equip", - slot = "backpack" - }, - { - -- yellow bag - itemid = 2858, - type = "deequip", - slot = "backpack" - }, - { - -- green bag - itemid = 2857, - type = "equip", - slot = "backpack" - }, - { - -- green bag - itemid = 2857, - type = "deequip", - slot = "backpack" - }, - { - -- backpack - itemid = 2854, - type = "equip", - slot = "backpack" - }, - { - -- backpack - itemid = 2854, - type = "deequip", - slot = "backpack" - }, - { - -- bag - itemid = 2853, - type = "equip", - slot = "backpack" - }, - { - -- bag - itemid = 2853, - type = "deequip", - slot = "backpack" - }, - { - -- searing fire - itemid = 2138, - type = "stepin" - }, - { - -- searing fire - itemid = 2138, - type = "additem" - }, - { - -- searing fire - itemid = 2137, - type = "stepin" - }, - { - -- searing fire - itemid = 2137, - type = "additem" - }, - { - -- smoke - itemid = 2136, - type = "stepin" - }, - { - -- smoke - itemid = 2136, - type = "additem" - }, - { - -- energy field - itemid = 2135, - type = "stepin" - }, - { - -- energy field - itemid = 2135, - type = "additem" - }, - { - -- poison gas - itemid = 2134, - type = "stepin" - }, - { - -- poison gas - itemid = 2134, - type = "additem" - }, - { - -- fire field - itemid = 2133, - type = "stepin" - }, - { - -- fire field - itemid = 2133, - type = "additem" - }, - { - -- fire field - itemid = 2132, - type = "stepin" - }, - { - -- fire field - itemid = 2132, - type = "additem" - }, - { - -- fire field - itemid = 21465, - type = "stepin" - }, - { - -- fire field - itemid = 21465, - type = "additem" - }, - { - -- rush wood - itemid = 2130, - type = "stepin" - }, - { - -- rush wood - itemid = 2130, - type = "additem" - }, - { - -- magic wall - itemid = 2129, - type = "stepin" - }, - { - -- magic wall - itemid = 2129, - type = "additem" - }, - { - -- magic wall - itemid = 2128, - type = "stepin" - }, - { - -- magic wall - itemid = 2128, - type = "additem" - }, - { - -- poison field - itemid = 2121, - type = "stepin" - }, - { - -- poison field - itemid = 2121, - type = "additem" - }, - { - -- energy field - itemid = 2126, - type = "stepin" - }, - { - -- energy field - itemid = 2126, - type = "additem" - }, - { - -- fire field - itemid = 2125, - type = "stepin" - }, - { - -- fire field - itemid = 2125, - type = "additem" - }, - { - -- fire field - itemid = 2124, - type = "stepin" - }, - { - -- fire field - itemid = 2124, - type = "additem" - }, - { - -- fire field - itemid = 2123, - type = "stepin" - }, - { - -- fire field - itemid = 2123, - type = "additem" - }, - { - -- energy field - itemid = 2122, - type = "stepin" - }, - { - -- energy field - itemid = 2122, - type = "additem" - }, - { - -- poison field - itemid = 105, - type = "stepin" - }, - { - -- poison field - itemid = 105, - type = "additem" - }, - { - -- fire field - itemid = 2120, - type = "stepin" - }, - { - -- fire field - itemid = 2120, - type = "additem" - }, - { - -- fire field - itemid = 2119, - type = "stepin" - }, - { - -- fire field - itemid = 2119, - type = "additem" - }, - { - -- fire field - itemid = 2118, - type = "stepin" - }, - { - -- fire field - itemid = 2118, - type = "additem" - }, - { - -- campfire - itemid = 2000, - type = "stepin" - }, - { - -- campfire - itemid = 2000, - type = "additem" - }, - { - -- campfire - itemid = 1999, - type = "stepin" - }, - { - -- campfire - itemid = 1999, - type = "additem" - }, - { - -- campfire - itemid = 1998, - type = "stepin" - }, - { - -- campfire - itemid = 1998, - type = "additem" - }, - { - -- small stone - itemid = 1781, - type = "equip", - slot = "hand" - }, - { - -- small stone - itemid = 1781, - type = "deequip", - slot = "hand" - } -} - -for _, i in ipairs(items) do - local movement = MoveEvent() - movement:id(i.itemid or i.itemId) - - if(i.type) then - movement:type(i.type) - end - if(i.slot) then - movement:slot(i.slot) - end - if(i.level) then - movement:level(i.level) - end - if(i.vocation) then - for _, v in ipairs(i.vocation) do - movement:vocation(v[1], v[2] or false, v[3] or false) - end - end - movement:register() -end diff --git a/data-otservbr-global/scripts/weapons/unscripted_weapons.lua b/data-otservbr-global/scripts/weapons/unscripted_weapons.lua deleted file mode 100644 index cd9f85f0e58..00000000000 --- a/data-otservbr-global/scripts/weapons/unscripted_weapons.lua +++ /dev/null @@ -1,5380 +0,0 @@ -local weapons = { - { - -- grand sanguine rod - itemId = 43886, - type = WEAPON_WAND, - wandType = "earth", - level = 600, - mana = 20, - damage = {100, 124}, - unproperly = true, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- sanguine rod - itemId = 43885, - type = WEAPON_WAND, - wandType = "earth", - level = 600, - mana = 20, - damage = {100, 124}, - unproperly = true, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- grand sanguine coil - itemId = 43883, - type = WEAPON_WAND, - wandType = "energy", - level = 250, - mana = 21, - damage = {103, 125}, - unproperly = true, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- sanguine coil - itemId = 43882, - type = WEAPON_WAND, - wandType = "fire", - level = 250, - mana = 21, - damage = {113, 125}, - unproperly = true, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- grand sanguine crossbow - itemId = 43880, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- sanguine crossbow - itemId = 43879, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine bow - itemId = 43878, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- sanguine bow - itemId = 43877, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- grand sanguine battleaxe - itemId = 43875, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine battleaxe - itemId = 43874, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine bludgeon - itemId = 43873, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine bludgeon - itemId = 43872, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine razor - itemId = 43871, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine razor - itemId = 43870, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine hatchet - itemId = 43869, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine hatchet - itemId = 43868, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine cudgel - itemId = 43867, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine cudgel - itemId = 43866, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- grand sanguine blade - itemId = 43865, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sanguine blade - itemId = 43864, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- broken macuahuitl - itemid = 40530, - type = WEAPON_SWORD - }, - { - -- naga rod - itemId = 39163, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = {90, 110}, - unproperly = true, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- naga wand - itemId = 39162, - type = WEAPON_WAND, - wandType = "energy", - level = 250, - mana = 21, - damage = {90, 120}, - unproperly = true, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- naga crossbow - itemId = 39159, - type = WEAPON_DISTANCE, - level = 300, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- naga club - itemId = 39157, - type = WEAPON_CLUB, - level = 300, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- naga axe - itemId = 39156, - type = WEAPON_AXE, - level = 300, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- naga sword - itemId = 39155, - type = WEAPON_SWORD, - level = 300, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch rod - itemId = 36675, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = {85, 105}, - unproperly = true, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- eldritch rod - itemId = 36674, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = {85, 105}, - unproperly = true, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- gilded eldritch wand - itemId = 36669, - type = WEAPON_WAND, - wandType = "fire", - level = 250, - mana = 22, - damage = {85, 105}, - unproperly = true, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- eldritch wand - itemId = 36668, - type = WEAPON_WAND, - wandType = "fire", - level = 250, - mana = 22, - damage = {85, 105}, - unproperly = true, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- gilded eldritch bow - itemId = 36665, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- eldritch bow - itemId = 36664, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- gilded eldritch greataxe - itemId = 36662, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch greataxe - itemId = 36661, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch warmace - itemId = 36660, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch warmace - itemId = 36659, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- gilded eldritch claymore - itemId = 36658, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- eldritch claymore - itemId = 36657, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spectral bolt (no decay) - itemId = 35902, - type = WEAPON_AMMO, - level = 150, - unproperly = true, - action = "removecount" - }, - { - -- jungle wand - itemId = 35522, - type = WEAPON_WAND, - wandType = "earth", - level = 150, - mana = 19, - damage = {80, 100}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- jungle rod - itemId = 35521, - type = WEAPON_WAND, - wandType = "ice", - level = 150, - mana = 19, - damage = {80, 100}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- jungle bow - itemId = 35518, - type = WEAPON_DISTANCE, - level = 150, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- throwing axe - itemId = 35515, - type = WEAPON_AXE, - level = 150, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- jungle flail - itemId = 35514, - type = WEAPON_CLUB, - level = 150, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion longsword - itemId = 34155, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion hammer - itemId = 34254, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion axe - itemId = 34253, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- lion wand - itemId = 34152, - type = WEAPON_WAND, - wandType = "ice", - level = 220, - mana = 21, - damage = {89, 109}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- lion rod - itemId = 34151, - type = WEAPON_WAND, - wandType = "ice", - level = 270, - mana = 20, - damage = {85, 105}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- lion longbow - itemId = 34150, - type = WEAPON_DISTANCE, - level = 270, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- soulhexer rod - itemId = 34091, - type = WEAPON_WAND, - wandType = "ice", - level = 400, - mana = 21, - damage = {98, 118}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- soultainter wand - itemId = 34090, - type = WEAPON_WAND, - wandType = "death", - level = 400, - mana = 21, - damage = {100, 120}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- soulpiercer crossbow - itemId = 34089, - type = WEAPON_DISTANCE, - level = 400, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- soulbleeder bow - itemId = 34088, - type = WEAPON_DISTANCE, - level = 400, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- soulmaimer club - itemId = 34087, - type = WEAPON_CLUB, - level = 400, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulcrusher club - itemId = 34086, - type = WEAPON_CLUB, - level = 400, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- souleater axe - itemId = 34085, - type = WEAPON_AXE, - level = 400, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulbiter axe - itemId = 34084, - type = WEAPON_AXE, - level = 400, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulshredder sword - itemId = 34083, - type = WEAPON_SWORD, - level = 400, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- soulcutter sword - itemId = 34082, - type = WEAPON_SWORD, - level = 400, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- phantasmal axe - itemid = 32616, - type = WEAPON_AXE, - level = 180, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- meat hammer - itemid = 32093, - type = WEAPON_CLUB - }, - { - -- tagralt blade - itemid = 31614, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- bow of cataclysm - itemid = 31581, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- mortal mace - itemid = 31580, - type = WEAPON_CLUB, - level = 220, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra rod - itemid = 30400, - type = WEAPON_WAND, - wandType = "earth", - level = 220, - mana = 21, - damage = {70, 110}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- cobra wand - itemid = 30399, - type = WEAPON_WAND, - wandType = "energy", - level = 270, - mana = 22, - damage = {94, 100}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- cobra sword - itemid = 30398, - type = WEAPON_SWORD, - level = 220, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra axe - itemid = 30396, - type = WEAPON_AXE, - level = 220, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra club - itemid = 30395, - type = WEAPON_CLUB, - level = 220, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cobra crossbow - itemid = 30393, - type = WEAPON_DISTANCE, - level = 220, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ice hatchet - itemid = 30283, - type = WEAPON_AXE - }, - { - -- energized limb - itemid = 29425, - type = WEAPON_WAND, - wandType = "fire", - level = 180, - mana = 24, - damage = {88, 108}, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- winterblade - itemid = 29422, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- summerblade - itemid = 29421, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- resizer - itemid = 29419, - type = WEAPON_CLUB, - level = 230, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- living vine bow - itemid = 29417, - type = WEAPON_DISTANCE, - level = 220, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- golden axe - itemid = 29286, - type = WEAPON_AXE - }, - { - -- wand of destruction test - itemid = 28479, - type = WEAPON_WAND - }, - { - -- umbral master bow test - itemid = 28478, - type = WEAPON_DISTANCE - }, - { - -- sorcerer test weapon - itemid = 28466, - type = WEAPON_WAND - }, - { - -- bow of destruction test - itemid = 28465, - type = WEAPON_DISTANCE - }, - { - -- test weapon for knights - itemid = 28464, - type = WEAPON_SWORD - }, - { - -- sulphurous demonbone - itemid = 28832, - type = WEAPON_CLUB, - level = 80, - unproperly = true - }, - { - -- unliving demonbone - itemid = 28831, - type = WEAPON_CLUB, - level = 80, - unproperly = true - }, - { - -- energized demonbone - itemid = 28830, - type = WEAPON_CLUB, - level = 80, - unproperly = true - }, - { - -- rotten demonbone - itemid = 28829, - type = WEAPON_CLUB, - level = 80, - unproperly = true - }, - { - -- deepling fork - itemid = 28826, - type = WEAPON_WAND, - wandType = "ice", - level = 230, - mana = 23, - damage = {80, 120}, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = WEAPON_WAND, - wandType = "ice", - level = 180, - mana = 23, - damage = {86, 98}, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- falcon mace - itemid = 28725, - type = WEAPON_CLUB, - level = 300, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- falcon battleaxe - itemid = 28724, - type = WEAPON_AXE, - level = 300, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- falcon longsword - itemid = 28723, - type = WEAPON_SWORD, - level = 300, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- falcon bow - itemid = 28718, - type = WEAPON_DISTANCE, - level = 300, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- falcon wand - itemid = 28717, - type = WEAPON_WAND, - wandType = "energy", - level = 300, - mana = 21, - damage = {86, 102}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- falcon rod - itemid = 28716, - type = WEAPON_WAND, - wandType = "earth", - level = 300, - mana = 20, - damage = {87, 101}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- gnome sword - itemid = 27651, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mallet handle - itemid = 27525, - type = WEAPON_CLUB - }, - { - -- strange mallet - itemid = 27523, - type = WEAPON_CLUB - }, - { - -- rod of destruction - itemid = 27458, - type = WEAPON_WAND, - wandType = "ice", - level = 200, - mana = 20, - damage = {80, 110}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- wand of destruction - itemid = 27457, - type = WEAPON_WAND, - wandType = "energy", - level = 200, - mana = 20, - damage = {80, 110}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- crossbow of destruction - itemid = 27456, - type = WEAPON_DISTANCE, - level = 200, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bow of destruction - itemid = 27455, - type = WEAPON_DISTANCE, - level = 200, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hammer of destruction - itemid = 27454, - type = WEAPON_CLUB, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mace of destruction - itemid = 27453, - type = WEAPON_CLUB, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- chopper of destruction - itemid = 27452, - type = WEAPON_AXE, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- axe of destruction - itemid = 27451, - type = WEAPON_AXE, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- slayer of destruction - itemid = 27450, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blade of destruction - itemid = 27449, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ornate carving hammer - itemid = 26061, - type = WEAPON_CLUB - }, - { - -- valuable carving hammer - itemid = 26060, - type = WEAPON_CLUB - }, - { - -- plain carving hammer - itemid = 26059, - type = WEAPON_CLUB - }, - { - -- ornate carving mace - itemid = 26058, - type = WEAPON_CLUB - }, - { - -- valuable carving mace - itemid = 26057, - type = WEAPON_CLUB - }, - { - -- plain carving mace - itemid = 26056, - type = WEAPON_CLUB - }, - { - -- ornate carving chopper - itemid = 26055, - type = WEAPON_AXE - }, - { - -- valuable carving chopper - itemid = 26054, - type = WEAPON_AXE - }, - { - -- plain carving chopper - itemid = 26053, - type = WEAPON_AXE - }, - { - -- ornate carving axe - itemid = 26052, - type = WEAPON_AXE - }, - { - -- valuable carving axe - itemid = 26051, - type = WEAPON_AXE - }, - { - -- plain carving axe - itemid = 26050, - type = WEAPON_AXE - }, - { - -- ornate carving slayer - itemid = 26049, - type = WEAPON_SWORD - }, - { - -- valuable carving slayer - itemid = 26048, - type = WEAPON_SWORD - }, - { - -- plain carving slayer - itemid = 26047, - type = WEAPON_SWORD - }, - { - -- ornate carving blade - itemid = 26046, - type = WEAPON_SWORD - }, - { - -- valuable carving blade - itemid = 26045, - type = WEAPON_SWORD - }, - { - -- plain carving blade - itemid = 26044, - type = WEAPON_SWORD - }, - { - -- ornate remedy hammer - itemid = 26031, - type = WEAPON_CLUB - }, - { - -- valuable remedy hammer - itemid = 26030, - type = WEAPON_CLUB - }, - { - -- plain remedy hammer - itemid = 26029, - type = WEAPON_CLUB - }, - { - -- ornate remedy mace - itemid = 26028, - type = WEAPON_CLUB - }, - { - -- valuable remedy mace - itemid = 26027, - type = WEAPON_CLUB - }, - { - -- plain remedy mace - itemid = 26026, - type = WEAPON_CLUB - }, - { - -- ornate remedy chopper - itemid = 26025, - type = WEAPON_AXE - }, - { - -- valuable remedy chopper - itemid = 26024, - type = WEAPON_AXE - }, - { - -- plain remedy chopper - itemid = 26023, - type = WEAPON_AXE - }, - { - -- ornate remedy axe - itemid = 26022, - type = WEAPON_AXE - }, - { - -- valuable remedy axe - itemid = 26021, - type = WEAPON_AXE - }, - { - -- plain remedy axe - itemid = 26020, - type = WEAPON_AXE - }, - { - -- ornate remedy slayer - itemid = 26019, - type = WEAPON_SWORD - }, - { - -- valuable remedy slayer - itemid = 26018, - type = WEAPON_SWORD - }, - { - -- plain remedy slayer - itemid = 26017, - type = WEAPON_SWORD - }, - { - -- ornate remedy blade - itemid = 26016, - type = WEAPON_SWORD - }, - { - -- valuable remedy blade - itemid = 26015, - type = WEAPON_SWORD - }, - { - -- plain remedy blade - itemid = 26014, - type = WEAPON_SWORD - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = WEAPON_CLUB - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = WEAPON_CLUB - }, - { - -- plain mayhem hammer - itemid = 25998, - type = WEAPON_CLUB - }, - { - -- ornate mayhem mace - itemid = 25997, - type = WEAPON_CLUB - }, - { - -- valuable mayhem mace - itemid = 25996, - type = WEAPON_CLUB - }, - { - -- plain mayhem mace - itemid = 25995, - type = WEAPON_CLUB - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = WEAPON_AXE - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = WEAPON_AXE - }, - { - -- plain mayhem chopper - itemid = 25992, - type = WEAPON_AXE - }, - { - -- ornate mayhem axe - itemid = 25991, - type = WEAPON_AXE - }, - { - -- valuable mayhem axe - itemid = 25990, - type = WEAPON_AXE - }, - { - -- plain mayhem axe - itemid = 25989, - type = WEAPON_AXE - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = WEAPON_SWORD - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = WEAPON_SWORD - }, - { - -- plain mayhem slayer - itemid = 25986, - type = WEAPON_SWORD - }, - { - -- ornate mayhem blade - itemid = 25985, - type = WEAPON_SWORD - }, - { - -- valuable mayhem blade - itemid = 25984, - type = WEAPON_SWORD - }, - { - -- plain mayhem blade - itemid = 25983, - type = WEAPON_SWORD - }, - { - -- energy war hammer replica - itemid = 25974, - type = WEAPON_CLUB - }, - { - -- energy orcish maul replica - itemid = 25973, - type = WEAPON_CLUB - }, - { - -- energy basher replica - itemid = 25972, - type = WEAPON_CLUB - }, - { - -- energy crystal mace replica - itemid = 25971, - type = WEAPON_CLUB - }, - { - -- energy clerical mace replica - itemid = 25970, - type = WEAPON_CLUB - }, - { - -- energy war axe replica - itemid = 25969, - type = WEAPON_AXE - }, - { - -- energy headchopper replica - itemid = 25968, - type = WEAPON_AXE - }, - { - -- energy heroic axe replica - itemid = 25967, - type = WEAPON_AXE - }, - { - -- energy knight axe replica - itemid = 25966, - type = WEAPON_AXE - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = WEAPON_AXE - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = WEAPON_SWORD - }, - { - -- energy blacksteel replica - itemid = 25963, - type = WEAPON_SWORD - }, - { - -- energy mystic blade replica - itemid = 25962, - type = WEAPON_SWORD - }, - { - -- energy relic sword replica - itemid = 25961, - type = WEAPON_SWORD - }, - { - -- energy spike sword replica - itemid = 25960, - type = WEAPON_SWORD - }, - { - -- earth war hammer replica - itemid = 25959, - type = WEAPON_CLUB - }, - { - -- earth orcish maul replica - itemid = 25958, - type = WEAPON_CLUB - }, - { - -- earth basher replica - itemid = 25957, - type = WEAPON_CLUB - }, - { - -- earth crystal mace replica - itemid = 25956, - type = WEAPON_CLUB - }, - { - -- earth clerical mace replica - itemid = 25955, - type = WEAPON_CLUB - }, - { - -- earth war axe replica - itemid = 25954, - type = WEAPON_AXE - }, - { - -- earth headchopper replica - itemid = 25953, - type = WEAPON_AXE - }, - { - -- earth heroic axe replica - itemid = 25952, - type = WEAPON_AXE - }, - { - -- earth knight axe replica - itemid = 25951, - type = WEAPON_AXE - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = WEAPON_AXE - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = WEAPON_SWORD - }, - { - -- earth blacksteel replica - itemid = 25948, - type = WEAPON_SWORD - }, - { - -- earth mystic blade replica - itemid = 25947, - type = WEAPON_SWORD - }, - { - -- earth relic sword replica - itemid = 25946, - type = WEAPON_SWORD - }, - { - -- earth spike sword replica - itemid = 25945, - type = WEAPON_SWORD - }, - { - -- icy war hammer replica - itemid = 25944, - type = WEAPON_CLUB - }, - { - -- icy orcish maul replica - itemid = 25943, - type = WEAPON_CLUB - }, - { - -- icy basher replica - itemid = 25942, - type = WEAPON_CLUB - }, - { - -- icy crystal mace replica - itemid = 25941, - type = WEAPON_CLUB - }, - { - -- icy clerical mace replica - itemid = 25940, - type = WEAPON_CLUB - }, - { - -- icy war axe replica - itemid = 25939, - type = WEAPON_AXE - }, - { - -- icy headchopper replica - itemid = 25938, - type = WEAPON_AXE - }, - { - -- icy heroic axe replica - itemid = 25937, - type = WEAPON_AXE - }, - { - -- icy knight axe replica - itemid = 25936, - type = WEAPON_AXE - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = WEAPON_AXE - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = WEAPON_SWORD - }, - { - -- icy blacksteel replica - itemid = 25933, - type = WEAPON_SWORD - }, - { - -- icy mystic blade replica - itemid = 25932, - type = WEAPON_SWORD - }, - { - -- icy relic sword replica - itemid = 25931, - type = WEAPON_SWORD - }, - { - -- icy spike sword replica - itemid = 25930, - type = WEAPON_SWORD - }, - { - -- fiery war hammer replica - itemid = 25929, - type = WEAPON_CLUB - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = WEAPON_CLUB - }, - { - -- fiery basher replica - itemid = 25927, - type = WEAPON_CLUB - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = WEAPON_CLUB - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = WEAPON_CLUB - }, - { - -- fiery war axe replica - itemid = 25924, - type = WEAPON_AXE - }, - { - -- fiery headchopper replica - itemid = 25923, - type = WEAPON_AXE - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = WEAPON_AXE - }, - { - -- fiery knight axe replica - itemid = 25921, - type = WEAPON_AXE - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = WEAPON_AXE - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = WEAPON_SWORD - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = WEAPON_SWORD - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = WEAPON_SWORD - }, - { - -- fiery relic sword replica - itemid = 25916, - type = WEAPON_SWORD - }, - { - -- fiery spike sword replica - itemid = 25915, - type = WEAPON_SWORD - }, - { - -- wand of darkness - itemid = 25760, - type = WEAPON_WAND, - wandType = "death", - level = 41, - mana = 15, - damage = {80, 100}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- royal star - itemid = 25759, - type = WEAPON_MISSILE, - level = 120, - unproperly = true, - breakchance = 30 - }, - { - -- spectral bolt - itemid = 25758, - type = WEAPON_AMMO, - level = 150, - unproperly = true, - action = "removecount" - }, - { - -- leaf star - itemid = 25735, - type = WEAPON_MISSILE, - level = 60, - unproperly = true, - breakchance = 40 - }, - { - -- dream blossom staff - itemid = 25700, - type = WEAPON_WAND, - wandType = "energy", - level = 80, - mana = 18, - damage = {63, 77}, - vocation = { - {"Sorcerer", true}, - {"Druid", true, true}, - {"Master Sorcerer"}, - {"Elder Druid"} - } - }, - { - -- rod of carving - itemid = 23339, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = {70, 105}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- wand of carving - itemid = 23335, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = {70, 105}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- crossbow of carving - itemid = 23331, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bow of carving - itemid = 23327, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hammer of carving - itemid = 23323, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mace of carving - itemid = 23319, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- chopper of carving - itemid = 23315, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- axe of carving - itemid = 23311, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- slayer of carving - itemid = 23307, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blade of carving - itemid = 23303, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- rod of remedy - itemid = 23299, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = {70, 105}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- wand of remedy - itemid = 23295, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = {70, 105}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- crossbow of remedy - itemid = 23291, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bow of remedy - itemid = 23287, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hammer of remedy - itemid = 23283, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mace of remedy - itemid = 23279, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- chopper of remedy - itemid = 23275, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- axe of remedy - itemid = 23271, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- slayer of remedy - itemid = 23267, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blade of remedy - itemid = 23263, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- rod of mayhem - itemid = 23232, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = {70, 105}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- wand of mayhem - itemid = 23231, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = {70, 105}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- crossbow of mayhem - itemid = 23230, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- bow of mayhem - itemid = 23229, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hammer of mayhem - itemid = 23228, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mace of mayhem - itemid = 23227, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- chopper of mayhem - itemid = 23226, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- axe of mayhem - itemid = 23225, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- slayer of mayhem - itemid = 23224, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blade of mayhem - itemid = 23223, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- rift crossbow - itemid = 22867, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- rift bow - itemid = 22866, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 19, - damage = {80, 110}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = WEAPON_WAND, - wandType = "energy", - level = 65, - mana = 17, - damage = {65, 95}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- Ferumbras' staff - itemid = 22764, - type = WEAPON_CLUB, - level = 100, - unproperly = true - }, - { - -- maimer - itemid = 22762, - type = WEAPON_CLUB, - level = 150, - unproperly = true - }, - { - -- Impaler of the igniter - itemid = 22760, - type = WEAPON_SWORD, - level = 150, - unproperly = true - }, - { - -- plague bite - itemid = 22759, - type = WEAPON_AXE, - level = 150, - unproperly = true - }, - { - -- rift lance - itemid = 22727, - type = WEAPON_AXE, - level = 70, - unproperly = true - }, - { - -- ogre sceptra - itemid = 22183, - type = WEAPON_WAND, - wandType = "earth", - level = 37, - mana = 13, - damage = {56, 74}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- ogre choppa - itemid = 22172, - type = WEAPON_AXE, - level = 25, - unproperly = true - }, - { - -- ogre klubba - itemid = 22171, - type = WEAPON_AXE, - level = 50, - unproperly = true - }, - { - -- simple arrow - itemid = 21470, - type = WEAPON_AMMO, - action = "removecount" - }, - { - -- the chiller - itemid = 21350, - type = WEAPON_WAND, - wandType = "ice", - level = 1, - mana = 1, - damage = {4, 8}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- the scorcher - itemid = 21348, - type = WEAPON_WAND, - wandType = "fire", - level = 1, - mana = 1, - damage = {4, 8}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- one hit wonder - itemid = 21219, - type = WEAPON_CLUB, - level = 70, - unproperly = true - }, - { - -- glooth axe - itemid = 21180, - type = WEAPON_AXE, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- glooth blade - itemid = 21179, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- glooth club - itemid = 21178, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- cowtana - itemid = 21177, - type = WEAPON_SWORD, - level = 25, - unproperly = true - }, - { - -- execowtioner axe - itemid = 21176, - type = WEAPON_AXE, - level = 55, - unproperly = true - }, - { - -- mino lance - itemid = 21174, - type = WEAPON_AXE, - level = 45, - unproperly = true - }, - { - -- moohtant cudgel - itemid = 21173, - type = WEAPON_CLUB, - level = 60, - unproperly = true - }, - { - -- glooth whip - itemid = 21172, - type = WEAPON_CLUB, - level = 25, - unproperly = true - }, - { - -- metal bat - itemid = 21171, - type = WEAPON_CLUB, - level = 55, - unproperly = true - }, - { - -- glooth spear - itemid = 21158, - type = WEAPON_MISSILE, - level = 60, - unproperly = true, - breakchance = 2 - }, - { - -- umbral master crossbow - itemid = 20087, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral crossbow - itemid = 20086, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crude umbral crossbow - itemid = 20085, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral master bow - itemid = 20084, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral bow - itemid = 20083, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crude umbral bow - itemid = 20082, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- umbral master hammer - itemid = 20081, - type = WEAPON_CLUB, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral hammer - itemid = 20080, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral hammer - itemid = 20079, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master mace - itemid = 20078, - type = WEAPON_CLUB, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral mace - itemid = 20077, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral mace - itemid = 20076, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master chopper - itemid = 20075, - type = WEAPON_AXE, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral chopper - itemid = 20074, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral chopper - itemid = 20073, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master axe - itemid = 20072, - type = WEAPON_AXE, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral axe - itemid = 20071, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral axe - itemid = 20070, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral master slayer - itemid = 20069, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral slayer - itemid = 20068, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral slayer - itemid = 20067, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral masterblade - itemid = 20066, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- umbral blade - itemid = 20065, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crude umbral blade - itemid = 20064, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icicle bow - itemid = 19362, - type = WEAPON_DISTANCE, - unproperly = true - }, - { - -- triple bolt crossbow - itemid = 19356, - type = WEAPON_DISTANCE, - level = 70, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- spiky club - itemid = 17859, - type = WEAPON_CLUB, - level = 20, - unproperly = true - }, - { - -- pair of iron fists - itemid = 17828, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- swampling club - itemid = 17824, - type = WEAPON_CLUB - }, - { - -- life preserver - itemid = 17813, - type = WEAPON_CLUB, - level = 15, - unproperly = true - }, - { - -- ratana - itemid = 17812, - type = WEAPON_SWORD, - level = 15, - unproperly = true - }, - { - -- sorc and druid staff - itemid = 17111, - type = WEAPON_WAND, - wandType = "energy", - level = 1, - mana = 2, - damage = {8, 18}, - vocation = { - {"None", true} - } - }, - { - -- mean paladin spear - itemid = 17110, - type = WEAPON_MISSILE, - breakchance = 3, - vocation = { - {"None", true} - } - }, - { - -- mean knight sword - itemid = 17109, - type = WEAPON_SWORD, - unproperly = true, - vocation = { - {"None", true} - } - }, - { - -- shiny blade - itemid = 16175, - type = WEAPON_SWORD, - level = 120, - unproperly = true - }, - { - -- mycological bow - itemid = 16164, - type = WEAPON_DISTANCE, - level = 105, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- crystal crossbow - itemid = 16163, - type = WEAPON_DISTANCE, - level = 90, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- mycological mace - itemid = 16162, - type = WEAPON_CLUB, - level = 120, - unproperly = true - }, - { - -- crystalline axe - itemid = 16161, - type = WEAPON_AXE, - level = 120, - unproperly = true - }, - { - -- crystalline sword - itemid = 16160, - type = WEAPON_SWORD, - level = 62, - unproperly = true - }, - { - -- envenomed arrow - itemid = 16143, - type = WEAPON_AMMO, - level = 70, - unproperly = true, - action = "removecount" - }, - { - -- drill bolt - itemid = 16142, - type = WEAPON_AMMO, - level = 70, - unproperly = true, - action = "removecount" - }, - { - -- prismatic bolt - itemid = 16141, - type = WEAPON_AMMO, - level = 90, - unproperly = true, - action = "removecount" - }, - { - -- glacial rod - itemid = 16118, - type = WEAPON_WAND, - wandType = "ice", - level = 65, - mana = 17, - damage = {75, 95}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- muck rod - itemid = 16117, - type = WEAPON_WAND, - wandType = "earth", - level = 65, - mana = 17, - damage = {75, 95}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- wand of everblazing - itemid = 16115, - type = WEAPON_WAND, - wandType = "fire", - level = 65, - mana = 17, - damage = {75, 95}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of defiance - itemid = 16096, - type = WEAPON_WAND, - wandType = "energy", - level = 65, - mana = 17, - damage = {75, 95}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- crystalline arrow - itemid = 15793, - type = WEAPON_AMMO, - level = 90, - unproperly = true, - action = "removecount" - }, - { - -- crystal bolt - itemid = 15792, - type = WEAPON_AMMO, - action = "removecount" - }, - { - -- thorn spitter - itemid = 14768, - type = WEAPON_DISTANCE, - level = 150, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- vortex bolt - itemid = 14252, - type = WEAPON_AMMO, - level = 40, - unproperly = true, - action = "removecount" - }, - { - -- tarsal arrow - itemid = 14251, - type = WEAPON_AMMO, - level = 30, - unproperly = true, - action = "removecount" - }, - { - -- deepling squelcher - itemid = 14250, - type = WEAPON_CLUB, - level = 48, - unproperly = true - }, - { - -- ornate crossbow - itemid = 14247, - type = WEAPON_DISTANCE, - level = 50, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hive bow - itemid = 14246, - type = WEAPON_DISTANCE, - level = 85, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- hive scythe - itemid = 14089, - type = WEAPON_AXE, - level = 70, - unproperly = true - }, - { - -- guardian axe - itemid = 14043, - type = WEAPON_AXE, - level = 50, - unproperly = true - }, - { - -- warrior's axe - itemid = 14040, - type = WEAPON_AXE, - level = 40, - unproperly = true - }, - { - -- ornate mace - itemid = 14001, - type = WEAPON_CLUB, - level = 90, - unproperly = true - }, - { - -- deepling axe - itemid = 13991, - type = WEAPON_AXE, - level = 80, - unproperly = true - }, - { - -- deepling staff - itemid = 13987, - type = WEAPON_CLUB, - level = 38, - unproperly = true - }, - { - -- shimmer wand - itemid = 12741, - type = WEAPON_WAND, - wandType = "energy", - level = 40, - mana = 13, - damage = {56, 74}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- shimmer bow - itemid = 12733, - type = WEAPON_DISTANCE, - level = 40, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- shimmer rod - itemid = 12732, - type = WEAPON_WAND, - wandType = "ice", - level = 40, - mana = 13, - damage = {56, 74}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- shimmer sword - itemid = 12731, - type = WEAPON_SWORD, - level = 40, - unproperly = true - }, - { - -- heavy trident - itemid = 12683, - type = WEAPON_AXE, - level = 25, - unproperly = true - }, - { - -- wooden sword - itemid = 12673, - type = WEAPON_SWORD - }, - { - -- wand of dimensions - itemid = 12603, - type = WEAPON_WAND, - wandType = "death", - level = 37, - mana = 9, - damage = {44, 62}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- blade of corruption - itemid = 11693, - type = WEAPON_SWORD, - level = 82, - unproperly = true - }, - { - -- snake god's sceptre - itemid = 11692, - type = WEAPON_CLUB, - level = 82, - unproperly = true - }, - { - -- twiceslicer - itemid = 11657, - type = WEAPON_SWORD, - level = 58, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- Zaoan halberd - itemid = 10406, - type = WEAPON_AXE, - level = 25, - unproperly = true - }, - { - -- twin hooks - itemid = 10392, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- drachaku - itemid = 10391, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- Zaoan sword - itemid = 10390, - type = WEAPON_SWORD, - level = 55, - unproperly = true - }, - { - -- sai - itemid = 10389, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- drakinata - itemid = 10388, - type = WEAPON_AXE, - level = 60, - unproperly = true - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = WEAPON_SWORD - }, - { - -- poet's fencing quill - itemid = 9387, - type = WEAPON_SWORD - }, - { - -- farmer's avenger - itemid = 9386, - type = WEAPON_AXE - }, - { - -- club of the fury - itemid = 9385, - type = WEAPON_CLUB - }, - { - -- scythe of the reaper - itemid = 9384, - type = WEAPON_AXE - }, - { - -- musician's bow - itemid = 9378, - type = WEAPON_DISTANCE - }, - { - -- stale bread of ancientness - itemid = 9376, - type = WEAPON_CLUB - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = WEAPON_SWORD - }, - { - -- glutton's mace - itemid = 9373, - type = WEAPON_CLUB - }, - { - -- the calamity - itemid = 8104, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- the epiphany - itemid = 8103, - type = WEAPON_SWORD, - level = 120, - unproperly = true - }, - { - -- emerald sword - itemid = 8102, - type = WEAPON_SWORD, - level = 100, - unproperly = true - }, - { - -- the stomper - itemid = 8101, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- obsidian truncheon - itemid = 8100, - type = WEAPON_CLUB, - level = 100, - unproperly = true - }, - { - -- dark trinity mace - itemid = 8099, - type = WEAPON_CLUB, - level = 120, - unproperly = true - }, - { - -- demonwing axe - itemid = 8098, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- solar axe - itemid = 8097, - type = WEAPON_AXE, - level = 130, - unproperly = true - }, - { - -- hellforged axe - itemid = 8096, - type = WEAPON_AXE, - level = 110, - unproperly = true - }, - { - -- wand of voodoo - itemid = 8094, - type = WEAPON_WAND, - wandType = "death", - level = 42, - mana = 13, - damage = {56, 74}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of draconia - itemid = 8093, - type = WEAPON_WAND, - wandType = "fire", - level = 22, - mana = 5, - damage = {23, 37}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of starmstorm - itemid = 8092, - type = WEAPON_WAND, - wandType = "energy", - level = 37, - mana = 13, - damage = {56, 74}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- springsprout rod - itemid = 8084, - type = WEAPON_WAND, - wandType = "earth", - level = 37, - mana = 13, - damage = {56, 74}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- northwind rod - itemid = 8083, - type = WEAPON_WAND, - wandType = "ice", - level = 22, - mana = 5, - damage = {23, 37}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- underworld rod - itemid = 8082, - type = WEAPON_WAND, - wandType = "death", - level = 42, - mana = 13, - damage = {56, 74}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = WEAPON_DISTANCE, - level = 70, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- silkweaver bow - itemid = 8029, - type = WEAPON_DISTANCE, - level = 40, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- yol's bow - itemid = 8028, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- composite hornbow - itemid = 8027, - type = WEAPON_DISTANCE, - level = 50, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- warsinger bow - itemid = 8026, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- ironworker - itemid = 8025, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- devileye - itemid = 8024, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- royal crossbow - itemid = 8023, - type = WEAPON_DISTANCE, - level = 130, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- chain bolter - itemid = 8022, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- modified crossbow - itemid = 8021, - type = WEAPON_DISTANCE, - level = 45, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- jagged sword - itemid = 7774, - type = WEAPON_SWORD - }, - { - -- steel axe - itemid = 7773, - type = WEAPON_AXE - }, - { - -- crimson sword - itemid = 860, - type = WEAPON_SWORD - }, - { - -- energy war hammer - itemid = 810, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- energy orcish maul - itemid = 809, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- energy cranial basher - itemid = 808, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- energy crystal mace - itemid = 807, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- energy clerical mace - itemid = 806, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- energy war axe - itemid = 805, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- energy headchopper - itemid = 804, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- energy heroic axe - itemid = 803, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- energy knight axe - itemid = 802, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge" - }, - { - -- energy barbarian axe - itemid = 801, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- energy dragon slayer - itemid = 798, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- energy blacksteel sword - itemid = 797, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- energy mystic blade - itemid = 796, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- energy relic sword - itemid = 795, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge" - }, - { - -- energy spike sword - itemid = 794, - type = WEAPON_SWORD, - action = "removecharge" - }, - { - -- earth war hammer - itemid = 793, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earth orcish maul - itemid = 792, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- earth cranial basher - itemid = 791, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- earth crystal mace - itemid = 790, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- earth clerical mace - itemid = 789, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- earth war axe - itemid = 788, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earth headchopper - itemid = 787, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earth heroic axe - itemid = 786, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- earth knight axe - itemid = 785, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge" - }, - { - -- earth barbarian axe - itemid = 784, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- earth dragon slayer - itemid = 783, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earth blacksteel sword - itemid = 782, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- earth mystic blade - itemid = 781, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- earth relic sword - itemid = 780, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge" - }, - { - -- earth spike sword - itemid = 779, - type = WEAPON_SWORD, - action = "removecharge" - }, - { - -- earth arrow - itemid = 774, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount" - }, - { - -- flaming arrow - itemid = 763, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount" - }, - { - -- shiver arrow - itemid = 762, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount" - }, - { - -- flash arrow - itemid = 761, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount" - }, - { - -- icy war hammer - itemid = 693, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icy orcish maul - itemid = 692, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- icy cranial basher - itemid = 691, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- icy crystal mace - itemid = 690, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- icy clerical mace - itemid = 689, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- icy war axe - itemid = 688, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icy headchopper - itemid = 687, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icy heroic axe - itemid = 686, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- icy knight axe - itemid = 685, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge" - }, - { - -- icy barbarian axe - itemid = 684, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- icy dragon slayer - itemid = 683, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icy blacksteel sword - itemid = 682, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- icy mystic blade - itemid = 681, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- icy relic sword - itemid = 680, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge" - }, - { - -- icy spike sword - itemid = 679, - type = WEAPON_SWORD, - action = "removecharge" - }, - { - -- fiery war hammer - itemid = 674, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fiery orcish maul - itemid = 673, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- fiery cranial basher - itemid = 672, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- fiery crystal mace - itemid = 671, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge" - }, - { - -- fiery clerical mace - itemid = 670, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- fiery war axe - itemid = 669, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fiery headchopper - itemid = 668, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fiery heroic axe - itemid = 667, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- fiery knight axe - itemid = 666, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge" - }, - { - -- fiery barbarian axe - itemid = 665, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge" - }, - { - -- fiery dragon slayer - itemid = 664, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fiery blacksteel sword - itemid = 663, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fiery mystic blade - itemid = 662, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge" - }, - { - -- fiery relic sword - itemid = 661, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge" - }, - { - -- fiery spike sword - itemid = 660, - type = WEAPON_SWORD, - action = "removecharge" - }, - { - -- noble axe - itemid = 7456, - type = WEAPON_AXE, - level = 35, - unproperly = true - }, - { - -- mythril axe - itemid = 7455, - type = WEAPON_AXE, - level = 80, - unproperly = true - }, - { - -- glorious axe - itemid = 7454, - type = WEAPON_AXE, - level = 30, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- executioner - itemid = 7453, - type = WEAPON_AXE, - level = 85, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spiked squelcher - itemid = 7452, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- shadow sceptre - itemid = 7451, - type = WEAPON_CLUB, - level = 35, - unproperly = true - }, - { - -- hammer of prophecy - itemid = 7450, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crystal sword - itemid = 7449, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- elvish bow - itemid = 7438, - type = WEAPON_DISTANCE - }, - { - -- sapphire hammer - itemid = 7437, - type = WEAPON_CLUB, - level = 30, - unproperly = true - }, - { - -- angelic axe - itemid = 7436, - type = WEAPON_AXE, - level = 45, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- impaler - itemid = 7435, - type = WEAPON_AXE, - level = 85, - unproperly = true - }, - { - -- royal axe - itemid = 7434, - type = WEAPON_AXE, - level = 75, - unproperly = true - }, - { - -- ravenwing - itemid = 7433, - type = WEAPON_AXE, - level = 65, - unproperly = true - }, - { - -- furry club - itemid = 7432, - type = WEAPON_CLUB, - level = 20, - unproperly = true - }, - { - -- demonbone - itemid = 7431, - type = WEAPON_CLUB, - level = 80, - unproperly = true - }, - { - -- dragonbone staff - itemid = 7430, - type = WEAPON_CLUB, - level = 30, - unproperly = true - }, - { - -- blessed sceptre - itemid = 7429, - type = WEAPON_CLUB, - level = 75, - unproperly = true - }, - { - -- bonebreaker - itemid = 7428, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- chaos mace - itemid = 7427, - type = WEAPON_CLUB, - level = 45, - unproperly = true - }, - { - -- amber staff - itemid = 7426, - type = WEAPON_CLUB, - level = 40, - unproperly = true - }, - { - -- taurus mace - itemid = 7425, - type = WEAPON_CLUB, - level = 20, - unproperly = true - }, - { - -- lunar staff - itemid = 7424, - type = WEAPON_CLUB, - level = 30, - unproperly = true - }, - { - -- skullcrusher - itemid = 7423, - type = WEAPON_CLUB, - level = 85, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- jade hammer - itemid = 7422, - type = WEAPON_CLUB, - level = 70, - unproperly = true - }, - { - -- onyx flail - itemid = 7421, - type = WEAPON_CLUB, - level = 65, - unproperly = true - }, - { - -- reaper's axe - itemid = 7420, - type = WEAPON_AXE, - level = 70, - unproperly = true - }, - { - -- dreaded cleaver - itemid = 7419, - type = WEAPON_AXE, - level = 40, - unproperly = true - }, - { - -- nightmare blade - itemid = 7418, - type = WEAPON_SWORD, - level = 70, - unproperly = true - }, - { - -- runed sword - itemid = 7417, - type = WEAPON_SWORD, - level = 65, - unproperly = true - }, - { - -- bloody edge - itemid = 7416, - type = WEAPON_SWORD, - level = 55, - unproperly = true - }, - { - -- cranial basher - itemid = 7415, - type = WEAPON_CLUB, - level = 60, - unproperly = true - }, - { - -- abyss hammer - itemid = 7414, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- titan axe - itemid = 7413, - type = WEAPON_AXE, - level = 40, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- butcher's axe - itemid = 7412, - type = WEAPON_AXE, - level = 45, - unproperly = true - }, - { - -- ornamented axe - itemid = 7411, - type = WEAPON_AXE, - level = 50, - unproperly = true - }, - { - -- queen's sceptre - itemid = 7410, - type = WEAPON_CLUB, - level = 55, - unproperly = true - }, - { - -- northern star - itemid = 7409, - type = WEAPON_CLUB, - level = 50, - unproperly = true - }, - { - -- wyvern fang - itemid = 7408, - type = WEAPON_SWORD, - level = 25, - unproperly = true - }, - { - -- haunted blade - itemid = 7407, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- blacksteel sword - itemid = 7406, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- havoc blade - itemid = 7405, - type = WEAPON_SWORD, - level = 70, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- assassin dagger - itemid = 7404, - type = WEAPON_SWORD, - level = 40, - unproperly = true - }, - { - -- berserker - itemid = 7403, - type = WEAPON_SWORD, - level = 65, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- dragon slayer - itemid = 7402, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- orcish maul - itemid = 7392, - type = WEAPON_CLUB, - level = 35, - unproperly = true - }, - { - -- thaian sword - itemid = 7391, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- the justice seeker - itemid = 7390, - type = WEAPON_SWORD, - level = 75, - unproperly = true - }, - { - -- heroic axe - itemid = 7389, - type = WEAPON_AXE, - level = 60, - unproperly = true - }, - { - -- vile axe - itemid = 7388, - type = WEAPON_AXE, - level = 55, - unproperly = true - }, - { - -- diamond sceptre - itemid = 7387, - type = WEAPON_CLUB, - level = 25, - unproperly = true - }, - { - -- mercenary sword - itemid = 7386, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- crimson sword - itemid = 7385, - type = WEAPON_SWORD, - level = 20, - unproperly = true - }, - { - -- mystic blade - itemid = 7384, - type = WEAPON_SWORD, - level = 60, - unproperly = true - }, - { - -- relic sword - itemid = 7383, - type = WEAPON_SWORD, - level = 50, - unproperly = true - }, - { - -- demonrage sword - itemid = 7382, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- mammoth whopper - itemid = 7381, - type = WEAPON_CLUB, - level = 20, - unproperly = true - }, - { - -- headchopper - itemid = 7380, - type = WEAPON_AXE, - level = 35, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- brutetamer's staff - itemid = 7379, - type = WEAPON_CLUB, - level = 25, - unproperly = true - }, - { - -- royal spear - itemid = 7378, - type = WEAPON_MISSILE, - level = 25, - unproperly = true, - breakchance = 3 - }, - { - -- assassin star - itemid = 7368, - type = WEAPON_MISSILE, - level = 80, - unproperly = true, - breakchance = 33 - }, - { - -- enchanted spear - itemid = 7367, - type = WEAPON_MISSILE, - level = 42, - unproperly = true, - breakchance = 1 - }, - { - -- onyx arrow - itemid = 7365, - type = WEAPON_AMMO, - level = 40, - unproperly = true, - action = "removecount" - }, - { - -- sniper arrow - itemid = 7364, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount" - }, - { - -- piercing bolt - itemid = 7363, - type = WEAPON_AMMO, - level = 30, - unproperly = true, - action = "removecount" - }, - { - -- ruthless axe - itemid = 6553, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- infernal bolt - itemid = 6528, - type = WEAPON_AMMO, - level = 110, - unproperly = true, - action = "removecount" - }, - { - -- the avenger - itemid = 6527, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = WEAPON_SWORD - }, - { - -- arbalest - itemid = 5803, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - {"Paladin", true}, - {"Royal Paladin"} - } - }, - { - -- banana staff - itemid = 3348, - type = WEAPON_CLUB - }, - { - -- hunting spear - itemid = 3347, - type = WEAPON_MISSILE, - level = 20, - unproperly = true, - breakchance = 6 - }, - { - -- ripper lance - itemid = 3346, - type = WEAPON_AXE - }, - { - -- templar scytheblade - itemid = 3345, - type = WEAPON_SWORD - }, - { - -- beastslayer axe - itemid = 3344, - type = WEAPON_AXE, - level = 30, - unproperly = true - }, - { - -- lich staff - itemid = 3343, - type = WEAPON_CLUB, - level = 40, - unproperly = true - }, - { - -- scythe - itemid = 3453, - type = WEAPON_CLUB - }, - { - -- power bolt - itemid = 3450, - type = WEAPON_AMMO, - level = 55, - unproperly = true, - action = "removecount" - }, - { - -- arrow - itemid = 3447, - type = WEAPON_AMMO, - action = "removecount" - }, - { - -- bolt - itemid = 3446, - type = WEAPON_AMMO, - action = "removecount" - }, - { - -- bow - itemid = 3350, - type = WEAPON_DISTANCE - }, - { - -- crossbow - itemid = 3349, - type = WEAPON_DISTANCE - }, - { - -- war axe - itemid = 3342, - type = WEAPON_AXE, - level = 65, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- arcane staff - itemid = 3341, - type = WEAPON_CLUB, - level = 75, - unproperly = true - }, - { - -- heavy mace - itemid = 3340, - type = WEAPON_CLUB, - level = 70, - unproperly = true - }, - { - -- djinn blade - itemid = 3339, - type = WEAPON_SWORD, - level = 35, - unproperly = true - }, - { - -- bone sword - itemid = 3338, - type = WEAPON_SWORD - }, - { - -- bone club - itemid = 3337, - type = WEAPON_CLUB - }, - { - -- studded club - itemid = 3336, - type = WEAPON_CLUB - }, - { - -- twin axe - itemid = 3335, - type = WEAPON_AXE, - level = 50, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- pharaoh sword - itemid = 3334, - type = WEAPON_SWORD, - level = 45, - unproperly = true - }, - { - -- crystal mace - itemid = 3333, - type = WEAPON_CLUB, - level = 35, - unproperly = true - }, - { - -- hammer of wrath - itemid = 3332, - type = WEAPON_CLUB, - level = 65, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- ravager's axe - itemid = 3331, - type = WEAPON_AXE, - level = 70, - unproperly = true - }, - { - -- heavy machete - itemid = 3330, - type = WEAPON_SWORD - }, - { - -- daramian axe - itemid = 3329, - type = WEAPON_AXE - }, - { - -- daramian waraxe - itemid = 3328, - type = WEAPON_AXE, - level = 25, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- daramian mace - itemid = 3327, - type = WEAPON_CLUB - }, - { - -- epee - itemid = 3326, - type = WEAPON_SWORD, - level = 30, - unproperly = true - }, - { - -- light mace - itemid = 3325, - type = WEAPON_CLUB - }, - { - -- skull staff - itemid = 3324, - type = WEAPON_CLUB, - level = 30, - unproperly = true - }, - { - -- dwarven axe - itemid = 3323, - type = WEAPON_AXE, - level = 20, - unproperly = true - }, - { - -- dragon hammer - itemid = 3322, - type = WEAPON_CLUB, - level = 25, - unproperly = true - }, - { - -- enchanted staff - itemid = 3321, - type = WEAPON_CLUB - }, - { - -- fire axe - itemid = 3320, - type = WEAPON_AXE, - level = 35, - unproperly = true - }, - { - -- stonecutter axe - itemid = 3319, - type = WEAPON_AXE, - level = 90, - unproperly = true - }, - { - -- knight axe - itemid = 3318, - type = WEAPON_AXE, - level = 25, - unproperly = true - }, - { - -- barbarian axe - itemid = 3317, - type = WEAPON_AXE, - level = 20, - unproperly = true - }, - { - -- orcish axe - itemid = 3316, - type = WEAPON_AXE - }, - { - -- guardian halberd - itemid = 3315, - type = WEAPON_AXE, - level = 55, - unproperly = true - }, - { - -- naginata - itemid = 3314, - type = WEAPON_AXE, - level = 25, - unproperly = true - }, - { - -- obsidian lance - itemid = 3313, - type = WEAPON_AXE, - level = 20, - unproperly = true - }, - { - -- silver mace - itemid = 3312, - type = WEAPON_CLUB, - level = 45, - unproperly = true - }, - { - -- clerical mace - itemid = 3311, - type = WEAPON_CLUB, - level = 20, - unproperly = true - }, - { - -- iron hammer - itemid = 3310, - type = WEAPON_CLUB - }, - { - -- thunder hammer - itemid = 3309, - type = WEAPON_CLUB, - level = 85, - unproperly = true - }, - { - -- machete - itemid = 3308, - type = WEAPON_SWORD - }, - { - -- scimitar - itemid = 3307, - type = WEAPON_SWORD - }, - { - -- golden sickle - itemid = 3306, - type = WEAPON_AXE - }, - { - -- battle hammer - itemid = 3305, - type = WEAPON_CLUB - }, - { - -- crowbar - itemid = 3304, - type = WEAPON_CLUB - }, - { - -- great axe - itemid = 3303, - type = WEAPON_AXE, - level = 95, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- dragon lance - itemid = 3302, - type = WEAPON_AXE, - level = 60, - unproperly = true - }, - { - -- broadsword - itemid = 3301, - type = WEAPON_SWORD, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- katana - itemid = 3300, - type = WEAPON_SWORD - }, - { - -- poison dagger - itemid = 3299, - type = WEAPON_SWORD - }, - { - -- throwing knife - itemid = 3298, - type = WEAPON_MISSILE, - breakchance = 7 - }, - { - -- serpent sword - itemid = 3297, - type = WEAPON_SWORD - }, - { - -- warlord sword - itemid = 3296, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- bright sword - itemid = 3295, - type = WEAPON_SWORD, - level = 30, - unproperly = true - }, - { - -- short sword - itemid = 3294, - type = WEAPON_SWORD - }, - { - -- sickle - itemid = 3293, - type = WEAPON_AXE - }, - { - -- combat knife - itemid = 3292, - type = WEAPON_SWORD - }, - { - -- knife - itemid = 3291, - type = WEAPON_SWORD - }, - { - -- silver dagger - itemid = 3290, - type = WEAPON_SWORD - }, - { - -- staff - itemid = 3289, - type = WEAPON_CLUB - }, - { - -- magic sword - itemid = 3288, - type = WEAPON_SWORD, - level = 80, - unproperly = true - }, - { - -- throwing star - itemid = 3287, - type = WEAPON_MISSILE, - breakchance = 10 - }, - { - -- mace - itemid = 3286, - type = WEAPON_CLUB - }, - { - -- longsword - itemid = 3285, - type = WEAPON_SWORD - }, - { - -- ice rapier - itemid = 3284, - type = WEAPON_SWORD, - action = "removecharge" - }, - { - -- carlin sword - itemid = 3283, - type = WEAPON_SWORD - }, - { - -- morning star - itemid = 3282, - type = WEAPON_CLUB - }, - { - -- giant sword - itemid = 3281, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- fire sword - itemid = 3280, - type = WEAPON_SWORD, - level = 30, - unproperly = true - }, - { - -- war hammer - itemid = 3279, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- magic longsword - itemid = 3278, - type = WEAPON_SWORD, - level = 140, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- spear - itemid = 3277, - type = WEAPON_MISSILE, - breakchance = 3 - }, - { - -- hatchet - itemid = 3276, - type = WEAPON_AXE - }, - { - -- double axe - itemid = 3275, - type = WEAPON_AXE, - level = 25, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- axe - itemid = 3274, - type = WEAPON_AXE - }, - { - -- sabre - itemid = 3273, - type = WEAPON_SWORD - }, - { - -- rapier - itemid = 3272, - type = WEAPON_SWORD - }, - { - -- spike sword - itemid = 3271, - type = WEAPON_SWORD - }, - { - -- club - itemid = 3270, - type = WEAPON_CLUB - }, - { - -- halberd - itemid = 3269, - type = WEAPON_AXE, - level = 25, - unproperly = true - }, - { - -- hand axe - itemid = 3268, - type = WEAPON_AXE - }, - { - -- dagger - itemid = 3267, - type = WEAPON_SWORD - }, - { - -- battle axe - itemid = 3266, - type = WEAPON_AXE, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- two handed sword - itemid = 3265, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - vocation = { - {"Knight", true}, - {"Elite Knight"} - } - }, - { - -- sword - itemid = 3264, - type = WEAPON_SWORD - }, - { - -- giant smithhammer - itemid = 3208, - type = WEAPON_CLUB - }, - { - -- wand of dragonbreath - itemid = 3075, - type = WEAPON_WAND, - wandType = "fire", - level = 13, - mana = 3, - damage = {13, 25}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of vortex - itemid = 3074, - type = WEAPON_WAND, - wandType = "energy", - level = 6, - mana = 1, - damage = {8, 18}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of cosmic energy - itemid = 3073, - type = WEAPON_WAND, - wandType = "energy", - level = 26, - mana = 8, - damage = {37, 53}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of decay - itemid = 3072, - type = WEAPON_WAND, - wandType = "death", - level = 19, - mana = 5, - damage = {23, 37}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- wand of inferno - itemid = 3071, - type = WEAPON_WAND, - wandType = "fire", - level = 33, - mana = 8, - damage = {56, 74}, - vocation = { - {"Sorcerer", true}, - {"Master Sorcerer"} - } - }, - { - -- moonlight rod - itemid = 3070, - type = WEAPON_WAND, - wandType = "ice", - level = 13, - mana = 3, - damage = {13, 25}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- necrotic rod - itemid = 3069, - type = WEAPON_WAND, - wandType = "death", - level = 19, - mana = 5, - damage = {23, 37}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- hailstorm rod - itemid = 3067, - type = WEAPON_WAND, - wandType = "ice", - level = 33, - mana = 13, - damage = {56, 74}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- snakebit rod - itemid = 3066, - type = WEAPON_WAND, - wandType = "earth", - level = 6, - mana = 2, - damage = {8, 18}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- terra rod - itemid = 3065, - type = WEAPON_WAND, - wandType = "earth", - level = 26, - mana = 8, - damage = {37, 53}, - vocation = { - {"Druid", true}, - {"Elder Druid"} - } - }, - { - -- snowball - itemid = 2992, - type = WEAPON_MISSILE, - action = "removecount" - }, - { - -- small stone - itemid = 1781, - type = WEAPON_MISSILE, - breakchance = 3 - } -} - -for _, w in ipairs(weapons) do - local weapon = Weapon(w.type) - weapon:id(w.itemid or w.itemId) - - if(w.action) then - weapon:action(w.action) - end - if(w.breakchance or w.breakChance) then - weapon:breakChance(w.breakchance or w.breakChance) - end - if(w.level) then - weapon:level(w.level) - end - if(w.mana) then - weapon:mana(w.mana) - end - if(w.unproperly) then - weapon:wieldUnproperly(w.unproperly) - end - if(w.damage) then - weapon:damage(w.damage[1], w.damage[2]) - end - if(w.wandtype or w.wandType) then - weapon:element(w.wandtype or w.wandType) - end - if(w.vocation) then - for _, v in ipairs(w.vocation) do - weapon:vocation(v[1], v[2] or false, v[3] or false) - end - end - - weapon:register() -end diff --git a/data/items/items.xml b/data/items/items.xml index f7c5c1302ab..64e7909cbe9 100644 --- a/data/items/items.xml +++ b/data/items/items.xml @@ -2,26 +2,24 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -34,9 +32,9 @@ - - - + + + @@ -592,6 +590,9 @@ + + + @@ -667,6 +668,9 @@ + + + @@ -877,6 +881,9 @@ + + + @@ -905,12 +912,18 @@ + + + + + + @@ -933,13 +946,16 @@ - + + + + @@ -947,6 +963,12 @@ + + + + + + @@ -954,18 +976,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -973,6 +1015,12 @@ + + + + + + @@ -980,6 +1028,12 @@ + + + + + + @@ -987,18 +1041,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -1006,6 +1080,12 @@ + + + + + + @@ -1013,6 +1093,12 @@ + + + + + + @@ -1020,20 +1106,38 @@ + + + + + + + + + + + + + + + + + + + - @@ -1046,13 +1150,16 @@ - + + + + @@ -1060,6 +1167,12 @@ + + + + + + @@ -1067,18 +1180,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -1086,6 +1219,12 @@ + + + + + + @@ -1093,6 +1232,12 @@ + + + + + + @@ -1100,18 +1245,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -1119,6 +1284,12 @@ + + + + + + @@ -1126,6 +1297,12 @@ + + + + + + @@ -1133,20 +1310,38 @@ + + + + + + + + + + + + + + + + + + + - @@ -1516,6 +1711,12 @@ + + + + + + @@ -1525,6 +1726,12 @@ + + + + + + @@ -1534,6 +1741,12 @@ + + + + + + @@ -1595,19 +1808,28 @@ + + + + + + - + + + + @@ -1615,6 +1837,12 @@ + + + + + + @@ -1622,18 +1850,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -1641,6 +1889,12 @@ + + + + + + @@ -1648,6 +1902,12 @@ + + + + + + @@ -1655,18 +1915,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -1674,6 +1954,12 @@ + + + + + + @@ -1681,6 +1967,12 @@ + + + + + + @@ -1688,24 +1980,47 @@ + + + + + + + + + + + + + + + + + + + + + + + @@ -1713,6 +2028,12 @@ + + + + + + @@ -1720,29 +2041,53 @@ + + + + + + + + + + + + + + + + + + + + - - + + + + + + @@ -1750,6 +2095,12 @@ + + + + + + @@ -1757,18 +2108,38 @@ + + + + + + + + + + + + + + + + + + + + @@ -1776,6 +2147,12 @@ + + + + + + @@ -1783,6 +2160,12 @@ + + + + + + @@ -1790,31 +2173,59 @@ + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + @@ -1822,6 +2233,11 @@ + + + + + @@ -1830,6 +2246,10 @@ + + + + @@ -1838,6 +2258,10 @@ + + + + @@ -1846,6 +2270,10 @@ + + + + @@ -1854,6 +2282,10 @@ + + + + @@ -1863,6 +2295,11 @@ + + + + + @@ -1870,6 +2307,11 @@ + + + + + @@ -1879,66 +2321,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1987,6 +2480,9 @@ + + + @@ -2045,6 +2541,9 @@ + + + @@ -2067,6 +2566,9 @@ + + + @@ -2102,6 +2604,9 @@ + + + @@ -2112,11 +2617,17 @@ + + + + + + @@ -2634,6 +3145,10 @@ + + + + @@ -4099,7 +4614,6 @@ - @@ -4158,6 +4672,9 @@ + + + @@ -4165,6 +4682,9 @@ + + + @@ -4177,34 +4697,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -4212,6 +4756,9 @@ + + + @@ -4219,6 +4766,9 @@ + + + @@ -4226,6 +4776,9 @@ + + + @@ -4233,6 +4786,9 @@ + + + @@ -4240,6 +4796,9 @@ + + + @@ -4247,6 +4806,9 @@ + + + @@ -4254,6 +4816,9 @@ + + + @@ -4261,6 +4826,9 @@ + + + @@ -4606,6 +5174,10 @@ + + + + @@ -4642,58 +5214,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4705,6 +5319,9 @@ + + + @@ -4714,6 +5331,9 @@ + + + @@ -4779,6 +5399,9 @@ + + + @@ -4793,9 +5416,9 @@ + - @@ -4805,36 +5428,55 @@ + + + + + + + + + + + + + + + + + + + @@ -4842,11 +5484,17 @@ + + + + + + @@ -4854,10 +5502,16 @@ + + + + + + @@ -4876,6 +5530,10 @@ + + + + @@ -4888,75 +5546,123 @@ + + + - + + + + + + - + + + + + + - + + + + + + - + + + + + + - + + + + + + - + + + + + + - + + + + + + - + + + + + + - + + + + + + - + @@ -4967,6 +5673,11 @@ + + + + + @@ -4982,9 +5693,15 @@ + + + + + + @@ -4993,11 +5710,14 @@ + + + + - @@ -5007,6 +5727,9 @@ + + + @@ -5014,6 +5737,9 @@ + + + @@ -5021,6 +5747,9 @@ + + + @@ -5028,6 +5757,9 @@ + + + @@ -5037,6 +5769,9 @@ + + + @@ -5045,6 +5780,9 @@ + + + @@ -5054,6 +5792,10 @@ + + + + @@ -5066,6 +5808,9 @@ + + + @@ -5073,24 +5818,36 @@ + + + + + + + + + + + + @@ -5099,6 +5856,9 @@ + + + @@ -5107,6 +5867,9 @@ + + + @@ -5115,18 +5878,27 @@ + + + + + + + + + @@ -5136,6 +5908,9 @@ + + + @@ -5148,6 +5923,9 @@ + + + @@ -5156,6 +5934,9 @@ + + + @@ -5528,6 +6309,9 @@ + + + @@ -5542,6 +6326,10 @@ + + + + @@ -5603,6 +6391,9 @@ + + + @@ -5616,6 +6407,9 @@ + + + @@ -5623,6 +6417,9 @@ + + + @@ -5695,14 +6492,23 @@ + + + + + + + + + @@ -5730,6 +6536,9 @@ + + + @@ -5775,6 +6584,9 @@ + + + @@ -5782,6 +6594,12 @@ + + + + + + @@ -5789,18 +6607,29 @@ + + + + + + + + + + + @@ -5808,12 +6637,20 @@ + + + + + + + + @@ -5829,6 +6666,9 @@ + + + @@ -5836,6 +6676,9 @@ + + + @@ -5843,12 +6686,18 @@ + + + + + + @@ -5856,12 +6705,21 @@ + + + + + + + + + @@ -5870,6 +6728,10 @@ + + + + @@ -5878,6 +6740,12 @@ + + + + + + @@ -5892,6 +6760,12 @@ + + + + + + @@ -5901,6 +6775,11 @@ + + + + + @@ -5916,12 +6795,21 @@ + + + + + + + + + @@ -5929,6 +6817,9 @@ + + + @@ -5938,18 +6829,28 @@ + + + + + + + + + + @@ -5958,6 +6859,10 @@ + + + + @@ -5973,6 +6878,11 @@ + + + + + @@ -5980,36 +6890,54 @@ + + + + + + + + + + + + + + + + + + @@ -6025,6 +6953,11 @@ + + + + + @@ -6033,6 +6966,12 @@ + + + + + + @@ -6041,6 +6980,9 @@ + + + @@ -6049,6 +6991,10 @@ + + + + @@ -6056,6 +7002,9 @@ + + + @@ -6063,6 +7012,9 @@ + + + @@ -6077,6 +7029,10 @@ + + + + @@ -6092,6 +7048,11 @@ + + + + + @@ -6107,6 +7068,12 @@ + + + + + + @@ -6114,18 +7081,27 @@ + + + + + + + + + @@ -6133,12 +7109,18 @@ + + + + + + @@ -6154,12 +7136,20 @@ + + + + + + + + @@ -6174,6 +7164,11 @@ + + + + + @@ -6189,6 +7184,11 @@ + + + + + @@ -6196,6 +7196,11 @@ + + + + + @@ -6203,6 +7208,11 @@ + + + + + @@ -6217,12 +7227,20 @@ + + + + + + + + @@ -6237,6 +7255,11 @@ + + + + + @@ -6251,6 +7274,11 @@ + + + + + @@ -6266,6 +7294,11 @@ + + + + + @@ -6275,6 +7308,11 @@ + + + + + @@ -6285,12 +7323,20 @@ + + + + + + + + @@ -6305,6 +7351,11 @@ + + + + + @@ -6320,12 +7371,20 @@ + + + + + + + + @@ -6339,12 +7398,20 @@ + + + + + + + + @@ -6352,18 +7419,30 @@ + + + + + + + + + + + + @@ -6378,6 +7457,11 @@ + + + + + @@ -6393,6 +7477,12 @@ + + + + + + @@ -6407,6 +7497,11 @@ + + + + + @@ -6414,6 +7509,11 @@ + + + + + @@ -6428,6 +7528,12 @@ + + + + + + @@ -6435,6 +7541,9 @@ + + + @@ -6442,12 +7551,18 @@ + + + + + + @@ -6462,6 +7577,11 @@ + + + + + @@ -6477,6 +7597,11 @@ + + + + + @@ -6492,6 +7617,11 @@ + + + + + @@ -6506,6 +7636,12 @@ + + + + + + @@ -6514,6 +7650,11 @@ + + + + + @@ -6528,6 +7669,11 @@ + + + + + @@ -6535,6 +7681,9 @@ + + + @@ -6542,6 +7691,9 @@ + + + @@ -6550,6 +7702,12 @@ + + + + + + @@ -6557,6 +7715,9 @@ + + + @@ -6571,6 +7732,9 @@ + + + @@ -6578,34 +7742,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -6619,10 +7807,16 @@ + + + + + + @@ -6636,22 +7830,39 @@ + + + + + + + + + + + + + + + + + @@ -6665,6 +7876,9 @@ + + + @@ -6678,15 +7892,25 @@ + + + + + + + + + + @@ -6699,6 +7923,9 @@ + + + @@ -6712,42 +7939,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6761,6 +8020,9 @@ + + + @@ -6774,18 +8036,32 @@ + + + + + + + + + + + + + + @@ -6798,6 +8074,9 @@ + + + @@ -6811,6 +8090,10 @@ + + + + @@ -6824,6 +8107,9 @@ + + + @@ -6837,14 +8123,23 @@ + + + + + + + + + @@ -6857,6 +8152,9 @@ + + + @@ -6870,6 +8168,9 @@ + + + @@ -6882,6 +8183,9 @@ + + + @@ -6896,10 +8200,18 @@ + + + + + + + + @@ -6913,6 +8225,9 @@ + + + @@ -6927,11 +8242,17 @@ + + + + + + @@ -6945,23 +8266,38 @@ + + + + + + + + + + + + + + + @@ -6975,18 +8311,30 @@ + + + + + + + + + + + + @@ -6999,6 +8347,9 @@ + + + @@ -7013,26 +8364,41 @@ + + + + + + + + + + + + + + + @@ -7048,11 +8414,17 @@ + + + + + + @@ -7067,12 +8439,18 @@ + + + + + + @@ -7087,6 +8465,9 @@ + + + @@ -7101,6 +8482,9 @@ + + + @@ -7116,11 +8500,17 @@ + + + + + + @@ -7136,12 +8526,18 @@ + + + + + + @@ -7157,21 +8553,33 @@ + + + + + + + + + + + + @@ -7186,17 +8594,26 @@ + + + + + + + + + @@ -7211,11 +8628,17 @@ + + + + + + @@ -7230,6 +8653,9 @@ + + + @@ -7245,6 +8671,9 @@ + + + @@ -7259,6 +8688,9 @@ + + + @@ -7273,6 +8705,9 @@ + + + @@ -7287,11 +8722,17 @@ + + + + + + @@ -7307,16 +8748,25 @@ + + + + + + + + + @@ -7331,11 +8781,17 @@ + + + + + + @@ -7350,11 +8806,17 @@ + + + + + + @@ -7363,6 +8825,10 @@ + + + + @@ -7371,6 +8837,10 @@ + + + + @@ -7395,6 +8865,12 @@ + + + + + + @@ -7408,6 +8884,9 @@ + + + @@ -7615,6 +9094,9 @@ + + + @@ -7622,12 +9104,18 @@ + + + + + + @@ -7635,12 +9123,18 @@ + + + + + + @@ -7648,6 +9142,9 @@ + + + @@ -7655,6 +9152,9 @@ + + + @@ -7662,46 +9162,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7716,23 +9249,42 @@ + + + + + + + + + + + + + + + + + + + @@ -7745,22 +9297,35 @@ + + + + + + + + + + + + + @@ -8313,6 +9878,11 @@ + + + + + @@ -9537,7 +11107,6 @@ - @@ -9603,7 +11172,8 @@ - + + @@ -10222,6 +11792,9 @@ + + + @@ -10843,6 +12416,9 @@ + + + @@ -10850,6 +12426,9 @@ + + + @@ -11301,6 +12880,9 @@ + + + @@ -11392,6 +12974,9 @@ + + + @@ -11405,6 +12990,12 @@ + + + + + + @@ -11576,6 +13167,9 @@ + + + @@ -11623,10 +13217,16 @@ + + + + + + @@ -11654,10 +13254,16 @@ + + + + + + @@ -11751,10 +13357,16 @@ + + + + + + @@ -11783,7 +13395,6 @@ - @@ -12520,7 +14131,6 @@ - @@ -12560,10 +14170,16 @@ + + + + + + @@ -12584,6 +14200,9 @@ + + + @@ -12657,6 +14276,9 @@ + + + @@ -12681,6 +14303,9 @@ + + + @@ -12872,6 +14497,9 @@ + + + @@ -12883,6 +14511,9 @@ + + + @@ -13259,6 +14890,9 @@ + + + @@ -13288,6 +14922,9 @@ + + + @@ -13306,7 +14943,7 @@ - + @@ -13495,6 +15132,12 @@ + + + + + + @@ -13503,12 +15146,21 @@ + + + + + + + + + @@ -13517,6 +15169,9 @@ + + + @@ -13594,6 +15249,12 @@ + + + + + + @@ -13658,6 +15319,9 @@ + + + @@ -13761,7 +15425,7 @@ - + @@ -13923,7 +15587,7 @@ - + @@ -14411,10 +16075,16 @@ + + + + + + @@ -14469,6 +16139,12 @@ + + + + + + @@ -14477,6 +16153,12 @@ + + + + + + @@ -14485,6 +16167,12 @@ + + + + + + @@ -14494,6 +16182,9 @@ + + + @@ -14502,6 +16193,12 @@ + + + + + + @@ -14510,6 +16207,12 @@ + + + + + + @@ -14560,6 +16263,12 @@ + + + + + + @@ -14568,6 +16277,11 @@ + + + + + @@ -14583,6 +16297,12 @@ + + + + + + @@ -14590,6 +16310,11 @@ + + + + + @@ -14604,6 +16329,12 @@ + + + + + + @@ -14618,6 +16349,11 @@ + + + + + @@ -14633,6 +16369,11 @@ + + + + + @@ -14647,6 +16388,11 @@ + + + + + @@ -14655,6 +16401,12 @@ + + + + + + @@ -14662,6 +16414,11 @@ + + + + + @@ -14669,6 +16426,11 @@ + + + + + @@ -14684,6 +16446,11 @@ + + + + + @@ -14692,6 +16459,11 @@ + + + + + @@ -14706,6 +16478,12 @@ + + + + + + @@ -14721,6 +16499,11 @@ + + + + + @@ -14762,6 +16545,12 @@ + + + + + + @@ -14776,6 +16565,12 @@ + + + + + + @@ -14790,6 +16585,11 @@ + + + + + @@ -14804,6 +16604,12 @@ + + + + + + @@ -14819,6 +16625,12 @@ + + + + + + @@ -14833,6 +16645,12 @@ + + + + + + @@ -14847,6 +16665,11 @@ + + + + + @@ -14854,6 +16677,11 @@ + + + + + @@ -14867,6 +16695,11 @@ + + + + + @@ -14874,6 +16707,11 @@ + + + + + @@ -14888,6 +16726,11 @@ + + + + + @@ -14895,6 +16738,12 @@ + + + + + + @@ -14910,6 +16759,12 @@ + + + + + + @@ -14925,6 +16780,11 @@ + + + + + @@ -14939,6 +16799,11 @@ + + + + + @@ -14953,6 +16818,11 @@ + + + + + @@ -14967,6 +16837,11 @@ + + + + + @@ -14981,6 +16856,11 @@ + + + + + @@ -14988,6 +16868,11 @@ + + + + + @@ -15001,6 +16886,11 @@ + + + + + @@ -15008,6 +16898,11 @@ + + + + + @@ -15022,6 +16917,12 @@ + + + + + + @@ -15036,6 +16937,11 @@ + + + + + @@ -15043,6 +16949,11 @@ + + + + + @@ -15057,6 +16968,11 @@ + + + + + @@ -15065,6 +16981,11 @@ + + + + + @@ -15073,6 +16994,12 @@ + + + + + + @@ -15088,6 +17015,11 @@ + + + + + @@ -15102,6 +17034,11 @@ + + + + + @@ -15116,6 +17053,11 @@ + + + + + @@ -15123,6 +17065,11 @@ + + + + + @@ -15130,6 +17077,11 @@ + + + + + @@ -15145,6 +17097,11 @@ + + + + + @@ -15159,6 +17116,11 @@ + + + + + @@ -15166,6 +17128,12 @@ + + + + + + @@ -15180,6 +17148,11 @@ + + + + + @@ -15196,6 +17169,9 @@ + + + @@ -15237,6 +17213,12 @@ + + + + + + @@ -15244,6 +17226,12 @@ + + + + + + @@ -15257,6 +17245,11 @@ + + + + + @@ -15271,6 +17264,12 @@ + + + + + + @@ -15285,6 +17284,12 @@ + + + + + + @@ -15292,6 +17297,12 @@ + + + + + + @@ -15306,6 +17317,11 @@ + + + + + @@ -15319,6 +17335,11 @@ + + + + + @@ -15326,6 +17347,9 @@ + + + @@ -15339,11 +17363,17 @@ + + + + + + @@ -15358,14 +17388,23 @@ + + + + + + + + + @@ -15380,10 +17419,16 @@ + + + + + + @@ -15429,6 +17474,9 @@ + + + @@ -15639,6 +17687,9 @@ + + + @@ -15681,6 +17732,9 @@ + + + @@ -15688,6 +17742,9 @@ + + + @@ -15920,6 +17977,10 @@ + + + + @@ -15928,12 +17989,20 @@ + + + + + + + + @@ -15986,6 +18055,12 @@ + + + + + + @@ -16001,6 +18076,12 @@ + + + + + + @@ -16017,6 +18098,12 @@ + + + + + + @@ -16033,6 +18120,12 @@ + + + + + + @@ -16048,6 +18141,12 @@ + + + + + + @@ -16064,6 +18163,12 @@ + + + + + + @@ -16080,6 +18185,12 @@ + + + + + + @@ -16088,6 +18199,12 @@ + + + + + + @@ -16103,6 +18220,12 @@ + + + + + + @@ -16111,6 +18234,12 @@ + + + + + + @@ -16129,6 +18258,11 @@ + + + + + @@ -16136,6 +18270,11 @@ + + + + + @@ -16143,6 +18282,11 @@ + + + + + @@ -16150,63 +18294,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -16214,6 +18412,11 @@ + + + + + @@ -16221,6 +18424,11 @@ + + + + + @@ -16228,6 +18436,11 @@ + + + + + @@ -16235,24 +18448,44 @@ + + + + + + + + + + + + + + + + + + + + @@ -16267,18 +18500,33 @@ + + + + + + + + + + + + + + + @@ -16293,11 +18541,19 @@ + + + + + + + + @@ -16316,6 +18572,11 @@ + + + + + @@ -16332,6 +18593,11 @@ + + + + + @@ -16339,6 +18605,11 @@ + + + + + @@ -16346,6 +18617,11 @@ + + + + + @@ -16353,12 +18629,22 @@ + + + + + + + + + + @@ -16368,6 +18654,11 @@ + + + + + @@ -16376,6 +18667,11 @@ + + + + + @@ -16385,6 +18681,11 @@ + + + + + @@ -16397,8 +18698,13 @@ + + + + + - + @@ -16409,8 +18715,13 @@ + + + + + - + @@ -16421,13 +18732,23 @@ + + + + + - + + + + + + @@ -16436,11 +18757,16 @@ + + + + + - + @@ -16451,8 +18777,13 @@ + + + + + - + @@ -16463,8 +18794,13 @@ + + + + + - + @@ -16475,10 +18811,19 @@ + + + + + + + + + @@ -16493,6 +18838,11 @@ + + + + + @@ -16507,6 +18857,11 @@ + + + + + @@ -16521,6 +18876,12 @@ + + + + + + @@ -16528,6 +18889,11 @@ + + + + + @@ -16542,6 +18908,11 @@ + + + + + @@ -16556,6 +18927,12 @@ + + + + + + @@ -16570,6 +18947,11 @@ + + + + + @@ -16584,6 +18966,11 @@ + + + + + @@ -16591,6 +18978,12 @@ + + + + + + @@ -17402,21 +19795,37 @@ + + + + + + + + + + + + + + + + @@ -17426,6 +19835,11 @@ + + + + + @@ -17768,12 +20182,21 @@ + + + + + + + + + @@ -17784,6 +20207,9 @@ + + + @@ -17795,6 +20221,10 @@ + + + + @@ -17803,6 +20233,10 @@ + + + + @@ -18125,6 +20559,11 @@ + + + + + @@ -18233,8 +20672,10 @@ + + + - @@ -18256,60 +20697,46 @@ - - - - - - - - - - - - - - @@ -18336,7 +20763,6 @@ - @@ -18380,9 +20806,7 @@ - - @@ -18475,16 +20899,25 @@ + + + + + + + + + @@ -18505,6 +20938,9 @@ + + + @@ -18612,7 +21048,6 @@ - @@ -18635,6 +21070,10 @@ + + + + @@ -18644,24 +21083,36 @@ + + + + - + + + + + - + + + + + @@ -18765,6 +21216,9 @@ + + + @@ -18772,6 +21226,9 @@ + + + @@ -18785,6 +21242,9 @@ + + + @@ -18792,6 +21252,9 @@ + + + @@ -18799,6 +21262,9 @@ + + + @@ -18814,6 +21280,9 @@ + + + @@ -18829,6 +21298,9 @@ + + + @@ -18843,6 +21315,9 @@ + + + @@ -18858,6 +21333,9 @@ + + + @@ -18871,6 +21349,9 @@ + + + @@ -18884,11 +21365,17 @@ + + + + + + @@ -18897,6 +21384,9 @@ + + + @@ -18904,6 +21394,9 @@ + + + @@ -18912,6 +21405,9 @@ + + + @@ -18919,6 +21415,9 @@ + + + @@ -18940,9 +21439,13 @@ + + + + - + @@ -18952,6 +21455,10 @@ + + + + @@ -18965,6 +21472,9 @@ + + + @@ -18981,17 +21491,26 @@ + + + + + + + + + @@ -19033,6 +21552,9 @@ + + + @@ -19041,6 +21563,9 @@ + + + @@ -19157,6 +21682,9 @@ + + + @@ -19175,6 +21703,9 @@ + + + @@ -19212,6 +21743,9 @@ + + + @@ -19219,10 +21753,16 @@ + + + + + + @@ -19230,6 +21770,9 @@ + + + @@ -19237,6 +21780,9 @@ + + + @@ -19381,6 +21927,10 @@ + + + + @@ -19790,6 +22340,11 @@ + + + + + @@ -19799,6 +22354,11 @@ + + + + + @@ -19806,6 +22366,9 @@ + + + @@ -20060,6 +22623,11 @@ + + + + + @@ -20067,10 +22635,16 @@ + + + + + + @@ -20078,6 +22652,9 @@ + + + @@ -20085,6 +22662,9 @@ + + + @@ -20109,7 +22689,6 @@ - @@ -20168,6 +22747,9 @@ + + + @@ -20288,6 +22870,11 @@ + + + + + @@ -20301,17 +22888,27 @@ + + + + + + + + + + @@ -20326,6 +22923,11 @@ + + + + + @@ -20333,6 +22935,12 @@ + + + + + + @@ -20347,6 +22955,11 @@ + + + + + @@ -20354,6 +22967,12 @@ + + + + + + @@ -20368,6 +22987,12 @@ + + + + + + @@ -20439,6 +23064,11 @@ + + + + + @@ -20458,6 +23088,9 @@ + + + @@ -20539,12 +23172,22 @@ + + + + + + + + + + @@ -20608,6 +23251,11 @@ + + + + + @@ -20630,6 +23278,9 @@ + + + @@ -20656,6 +23307,9 @@ + + + @@ -21164,6 +23818,9 @@ + + + @@ -21299,10 +23956,16 @@ + + + + + + @@ -21604,6 +24267,11 @@ + + + + + @@ -21641,6 +24309,12 @@ + + + + + + @@ -21714,6 +24388,10 @@ + + + + @@ -21761,12 +24439,22 @@ + + + + + + + + + + @@ -21783,6 +24471,11 @@ + + + + + @@ -21797,6 +24490,11 @@ + + + + + @@ -21808,6 +24506,11 @@ + + + + + @@ -21822,6 +24525,11 @@ + + + + + @@ -21836,6 +24544,11 @@ + + + + + @@ -21847,6 +24560,9 @@ + + + @@ -21856,11 +24572,17 @@ + + + + + + @@ -22013,7 +24735,6 @@ - @@ -22040,7 +24761,6 @@ - @@ -22643,7 +25363,6 @@ - @@ -22796,9 +25515,15 @@ + + + + + + @@ -22919,6 +25644,10 @@ + + + + @@ -22930,12 +25659,17 @@ - + + + + + + @@ -23015,8 +25749,11 @@ + + + + - @@ -23025,8 +25762,11 @@ + + + + - @@ -23039,6 +25779,9 @@ + + + @@ -23077,6 +25820,11 @@ + + + + + @@ -23133,7 +25881,6 @@ - @@ -23146,11 +25893,9 @@ - - @@ -23164,8 +25909,13 @@ + + + + + - + @@ -23174,6 +25924,11 @@ + + + + + @@ -23187,6 +25942,12 @@ + + + + + + @@ -23200,6 +25961,9 @@ + + + @@ -23207,7 +25971,7 @@ - + @@ -23216,6 +25980,11 @@ + + + + + @@ -23271,7 +26040,6 @@ - @@ -23326,7 +26094,6 @@ - @@ -23521,7 +26288,6 @@ - @@ -24060,6 +26826,11 @@ + + + + + @@ -24068,12 +26839,21 @@ + + + + + + + + + @@ -24093,6 +26873,11 @@ + + + + + @@ -24108,18 +26893,32 @@ + + + + + + + + + + + + + + @@ -24128,6 +26927,11 @@ + + + + + @@ -24143,12 +26947,22 @@ + + + + + + + + + + @@ -24165,6 +26979,11 @@ + + + + + @@ -24178,6 +26997,11 @@ + + + + + @@ -24305,7 +27129,7 @@ - + @@ -24329,6 +27153,11 @@ + + + + + @@ -24346,6 +27175,9 @@ + + + @@ -24353,6 +27185,11 @@ + + + + + @@ -24421,12 +27258,21 @@ + + + + + + + + + @@ -24441,6 +27287,9 @@ + + + @@ -24454,6 +27303,11 @@ + + + + + @@ -24497,7 +27351,6 @@ - @@ -24594,10 +27447,8 @@ - - @@ -24615,7 +27466,6 @@ - @@ -24631,6 +27481,12 @@ + + + + + + @@ -24640,6 +27496,12 @@ + + + + + + @@ -24647,6 +27509,9 @@ + + + @@ -24654,6 +27519,9 @@ + + + @@ -24667,6 +27535,11 @@ + + + + + @@ -24675,6 +27548,12 @@ + + + + + + @@ -24683,6 +27562,12 @@ + + + + + + @@ -24725,6 +27610,9 @@ + + + @@ -24844,6 +27732,12 @@ + + + + + + @@ -24853,18 +27747,21 @@ + + + + + - - @@ -25183,7 +28080,6 @@ - @@ -25238,6 +28134,10 @@ + + + + @@ -25246,6 +28146,12 @@ + + + + + + @@ -25287,7 +28193,7 @@ - + @@ -25655,13 +28561,18 @@ - + + + + + + @@ -25675,6 +28586,9 @@ + + + @@ -25682,6 +28596,9 @@ + + + @@ -25700,6 +28617,11 @@ + + + + + @@ -25707,6 +28629,11 @@ + + + + + @@ -25714,6 +28641,11 @@ + + + + + @@ -25724,6 +28656,11 @@ + + + + + @@ -25732,12 +28669,21 @@ + + + + + + + + + @@ -25753,12 +28699,22 @@ + + + + + + + + + + @@ -25769,6 +28725,11 @@ + + + + + @@ -25777,6 +28738,10 @@ + + + + @@ -25786,14 +28751,23 @@ + + + + - + + + + + + @@ -25802,22 +28776,37 @@ + + + + + - + + + + + + - + + + + + + @@ -25892,6 +28881,12 @@ + + + + + + @@ -25900,6 +28895,12 @@ + + + + + + @@ -25909,6 +28910,12 @@ + + + + + + @@ -25968,6 +28975,11 @@ + + + + + @@ -25984,6 +28996,11 @@ + + + + + @@ -25999,6 +29016,11 @@ + + + + + @@ -26008,6 +29030,12 @@ + + + + + + @@ -26024,6 +29052,12 @@ + + + + + + @@ -26063,6 +29097,11 @@ + + + + + @@ -26222,7 +29261,6 @@ - @@ -26267,6 +29305,10 @@ + + + + @@ -26377,7 +29419,6 @@ - @@ -26392,6 +29433,11 @@ + + + + + @@ -26401,13 +29447,23 @@ + + + + + - + + + + + + @@ -26434,7 +29490,6 @@ - @@ -26472,7 +29527,6 @@ - @@ -27092,6 +30146,9 @@ + + + @@ -27100,6 +30157,11 @@ + + + + + @@ -27114,6 +30176,12 @@ + + + + + + @@ -27144,6 +30212,9 @@ + + + @@ -27160,10 +30231,19 @@ + + + + + + + + + @@ -27178,6 +30258,9 @@ + + + @@ -27207,6 +30290,9 @@ + + + @@ -27232,6 +30318,11 @@ + + + + + @@ -27259,7 +30350,6 @@ - @@ -27396,7 +30486,6 @@ - @@ -27469,7 +30558,6 @@ - @@ -27505,9 +30593,7 @@ - - @@ -29383,6 +32469,9 @@ + + + @@ -29771,7 +32860,7 @@ - + @@ -29964,7 +33053,6 @@ - @@ -29998,7 +33086,6 @@ - @@ -30028,6 +33115,9 @@ + + + @@ -30052,6 +33142,9 @@ + + + @@ -30149,7 +33242,7 @@ - + @@ -30183,11 +33276,21 @@ + + + + + + + + + + @@ -30202,11 +33305,17 @@ + + + + + + @@ -30228,6 +33337,10 @@ + + + + @@ -30243,6 +33356,9 @@ + + + @@ -30253,6 +33369,10 @@ + + + + @@ -30268,6 +33388,9 @@ + + + @@ -30283,12 +33406,18 @@ + + + + + + @@ -30306,9 +33435,14 @@ + + + + + - + @@ -30456,6 +33590,9 @@ + + + @@ -30514,6 +33651,12 @@ + + + + + + @@ -30528,6 +33671,12 @@ + + + + + + @@ -30543,6 +33692,12 @@ + + + + + + @@ -30550,6 +33705,12 @@ + + + + + + @@ -30564,6 +33725,12 @@ + + + + + + @@ -30579,6 +33746,12 @@ + + + + + + @@ -30586,6 +33759,12 @@ + + + + + + @@ -30600,6 +33779,12 @@ + + + + + + @@ -30615,6 +33800,12 @@ + + + + + + @@ -30622,6 +33813,12 @@ + + + + + + @@ -30636,6 +33833,12 @@ + + + + + + @@ -30651,6 +33854,12 @@ + + + + + + @@ -30658,6 +33867,12 @@ + + + + + + @@ -30672,6 +33887,12 @@ + + + + + + @@ -30687,6 +33908,12 @@ + + + + + + @@ -30694,6 +33921,12 @@ + + + + + + @@ -30708,6 +33941,12 @@ + + + + + + @@ -30723,6 +33962,12 @@ + + + + + + @@ -30732,6 +33977,12 @@ + + + + + + @@ -30748,6 +33999,12 @@ + + + + + + @@ -30765,6 +34022,12 @@ + + + + + + @@ -30774,6 +34037,12 @@ + + + + + + @@ -30790,6 +34059,12 @@ + + + + + + @@ -30807,6 +34082,12 @@ + + + + + + @@ -30817,6 +34098,11 @@ + + + + + @@ -30832,6 +34118,11 @@ + + + + + @@ -30847,6 +34138,11 @@ + + + + + @@ -30933,6 +34229,9 @@ + + + @@ -31100,6 +34399,10 @@ + + + + @@ -31107,6 +34410,9 @@ + + + @@ -31171,6 +34477,9 @@ + + + @@ -31423,6 +34732,9 @@ + + + @@ -31446,7 +34758,6 @@ - @@ -32034,6 +35345,12 @@ + + + + + + @@ -32048,6 +35365,11 @@ + + + + + @@ -32055,6 +35377,11 @@ + + + + + @@ -32068,6 +35395,10 @@ + + + + @@ -32081,11 +35412,18 @@ + + + + + + + @@ -32094,16 +35432,30 @@ + + + + + + + + + + + + + + @@ -32117,6 +35469,11 @@ + + + + + @@ -32124,17 +35481,30 @@ + + + + + + + + + + + + + @@ -32142,6 +35512,11 @@ + + + + + @@ -32149,6 +35524,11 @@ + + + + + @@ -32158,6 +35538,13 @@ + + + + + + + @@ -32167,6 +35554,13 @@ + + + + + + + @@ -32176,6 +35570,13 @@ + + + + + + + @@ -32193,6 +35594,11 @@ + + + + + @@ -32300,6 +35706,11 @@ + + + + + @@ -32324,6 +35735,9 @@ + + + @@ -32335,6 +35749,9 @@ + + + @@ -32379,20 +35796,30 @@ - + + + + + + - + + + + + + @@ -32458,7 +35885,6 @@ - @@ -32480,10 +35906,17 @@ + + + + + + + @@ -32494,6 +35927,9 @@ + + + @@ -32546,11 +35982,11 @@ - + - + @@ -32562,6 +35998,9 @@ + + + @@ -32581,6 +36020,9 @@ + + + @@ -32686,6 +36128,10 @@ + + + + @@ -32693,7 +36139,6 @@ - @@ -32701,18 +36146,15 @@ - - - @@ -32808,6 +36250,9 @@ + + + @@ -32821,7 +36266,6 @@ - @@ -32829,7 +36273,6 @@ - @@ -32930,13 +36373,9 @@ - - - - @@ -32951,7 +36390,6 @@ - @@ -33008,7 +36446,6 @@ - @@ -33157,6 +36594,10 @@ + + + + @@ -33220,7 +36661,6 @@ - @@ -33235,7 +36675,6 @@ - @@ -33263,7 +36702,6 @@ - @@ -33291,7 +36729,7 @@ - + @@ -33310,6 +36748,9 @@ + + + @@ -33359,7 +36800,6 @@ - @@ -33410,6 +36850,11 @@ + + + + + @@ -33564,7 +37009,6 @@ - @@ -33671,6 +37115,9 @@ + + + @@ -33678,12 +37125,19 @@ + + + + + + + @@ -33768,6 +37222,9 @@ + + + @@ -33775,6 +37232,10 @@ + + + + @@ -33784,14 +37245,20 @@ + + + + + + + - @@ -33867,25 +37334,21 @@ - - - - @@ -33914,7 +37377,6 @@ - @@ -33924,8 +37386,12 @@ + + + + + - @@ -33935,8 +37401,12 @@ + + + + + - @@ -33946,8 +37416,12 @@ + + + + + - @@ -33956,13 +37430,17 @@ + + + + + - @@ -33972,6 +37450,11 @@ + + + + + @@ -33983,9 +37466,12 @@ - + + + + @@ -34068,7 +37554,7 @@ - + @@ -34093,6 +37579,9 @@ + + + @@ -34100,6 +37589,11 @@ + + + + + @@ -34107,6 +37601,11 @@ + + + + + @@ -34115,7 +37614,7 @@ - + @@ -34125,6 +37624,11 @@ + + + + + @@ -34149,6 +37653,9 @@ + + + @@ -34164,6 +37671,9 @@ + + + @@ -34175,6 +37685,10 @@ + + + + @@ -34269,6 +37783,11 @@ + + + + + @@ -34276,6 +37795,11 @@ + + + + + @@ -34283,6 +37807,11 @@ + + + + + @@ -34290,6 +37819,11 @@ + + + + + @@ -34297,6 +37831,11 @@ + + + + + @@ -34304,6 +37843,11 @@ + + + + + @@ -34311,6 +37855,11 @@ + + + + + @@ -34318,6 +37867,11 @@ + + + + + @@ -34325,6 +37879,11 @@ + + + + + @@ -34332,6 +37891,11 @@ + + + + + @@ -34339,6 +37903,11 @@ + + + + + @@ -34346,6 +37915,11 @@ + + + + + @@ -34353,6 +37927,11 @@ + + + + + @@ -34360,6 +37939,11 @@ + + + + + @@ -34367,6 +37951,11 @@ + + + + + @@ -34374,6 +37963,11 @@ + + + + + @@ -34381,6 +37975,11 @@ + + + + + @@ -34388,6 +37987,11 @@ + + + + + @@ -34395,6 +37999,11 @@ + + + + + @@ -34402,6 +38011,11 @@ + + + + + @@ -34436,10 +38050,16 @@ + + + + + + @@ -34514,17 +38134,14 @@ - - - @@ -34582,7 +38199,7 @@ - + @@ -34639,6 +38256,9 @@ + + + @@ -34653,6 +38273,11 @@ + + + + + @@ -34715,6 +38340,9 @@ + + + @@ -34738,6 +38366,9 @@ + + + @@ -34753,6 +38384,11 @@ + + + + + @@ -34760,11 +38396,18 @@ + + + + + + + @@ -34779,6 +38422,10 @@ + + + + @@ -34787,6 +38434,11 @@ + + + + + @@ -34795,6 +38447,11 @@ + + + + + @@ -34812,20 +38469,28 @@ + + + + + - + + + + + - - + @@ -34833,9 +38498,13 @@ + + + + + - - + @@ -34844,16 +38513,29 @@ + + + + + + + + + + + + + @@ -34875,11 +38557,19 @@ + + + + + + + + @@ -35004,7 +38694,6 @@ - @@ -35024,6 +38713,12 @@ + + + + + + @@ -35040,12 +38735,17 @@ + + + + + + - @@ -35074,14 +38774,20 @@ - + + + + - + + + + @@ -35528,6 +39234,11 @@ + + + + + @@ -35544,6 +39255,11 @@ + + + + + @@ -35560,6 +39276,10 @@ + + + + @@ -35568,6 +39288,10 @@ + + + + @@ -35720,6 +39444,9 @@ + + + @@ -35730,6 +39457,11 @@ + + + + + @@ -35743,6 +39475,11 @@ + + + + + @@ -35755,12 +39492,22 @@ + + + + + + + + + + @@ -35771,12 +39518,22 @@ + + + + + + + + + + @@ -35790,12 +39547,22 @@ + + + + + + + + + + @@ -35808,6 +39575,11 @@ + + + + + @@ -35835,18 +39607,33 @@ + + + + + + + + + + + + + + + @@ -35927,17 +39714,14 @@ - - + - - @@ -35981,7 +39765,7 @@ - + @@ -36174,9 +39958,7 @@ - - @@ -36267,7 +40049,6 @@ - @@ -36342,9 +40123,7 @@ - - @@ -36352,7 +40131,6 @@ - @@ -36429,6 +40207,9 @@ + + + @@ -36440,6 +40221,9 @@ + + + @@ -36449,29 +40233,44 @@ + + + + + + + + + + + + + + + @@ -36581,7 +40380,6 @@ - @@ -36629,11 +40427,9 @@ - - @@ -36650,7 +40446,6 @@ - @@ -36672,7 +40467,6 @@ - @@ -36697,15 +40491,10 @@ - - - - - @@ -36995,6 +40784,9 @@ + + + @@ -37004,13 +40796,11 @@ - - @@ -37048,7 +40838,6 @@ - @@ -37056,22 +40845,18 @@ - - - - @@ -37271,10 +41056,16 @@ + + + + + + @@ -37418,7 +41209,7 @@ - + @@ -37479,6 +41270,10 @@ + + + + @@ -37495,8 +41290,13 @@ + + + + + - + @@ -37508,6 +41308,11 @@ + + + + + @@ -37520,7 +41325,6 @@ - @@ -37595,6 +41399,12 @@ + + + + + + @@ -37654,7 +41464,14 @@ + + + + + + + @@ -37663,8 +41480,14 @@ + + + + + + - + @@ -37677,6 +41500,11 @@ + + + + + @@ -37721,10 +41549,17 @@ + + + + + + + @@ -37738,7 +41573,6 @@ - @@ -38117,375 +41951,564 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -38502,114 +42525,171 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -38676,108 +42756,162 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -38844,108 +42978,162 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -39262,7 +43450,6 @@ - @@ -39399,32 +43586,40 @@ + + + + + + + + + + + + - - - - @@ -39484,7 +43679,6 @@ - @@ -39513,7 +43707,6 @@ - @@ -39529,23 +43722,19 @@ - - - - @@ -39573,6 +43762,12 @@ + + + + + + @@ -39587,6 +43782,12 @@ + + + + + + @@ -39600,6 +43801,12 @@ + + + + + + @@ -39614,6 +43821,12 @@ + + + + + + @@ -39627,6 +43840,12 @@ + + + + + + @@ -39641,6 +43860,12 @@ + + + + + + @@ -39657,6 +43882,12 @@ + + + + + + @@ -39673,8 +43904,14 @@ + + + + + + - + @@ -39686,8 +43923,13 @@ + + + + + - + @@ -39699,6 +43941,11 @@ + + + + + @@ -39733,7 +43980,6 @@ - @@ -39829,6 +44075,9 @@ + + + @@ -39836,6 +44085,9 @@ + + + @@ -39847,6 +44099,9 @@ + + + @@ -39901,7 +44156,6 @@ - @@ -39973,6 +44227,10 @@ + + + + @@ -40216,6 +44474,11 @@ + + + + + @@ -40231,6 +44494,11 @@ + + + + + @@ -40238,6 +44506,11 @@ + + + + + @@ -40256,6 +44529,11 @@ + + + + + @@ -40272,11 +44550,20 @@ + + + + + + + + + @@ -40561,7 +44848,6 @@ - @@ -40581,9 +44867,7 @@ - - @@ -40622,13 +44906,10 @@ - - - @@ -40639,15 +44920,10 @@ - - - - - @@ -40658,9 +44934,7 @@ - - @@ -40671,15 +44945,12 @@ - - - @@ -40749,35 +45020,57 @@ - - - - + + + + + + + + + + + + + + + - - + + + + + - - + + + + + + + + + + @@ -40825,18 +45118,15 @@ - - - @@ -40848,7 +45138,6 @@ - @@ -40861,7 +45150,6 @@ - @@ -41019,6 +45307,9 @@ + + + @@ -41598,6 +45889,11 @@ + + + + + @@ -41615,8 +45911,13 @@ + + + + + - + @@ -41629,8 +45930,13 @@ + + + + + - + @@ -41643,6 +45949,11 @@ + + + + + @@ -41661,6 +45972,13 @@ + + + + + + + @@ -41676,6 +45994,11 @@ + + + + + @@ -41686,6 +46009,11 @@ + + + + + @@ -41702,6 +46030,11 @@ + + + + + @@ -41718,6 +46051,11 @@ + + + + + @@ -41734,6 +46072,12 @@ + + + + + + @@ -41750,6 +46094,12 @@ + + + + + + @@ -41766,6 +46116,12 @@ + + + + + + @@ -41831,7 +46187,6 @@ - @@ -42134,7 +46489,7 @@ - + @@ -42147,8 +46502,13 @@ + + + + + - + @@ -42163,6 +46523,11 @@ + + + + + @@ -42178,6 +46543,11 @@ + + + + + @@ -42192,6 +46562,11 @@ + + + + + @@ -42206,6 +46581,11 @@ + + + + + @@ -42220,9 +46600,13 @@ + + + + + - @@ -42250,7 +46634,6 @@ - @@ -42337,24 +46720,18 @@ - - - - - - @@ -42476,20 +46853,13 @@ - - - - - @@ -42551,6 +46921,9 @@ + + + @@ -42583,9 +46956,7 @@ - - @@ -42599,11 +46970,9 @@ - - @@ -42627,13 +46996,11 @@ - - @@ -42677,14 +47044,11 @@ - - - @@ -42738,6 +47102,12 @@ + + + + + + @@ -42752,6 +47122,11 @@ + + + + + @@ -42768,6 +47143,12 @@ + + + + + + @@ -42784,6 +47165,11 @@ + + + + + @@ -42799,6 +47185,12 @@ + + + + + + @@ -42814,6 +47206,12 @@ + + + + + + @@ -42828,6 +47226,11 @@ + + + + + @@ -42837,8 +47240,13 @@ + + + + + - + @@ -42851,6 +47259,11 @@ + + + + + @@ -42866,6 +47279,11 @@ + + + + + @@ -42880,12 +47298,27 @@ + + + + + + + + + + + + + + + @@ -42904,6 +47337,11 @@ + + + + + @@ -42919,11 +47357,16 @@ + + + + + - - - + + + @@ -42963,13 +47406,11 @@ - - @@ -42979,7 +47420,6 @@ - @@ -43013,7 +47453,6 @@ - @@ -43031,7 +47470,6 @@ - @@ -43167,7 +47605,6 @@ - @@ -43185,7 +47622,6 @@ - @@ -43384,7 +47820,6 @@ - @@ -43677,6 +48112,9 @@ + + + @@ -43727,6 +48165,9 @@ + + + @@ -43734,6 +48175,9 @@ + + + @@ -43771,7 +48215,6 @@ - @@ -43969,12 +48412,17 @@ - + + + + + + @@ -43985,6 +48433,9 @@ + + + @@ -44000,6 +48451,9 @@ + + + @@ -44111,6 +48565,10 @@ + + + + @@ -44167,6 +48625,11 @@ + + + + + @@ -44179,12 +48642,22 @@ + + + + + + + + + + @@ -44197,6 +48670,11 @@ + + + + + @@ -44283,6 +48761,12 @@ + + + + + + @@ -44291,6 +48775,11 @@ + + + + + @@ -44305,6 +48794,12 @@ + + + + + + @@ -44319,6 +48814,12 @@ + + + + + + @@ -44336,6 +48837,11 @@ + + + + + @@ -44350,8 +48856,14 @@ + + + + + + - + @@ -44364,8 +48876,13 @@ + + + + + - + @@ -44378,26 +48895,46 @@ + + + + + + + + + + - + - + + + + + + - - - + + + + + + + + @@ -44560,7 +49097,6 @@ - @@ -44601,11 +49137,8 @@ - - - @@ -44721,7 +49254,6 @@ - @@ -44801,9 +49333,7 @@ - - @@ -44833,6 +49363,9 @@ + + + @@ -44857,6 +49390,9 @@ + + + @@ -44915,7 +49451,6 @@ - @@ -44949,6 +49484,9 @@ + + + @@ -44994,7 +49532,6 @@ - @@ -45027,7 +49564,6 @@ - @@ -45067,7 +49603,6 @@ - @@ -45079,6 +49614,9 @@ + + + @@ -45311,11 +49849,17 @@ + + + + + + @@ -45334,6 +49878,9 @@ + + + @@ -45667,12 +50214,20 @@ + + + + + + + + @@ -45738,6 +50293,11 @@ + + + + + @@ -45752,6 +50312,11 @@ + + + + + @@ -45766,6 +50331,11 @@ + + + + + @@ -45781,6 +50351,12 @@ + + + + + + @@ -45799,6 +50375,12 @@ + + + + + + @@ -45810,6 +50392,11 @@ + + + + + @@ -45824,6 +50411,11 @@ + + + + + @@ -45913,6 +50505,12 @@ + + + + + + @@ -45926,6 +50524,10 @@ + + + + @@ -45937,6 +50539,11 @@ + + + + + @@ -45952,6 +50559,10 @@ + + + + @@ -45968,6 +50579,9 @@ + + + @@ -45975,6 +50589,10 @@ + + + + @@ -46166,6 +50784,9 @@ + + + @@ -46264,7 +50885,6 @@ - @@ -46340,7 +50960,6 @@ - @@ -46362,7 +50981,6 @@ - @@ -46594,6 +51212,9 @@ + + + @@ -46603,18 +51224,30 @@ + + + + + + + + + + + + @@ -46876,7 +51509,6 @@ - @@ -46963,7 +51595,6 @@ - @@ -47054,7 +51685,6 @@ - @@ -47145,7 +51775,6 @@ - @@ -47236,7 +51865,6 @@ - @@ -47327,7 +51955,6 @@ - @@ -47418,7 +52045,6 @@ - @@ -47509,7 +52135,6 @@ - @@ -47600,7 +52225,6 @@ - @@ -47691,7 +52315,6 @@ - @@ -47782,7 +52405,6 @@ - @@ -47873,7 +52495,6 @@ - @@ -47947,6 +52568,9 @@ + + + @@ -48053,6 +52677,12 @@ + + + + + + @@ -48063,12 +52693,22 @@ + + + + + + + + + + @@ -48078,6 +52718,11 @@ + + + + + @@ -48085,12 +52730,19 @@ + + + + + + + @@ -48124,6 +52776,11 @@ + + + + + @@ -48132,6 +52789,9 @@ + + + @@ -48155,10 +52815,18 @@ + + + + + + + + @@ -48204,6 +52872,9 @@ + + + @@ -49057,7 +53728,6 @@ - @@ -49784,6 +54454,9 @@ + + + @@ -50038,6 +54711,9 @@ + + + @@ -50058,6 +54734,12 @@ + + + + + + @@ -50075,6 +54757,12 @@ + + + + + + @@ -50094,6 +54782,12 @@ + + + + + + @@ -50111,6 +54805,12 @@ + + + + + + @@ -50130,6 +54830,12 @@ + + + + + + @@ -50147,6 +54853,12 @@ + + + + + + @@ -50167,6 +54879,12 @@ + + + + + + @@ -50187,8 +54905,14 @@ + + + + + + - + @@ -50202,8 +54926,13 @@ + + + + + - + @@ -50219,18 +54948,33 @@ + + + + + + + + + + + + + + + @@ -50246,6 +54990,11 @@ + + + + + @@ -50261,6 +55010,11 @@ + + + + + @@ -50275,6 +55029,11 @@ + + + + + @@ -50288,6 +55047,11 @@ + + + + + @@ -50298,6 +55062,11 @@ + + + + + @@ -50314,6 +55083,11 @@ + + + + + @@ -50509,8 +55283,14 @@ + + + + + + - + @@ -50523,8 +55303,13 @@ + + + + + - + @@ -50537,6 +55322,11 @@ + + + + + @@ -50554,6 +55344,11 @@ + + + + + @@ -50570,6 +55365,11 @@ + + + + + @@ -50586,6 +55386,12 @@ + + + + + + @@ -50602,6 +55408,11 @@ + + + + + @@ -50619,6 +55430,11 @@ + + + + + @@ -50627,6 +55443,10 @@ + + + + @@ -50904,6 +55724,12 @@ + + + + + + @@ -50919,6 +55745,12 @@ + + + + + + @@ -51205,11 +56037,11 @@ - + - + @@ -51656,6 +56488,12 @@ + + + + + + @@ -51671,17 +56509,33 @@ + + + + + + + + + + + + + + + + @@ -51700,6 +56554,12 @@ + + + + + + @@ -51709,6 +56569,11 @@ + + + + + @@ -51718,8 +56583,13 @@ + + + + + - + @@ -51731,8 +56601,13 @@ + + + + + - + @@ -51744,22 +56619,40 @@ + + + + + - + + + + + + + + + + + + + + @@ -51898,11 +56791,19 @@ + + + + + + + + @@ -52295,6 +57196,12 @@ + + + + + + @@ -52605,11 +57512,11 @@ - + - + @@ -52872,6 +57779,11 @@ + + + + + @@ -52888,6 +57800,12 @@ + + + + + + @@ -52905,6 +57823,12 @@ + + + + + + @@ -52921,6 +57845,12 @@ + + + + + + @@ -52938,6 +57868,12 @@ + + + + + + @@ -52954,6 +57890,12 @@ + + + + + + @@ -52971,6 +57913,12 @@ + + + + + + @@ -52985,6 +57933,11 @@ + + + + + @@ -53003,6 +57956,12 @@ + + + + + + @@ -53022,6 +57981,12 @@ + + + + + + @@ -53029,6 +57994,11 @@ + + + + + @@ -53036,8 +58006,13 @@ + + + + + - + @@ -53051,8 +58026,14 @@ + + + + + + - + @@ -53067,6 +58048,12 @@ + + + + + + @@ -53081,6 +58068,11 @@ + + + + + @@ -53095,6 +58087,11 @@ + + + + + @@ -53113,6 +58110,11 @@ + + + + + @@ -53131,8 +58133,14 @@ + + + + + - + + @@ -53140,7 +58148,6 @@ - @@ -53149,8 +58156,15 @@ + + + + + + - + + @@ -53159,7 +58173,6 @@ - @@ -53168,6 +58181,12 @@ + + + + + + @@ -53454,48 +58473,48 @@ - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -53582,48 +58601,48 @@ - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -53703,42 +58722,42 @@ - - + + - - - + + + - - - + + + - - - + + + - - + + - - - + + + - - - + + + - - - + + + @@ -53765,188 +58784,188 @@ - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - + + - - + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - - - + + + - - - + + + @@ -54066,60 +59085,60 @@ - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -54144,26 +59163,26 @@ - - - - + + + + - - - - + + + + - - - - + + + + - - + + @@ -54184,21 +59203,21 @@ - + - + - + - + @@ -54515,7 +59534,7 @@ - + @@ -54749,7 +59768,6 @@ - @@ -54807,41 +59825,40 @@ - - + - + - + - + - + - + - + - + - + @@ -54850,7 +59867,7 @@ - + @@ -54864,7 +59881,7 @@ - + @@ -54888,14 +59905,12 @@ - - @@ -55078,8 +60093,8 @@ - - + + @@ -55092,7 +60107,7 @@ - + @@ -55342,34 +60357,37 @@ - + - + - + - + - + + + + - + @@ -55388,7 +60406,7 @@ - + @@ -55412,43 +60430,43 @@ - + - + - + - + - + - + - + - + - + - + @@ -55564,6 +60582,9 @@ + + + @@ -55577,9 +60598,12 @@ + + + - + @@ -55590,19 +60614,26 @@ + + + + + + - - - - + + + + + @@ -55611,7 +60642,7 @@ - + @@ -55634,38 +60665,38 @@ - + - - - + + + - + - + - + - + - + - + @@ -55833,11 +60864,11 @@ - + - + @@ -55868,19 +60899,19 @@ - - - + + + - - + + - - + + @@ -56041,23 +61072,23 @@ - + - + - + - + @@ -56111,7 +61142,7 @@ - + @@ -56187,6 +61218,11 @@ + + + + + @@ -56206,6 +61242,11 @@ + + + + + @@ -56227,6 +61268,11 @@ + + + + + @@ -56235,6 +61281,11 @@ + + + + + @@ -56248,6 +61299,11 @@ + + + + + @@ -56266,6 +61322,11 @@ + + + + + @@ -56279,6 +61340,11 @@ + + + + + @@ -56297,6 +61363,11 @@ + + + + + @@ -56312,6 +61383,12 @@ + + + + + + @@ -56327,6 +61404,12 @@ + + + + + + @@ -56342,6 +61425,12 @@ + + + + + + @@ -56351,6 +61440,11 @@ + + + + + @@ -56369,13 +61463,24 @@ + + + + + + - + + + + + + @@ -56386,8 +61491,13 @@ + + + + + - + @@ -56401,8 +61511,14 @@ + + + + + + - + @@ -56416,6 +61532,12 @@ + + + + + + @@ -56430,6 +61552,11 @@ + + + + + @@ -56445,26 +61572,46 @@ + + + + + + + + + + + + + + + - - - - + + + + + + + + + @@ -56477,11 +61624,16 @@ - - + + + + + + + @@ -56489,15 +61641,25 @@ - + + + + + + - - - - + + + + + + + + + @@ -56510,11 +61672,16 @@ - - + + + + + + + @@ -56522,15 +61689,25 @@ - + + + + + + - - - - + + + + + + + + + @@ -56543,11 +61720,16 @@ - - + + + + + + + @@ -56556,15 +61738,25 @@ - + + + + + + - - - - + + + + + + + + + @@ -56576,10 +61768,15 @@ - - + + + + + + + @@ -56587,166 +61784,176 @@ - + + + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - + - - - + + + + + + + + @@ -56755,14 +61962,24 @@ - - + + + + + + + + + + + + @@ -56784,340 +62001,340 @@ - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - + + + - - - - + + + + - - - - + + + + @@ -57128,29 +62345,29 @@ - + - - + + - - - + + + - - - - + + + + - - - - + + + + @@ -57160,25 +62377,25 @@ - - + + - - - + + + - - - - + + + + - - - - + + + + @@ -57588,55 +62805,55 @@ - - + + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - - + + + - - + + @@ -57790,17 +63007,20 @@ - + + + + - + @@ -57835,7 +63055,7 @@ - + @@ -57861,10 +63081,10 @@ - - - - + + + + @@ -57899,24 +63119,24 @@ - - + + - - + + - - + + @@ -58128,8 +63348,8 @@ - - + + @@ -58138,14 +63358,14 @@ - - + + - - + + @@ -58163,10 +63383,8 @@ - - - - + + @@ -58205,11 +63423,17 @@ + + + - + + + + @@ -58219,12 +63443,18 @@ - + + + + + + + @@ -58252,6 +63482,11 @@ + + + + + @@ -58261,13 +63496,23 @@ + + + + + - + + + + + + @@ -58283,6 +63528,11 @@ + + + + + @@ -58292,6 +63542,11 @@ + + + + + @@ -58301,6 +63556,11 @@ + + + + + @@ -58318,288 +63578,298 @@ + + + + + + + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -58872,21 +64142,27 @@ + + + + + + @@ -59040,24 +64316,24 @@ - - + + - - + + - + - + @@ -59080,10 +64356,17 @@ - - + + - + + + + + + + + @@ -59094,10 +64377,17 @@ - - + + - + + + + + + + + @@ -59108,10 +64398,17 @@ - - + + - + + + + + + + + @@ -59122,10 +64419,17 @@ - - + + - + + + + + + + + @@ -59136,10 +64440,17 @@ - - + + - + + + + + + + + @@ -59150,10 +64461,17 @@ - - + + - + + + + + + + + @@ -59167,7 +64485,16 @@ - + + + + + + + + + + @@ -59181,7 +64508,16 @@ - + + + + + + + + + + @@ -59195,7 +64531,16 @@ - + + + + + + + + + + @@ -59209,7 +64554,16 @@ - + + + + + + + + + + @@ -59223,7 +64577,16 @@ - + + + + + + + + + + @@ -59237,7 +64600,16 @@ - + + + + + + + + + + @@ -59267,7 +64639,17 @@ - + + + + + + + + + + + @@ -59283,7 +64665,17 @@ - + + + + + + + + + + + @@ -59299,7 +64691,17 @@ - + + + + + + + + + + + @@ -59315,7 +64717,17 @@ - + + + + + + + + + + + @@ -59325,8 +64737,13 @@ + + + + + - + @@ -59337,12 +64754,19 @@ - - - + + + + + + + + + + - + @@ -59353,9 +64777,16 @@ - - - + + + + + + + + + + @@ -59369,8 +64800,13 @@ + + + + + - + @@ -59382,11 +64818,17 @@ - - + + + + + + + + - + @@ -59398,8 +64840,14 @@ - - + + + + + + + + @@ -59413,6 +64861,11 @@ + + + + + From 38d81350d2f86a1b313f151bc5c1eef510b6aaf8 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Thu, 21 Sep 2023 17:14:51 -0300 Subject: [PATCH 03/10] feat: finish registering of weapons and equipments from XML --- config.lua.dist | 2 +- .../movements/unscripted_movements.lua | 18485 -------------- .../scripts/weapons/unscripted_weapons.lua | 5141 ---- .../equipment/unscripted_equipments.lua | 20059 ---------------- .../scripts/weapons/unscripted_weapons.lua | 5380 ----- data/items/items.xml | 6966 +++++- src/items/functions/item/item_parse.cpp | 199 +- src/items/functions/item/item_parse.hpp | 2 +- src/items/items.cpp | 3 + src/items/weapons/weapons.cpp | 26 +- src/items/weapons/weapons.hpp | 15 +- src/lua/creature/movement.cpp | 29 +- src/lua/creature/movement.hpp | 12 +- src/utils/tools.cpp | 41 + src/utils/tools.hpp | 2 + 15 files changed, 7052 insertions(+), 49310 deletions(-) delete mode 100644 data-canary/scripts/movements/unscripted_movements.lua delete mode 100644 data-canary/scripts/weapons/unscripted_weapons.lua delete mode 100644 data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua delete mode 100644 data-otservbr-global/scripts/weapons/unscripted_weapons.lua diff --git a/config.lua.dist b/config.lua.dist index c6b37bb9a03..a9f9c0f4e24 100644 --- a/config.lua.dist +++ b/config.lua.dist @@ -10,7 +10,7 @@ coreDirectory = "data" -- Set log level -- It can be trace, debug, info, warning, error, critical, off (default: info). -- NOTE: Will only display logs with level higher or equal the one set. -logLevel = "debug" +logLevel = "info" -- Combat settings -- NOTE: valid values for worldType are: "pvp", "no-pvp" and "pvp-enforced" diff --git a/data-canary/scripts/movements/unscripted_movements.lua b/data-canary/scripts/movements/unscripted_movements.lua deleted file mode 100644 index 1d080a031ed..00000000000 --- a/data-canary/scripts/movements/unscripted_movements.lua +++ /dev/null @@ -1,18485 +0,0 @@ -local items = { - { - -- mutant bone kilt - itemid = 40595, - type = "equip", - slot = "legs", - level = 300, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- mutant bone kilt - itemid = 40595, - type = "deequip", - slot = "legs", - level = 300, - }, - { - -- alchemist's notepad - itemid = 40594, - type = "equip", - slot = "shield", - level = 250, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- alchemist's notepad - itemid = 40594, - type = "deequip", - slot = "shield", - level = 250, - }, - { - -- mutant bone boots - itemid = 40593, - type = "equip", - slot = "feet", - level = 250, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- mutant bone boots - itemid = 40593, - type = "deequip", - slot = "feet", - level = 250, - }, - { - -- alchemist's boots - itemid = 40592, - type = "equip", - slot = "feet", - level = 250, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- alchemist's boots - itemid = 40592, - type = "deequip", - slot = "feet", - level = 250, - }, - { - -- mutated skin armor - itemid = 40591, - type = "equip", - slot = "armor", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mutated skin armor - itemid = 40591, - type = "deequip", - slot = "armor", - level = 270, - }, - { - -- Mutated Skin Legs - itemid = 40590, - type = "equip", - slot = "legs", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- Mutated Skin Legs - itemid = 40590, - type = "deequip", - slot = "legs", - level = 270, - }, - { - -- Stitched Mutant Hide Legs - itemid = 40589, - type = "equip", - slot = "legs", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Stitched Mutant Hide Legs - itemid = 40589, - type = "deequip", - slot = "legs", - level = 270, - }, - { - -- Antler-Horn Helmet - itemid = 40588, - type = "equip", - slot = "head", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Antler-Horn Helmet - itemid = 40588, - type = "deequip", - slot = "head", - level = 250, - }, - { - -- 25 years backpack - itemid = 39693, - type = "equip", - slot = "backpack", - }, - { - -- 25 years backpack - itemid = 39693, - type = "deequip", - slot = "backpack", - }, - { - -- turtle amulet - itemid = 39235, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted turtle amulet - itemid = 39235, - type = "deequip", - slot = "necklace", - }, - { - -- enchanted turtle amulet - itemid = 39234, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted turtle amulet - itemid = 39234, - type = "deequip", - slot = "necklace", - }, - { - -- enchanted turtle amulet - itemid = 39233, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted turtle amulet - itemid = 39233, - type = "deequip", - slot = "necklace", - }, - { - -- arboreal ring - itemid = 39188, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- arboreal ring - itemid = 39188, - type = "deequip", - slot = "ring", - }, - { - -- charged arboreal ring - itemid = 39187, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- charged arboreal ring - itemid = 39187, - type = "deequip", - slot = "ring", - }, - { - -- charged arboreal ring - itemid = 39186, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- charged arboreal ring - itemid = 39186, - type = "deequip", - slot = "ring", - }, - { - -- arcanomancer sigil - itemid = 39185, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- arcanomancer sigil - itemid = 39185, - type = "deequip", - slot = "ring", - }, - { - -- charged arcanomancer ring - itemid = 39184, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- charged arcanomancer ring - itemid = 39184, - type = "deequip", - slot = "ring", - }, - { - -- charged arcanomancer sigil - itemid = 39183, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- charged arcanomancer sigil - itemid = 39183, - type = "deequip", - slot = "ring", - }, - { - -- alicorn ring - itemid = 39182, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- charged alicorn ring - itemid = 39182, - type = "deequip", - slot = "ring", - }, - { - -- charged alicorn ring - itemid = 39181, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- charged alicorn ring - itemid = 39181, - type = "deequip", - slot = "ring", - }, - { - -- charged alicorn ring - itemid = 39180, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- charged alicorn ring - itemid = 39180, - type = "deequip", - slot = "ring", - }, - { - -- spiritthorn ring - itemid = 39179, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiritthorn ring - itemid = 39179, - type = "deequip", - slot = "ring", - }, - { - -- charged spiritthorn ring - itemid = 39178, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- charged spiritthorn ring - itemid = 39178, - type = "deequip", - slot = "ring", - }, - { - -- charged spiritthorn ring - itemid = 39177, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- charged spiritthorn ring - itemid = 39177, - type = "deequip", - slot = "ring", - }, - { - -- midnight sarong - itemid = 39167, - type = "equip", - slot = "legs", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- midnight sarong - itemid = 39167, - type = "deequip", - slot = "legs", - }, - { - -- dawnfire pantaloons - itemid = 39166, - type = "equip", - slot = "legs", - level = 300, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- dawnfire pantaloons - itemid = 39166, - type = "deequip", - slot = "legs", - }, - { - -- midnight tunic - itemid = 39165, - type = "equip", - slot = "armor", - level = 300, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- midnight tunic - itemid = 39165, - type = "deequip", - slot = "armor", - }, - { - -- dawnfire sherwani - itemid = 39164, - type = "equip", - slot = "armor", - level = 270, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- dawnfire sherwani - itemid = 39164, - type = "deequip", - slot = "armor", - }, - { - -- naga rod - itemid = 39163, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- naga rod - itemid = 39163, - type = "deequip", - slot = "hand", - }, - { - -- naga wand - itemid = 39162, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- naga wand - itemid = 39162, - type = "deequip", - slot = "hand", - }, - { - -- feverbloom boots - itemid = 39161, - type = "equip", - slot = "feet", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- feverbloom boots - itemid = 39161, - type = "deequip", - slot = "feet", - }, - { - -- naga quiver - itemid = 39160, - type = "equip", - slot = "right-hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- naga quiver - itemid = 39160, - type = "deequip", - slot = "right-hand", - }, - { - -- naga crossbow - itemid = 39159, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- naga crossbow - itemid = 39159, - type = "deequip", - slot = "hand", - }, - { - -- frostflower boots - itemid = 39158, - type = "equip", - slot = "feet", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostflower boots - itemid = 39158, - type = "deequip", - slot = "feet", - }, - { - -- naga club - itemid = 39157, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga club - itemid = 39157, - type = "deequip", - slot = "hand", - }, - { - -- naga axe - itemid = 39156, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga axe - itemid = 39156, - type = "deequip", - slot = "hand", - }, - { - -- naga sword - itemid = 39155, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga sword - itemid = 39155, - type = "deequip", - slot = "hand", - }, - { - -- arboreal tome - itemid = 39154, - type = "equip", - slot = "shield", - level = 400, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- arboreal tome - itemid = 39154, - type = "deequip", - slot = "shield", - }, - { - -- arboreal crown - itemid = 39153, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- arboreal crown - itemid = 39153, - type = "deequip", - slot = "head", - }, - { - -- arcanomancer folio - itemid = 39152, - type = "equip", - slot = "shield", - level = 400, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- arcanomancer folio - itemid = 39152, - type = "deequip", - slot = "shield", - }, - { - -- arcanomancer regalia - itemid = 39151, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- arcanomancer regalia - itemid = 39151, - type = "deequip", - slot = "head", - }, - { - -- alicorn quiver - itemid = 39150, - type = "equip", - slot = "right-hand", - level = 400, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- alicorn quiver - itemid = 39150, - type = "deequip", - slot = "right-hand", - }, - { - -- alicorn headguard - itemid = 39149, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- alicorn headguard - itemid = 39149, - type = "deequip", - slot = "head", - }, - { - -- spiritthorn helmet - itemid = 39148, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiritthorn helmet - itemid = 39148, - type = "deequip", - slot = "head", - }, - { - -- spiritthorn armor - itemid = 39147, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Knight", true, true }, - { "Elite Knight" }, - }, - }, - { - -- spiritthorn armor - itemid = 39147, - type = "deequip", - slot = "armor", - }, - { - -- changing backpack - itemid = 37536, - type = "equip", - slot = "backpack", - }, - { - -- changing backpack - itemid = 37536, - type = "deequip", - slot = "backpack", - }, - { - -- lilypad backpack - itemid = 37554, - type = "equip", - slot = "backpack", - }, - { - -- lilypad backpack - itemid = 37554, - type = "deequip", - slot = "backpack", - }, - { - -- gilded eldritch rod - itemid = 36675, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- gilded eldritch rod - itemid = 36675, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch rod - itemid = 36674, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch rod - itemid = 36674, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch tome - itemid = 36673, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch tome - itemid = 36673, - type = "deequip", - slot = "shield", - level = 300, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch folio - itemid = 36672, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch folio - itemid = 36672, - type = "deequip", - slot = "shield", - level = 300, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch hood - itemid = 36671, - type = "equip", - slot = "head", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch hood - itemid = 36671, - type = "deequip", - slot = "head", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch cowl - itemid = 36670, - type = "equip", - slot = "head", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch cowl - itemid = 36670, - type = "deequip", - slot = "head", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- gilded eldritch wand - itemid = 36669, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- gilded eldritch wand - itemid = 36669, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch wand - itemid = 36668, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch wand - itemid = 36668, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch breeches - itemid = 36667, - type = "equip", - slot = "legs", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch breeches - itemid = 36667, - type = "deequip", - slot = "legs", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch quiver - itemid = 36666, - type = "equip", - slot = "right-hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch quiver - itemid = 36666, - type = "deequip", - slot = "right-hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- gilded eldritch bow - itemid = 36665, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- gilded eldritch bow - itemid = 36665, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch bow - itemid = 36664, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch bow - itemid = 36664, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch cuirass - itemid = 36663, - type = "equip", - slot = "armor", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch cuirass - itemid = 36663, - type = "deequip", - slot = "armor", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch greataxe - itemid = 36662, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch greataxe - itemid = 36662, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch greataxe - itemid = 36661, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch greataxe - itemid = 36661, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch warmace - itemid = 36660, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch warmace - itemid = 36660, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch warmace - itemid = 36659, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch warmace - itemid = 36659, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch claymore - itemid = 36658, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch claymore - itemid = 36658, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch claymore - itemid = 36657, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch claymore - itemid = 36657, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch shield - itemid = 36656, - type = "equip", - slot = "shield", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch shield - itemid = 36656, - type = "deequip", - slot = "shield", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spectral bolt (no decay) - itemid = 35902, - type = "equip", - slot = "ammo", - }, - { - -- spectral bolt (no decay) - itemid = 35902, - type = "deequip", - slot = "ammo", - }, - { - -- red quiver - itemid = 35849, - type = "equip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- red quiver - itemid = 35849, - type = "deequip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- blue quiver - itemid = 35848, - type = "equip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- blue quiver - itemid = 35848, - type = "deequip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- quiver - itemid = 35562, - type = "equip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- quiver - itemid = 35562, - type = "deequip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- jungle quiver - itemid = 35524, - type = "equip", - slot = "right-hand", - level = 150, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- jungle quiver - itemid = 35524, - type = "deequip", - slot = "right-hand", - level = 150, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- exotic amulet - itemid = 35523, - type = "equip", - slot = "necklace", - level = 180, - }, - { - -- exotic amulet - itemid = 35523, - type = "deequip", - slot = "necklace", - }, - { - -- jungle wand - itemid = 35522, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- jungle wand - itemid = 35522, - type = "deequip", - slot = "hand", - }, - { - -- jungle rod - itemid = 35521, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- jungle rod - itemid = 35521, - type = "deequip", - slot = "hand", - }, - { - -- make-do boots - itemid = 35520, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- make-do boots - itemid = 35520, - type = "deequip", - slot = "feet", - }, - { - -- makeshift boots - itemid = 35519, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- makeshift boots - itemid = 35519, - type = "deequip", - slot = "feet", - }, - { - -- jungle bow - itemid = 35518, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- jungle bow - itemid = 35518, - type = "deequip", - slot = "hand", - }, - { - -- bast legs - itemid = 35517, - type = "equip", - slot = "legs", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bast legs - itemid = 35517, - type = "deequip", - slot = "legs", - }, - { - -- exotic legs - itemid = 35516, - type = "equip", - slot = "legs", - level = 130, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- exotic legs - itemid = 35516, - type = "deequip", - slot = "legs", - }, - { - -- throwing axe - itemid = 35515, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- throwing axe - itemid = 35515, - type = "deequip", - slot = "hand", - }, - { - -- jungle flail - itemid = 35514, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- jungle flail - itemid = 35514, - type = "deequip", - slot = "hand", - }, - { - -- lion hammer - itemid = 34254, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion hammer - itemid = 34254, - type = "deequip", - slot = "hand", - }, - { - -- lion axe - itemid = 34253, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion axe - itemid = 34253, - type = "deequip", - slot = "hand", - }, - { - -- lion amulet - itemid = 34158, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- lion amulet - itemid = 34158, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- lion plate - itemid = 34157, - type = "deequip", - slot = "armor", - level = 270, - }, - { - -- lion plate - itemid = 34157, - type = "equip", - slot = "armor", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion spangenhelm - itemid = 34156, - type = "deequip", - slot = "head", - }, - { - -- lion spangenhelm - itemid = 34156, - type = "equip", - slot = "head", - level = 230, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- lion longsword - itemid = 34155, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion longsword - itemid = 34155, - type = "deequip", - slot = "hand", - }, - { - -- lion spellbook - itemid = 34153, - type = "deequip", - slot = "shield", - }, - { - -- lion spellbook - itemid = 34153, - type = "equip", - slot = "shield", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lion wand - itemid = 34152, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- lion wand - itemid = 34152, - type = "deequip", - slot = "hand", - }, - { - -- lion rod - itemid = 34151, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- lion rod - itemid = 34151, - type = "deequip", - slot = "hand", - }, - { - -- lion longbow - itemid = 34150, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- lion longbow - itemid = 34150, - type = "deequip", - slot = "hand", - }, - { - -- soulbastion shield - itemid = 34099, - type = "deequip", - slot = "shield", - }, - { - -- soulbastion shield - itemid = 34099, - type = "equip", - slot = "shield", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- pair of soulstalkers - itemid = 34098, - type = "deequip", - slot = "feet", - }, - { - -- pair of soulstalkers - itemid = 34098, - type = "equip", - slot = "feet", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- pair of soulwalkers - itemid = 34097, - type = "deequip", - slot = "feet", - }, - { - -- pair of soulwalkers - itemid = 34097, - type = "equip", - slot = "feet", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulshroud armor - itemid = 34096, - type = "deequip", - slot = "armor", - }, - { - -- soulshroud armor - itemid = 34096, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soulmantel armor - itemid = 34095, - type = "deequip", - slot = "armor", - }, - { - -- soulmantel armor - itemid = 34095, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulshell armor - itemid = 34094, - type = "deequip", - slot = "armor", - level = 400, - }, - { - -- soulshell armor - itemid = 34094, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulstrider legs - itemid = 34093, - type = "deequip", - slot = "legs", - level = 400, - }, - { - -- soulstrider legs - itemid = 34093, - type = "equip", - slot = "legs", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soulshanks legs - itemid = 34092, - type = "deequip", - slot = "legs", - level = 400, - }, - { - -- soulshanks legs - itemid = 34092, - type = "equip", - slot = "legs", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulhexer - itemid = 34091, - type = "deequip", - slot = "hand", - }, - { - -- soulhexer - itemid = 34091, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soultainter - itemid = 34090, - type = "deequip", - slot = "hand", - }, - { - -- soultainter - itemid = 34090, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulpiercer - itemid = 34089, - type = "deequip", - slot = "hand", - }, - { - -- soulpiercer - itemid = 34089, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulbleeder - itemid = 34088, - type = "deequip", - slot = "hand", - }, - { - -- soulbleeder - itemid = 34088, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulmaimer - itemid = 34087, - type = "deequip", - slot = "hand", - }, - { - -- soulmaimer - itemid = 34087, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcrusher - itemid = 34086, - type = "deequip", - slot = "hand", - }, - { - -- soulcrusher - itemid = 34086, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- souleater - itemid = 34085, - type = "deequip", - slot = "hand", - }, - { - -- souleater - itemid = 34085, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulbiter - itemid = 34084, - type = "deequip", - slot = "hand", - }, - { - -- soulbiter - itemid = 34084, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulshredder - itemid = 34083, - type = "deequip", - slot = "hand", - }, - { - -- soulshredder - itemid = 34083, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcutter - itemid = 34082, - type = "deequip", - slot = "hand", - }, - { - -- soulcutter - itemid = 34082, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion ring - itemid = 34080, - type = "deequip", - slot = "ring", - level = 270, - }, - { - -- lion ring - itemid = 34080, - type = "equip", - slot = "ring", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Lit Torch (Sparkling) - itemid = 34016, - type = "equip", - slot = "ammo", - }, - { - -- Lit Torch (Sparkling) - itemid = 34016, - type = "deequip", - slot = "ammo", - }, - { - -- pair of old bracers - itemid = 32705, - type = "equip", - slot = "armor", - }, - { - -- pair of old bracers - itemid = 32705, - type = "deequip", - slot = "armor", - }, - { - -- ring of souls - itemid = 32636, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- ring of souls - itemid = 32636, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- ring of souls - itemid = 32635, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- ring of souls - itemid = 32635, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- spooky hood - itemid = 32630, - type = "equip", - slot = "head", - }, - { - -- spooky hood - itemid = 32630, - type = "deequip", - slot = "head", - }, - { - -- ghost chestplate - itemid = 32628, - type = "equip", - slot = "armor", - level = 230, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ghost chestplate - itemid = 32628, - type = "deequip", - slot = "armor", - level = 230, - }, - { - -- ring of souls - itemid = 32621, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- ring of souls - itemid = 32621, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- ghost backpack - itemid = 32620, - type = "equip", - slot = "backpack", - }, - { - -- ghost backpack - itemid = 32620, - type = "deequip", - slot = "backpack", - }, - { - -- pair of nightmare boots - itemid = 32619, - type = "equip", - slot = "feet", - level = 140, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- pair of nightmare boots - itemid = 32619, - type = "deequip", - slot = "feet", - level = 140, - }, - { - -- soulful legs - itemid = 32618, - type = "equip", - slot = "legs", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- soulful legs - itemid = 32618, - type = "deequip", - slot = "legs", - level = 180, - }, - { - -- fabulous legs - itemid = 32617, - type = "equip", - slot = "legs", - level = 225, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- fabulous legs - itemid = 32617, - type = "deequip", - slot = "legs", - level = 225, - }, - { - -- phantasmal axe - itemid = 32616, - type = "equip", - slot = "hand", - }, - { - -- phantasmal axe - itemid = 32616, - type = "deequip", - slot = "hand", - }, - { - -- burial shroud - itemid = 32585, - type = "equip", - slot = "armor", - }, - { - -- burial shroud - itemid = 32585, - type = "deequip", - slot = "armor", - }, - { - -- meat hammer - itemid = 32093, - type = "equip", - slot = "hand", - }, - { - -- meat hammer - itemid = 32093, - type = "deequip", - slot = "hand", - }, - { - -- note about two souls - itemid = 31676, - type = "equip", - slot = "necklace", - }, - { - -- note about two souls - itemid = 31676, - type = "deequip", - slot = "necklace", - }, - { - -- the cobra amulet - itemid = 31631, - type = "equip", - slot = "necklace", - level = 250, - }, - { - -- the cobra amulet - itemid = 31631, - type = "deequip", - slot = "necklace", - level = 250, - }, - { - -- winged backpack - itemid = 31625, - type = "equip", - slot = "backpack", - }, - { - -- winged backpack - itemid = 31625, - type = "deequip", - slot = "backpack", - }, - { - -- blister ring - itemid = 31621, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- blister ring - itemid = 31621, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- winged boots - itemid = 31617, - type = "equip", - slot = "feet", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- winged boots - itemid = 31617, - type = "deequip", - slot = "feet", - level = 220, - }, - { - -- blister ring - itemid = 31616, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- blister ring - itemid = 31616, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- tagralt blade - itemid = 31614, - type = "equip", - slot = "hand", - }, - { - -- tagralt blade - itemid = 31614, - type = "deequip", - slot = "hand", - }, - { - -- toga mortis - itemid = 31583, - type = "equip", - slot = "armor", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- toga mortis - itemid = 31583, - type = "deequip", - slot = "armor", - level = 220, - }, - { - -- galea mortis - itemid = 31582, - type = "equip", - slot = "head", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- galea mortis - itemid = 31582, - type = "deequip", - slot = "head", - level = 220, - }, - { - -- bow of cataclysm - itemid = 31581, - type = "equip", - slot = "hand", - }, - { - -- bow of cataclysm - itemid = 31581, - type = "deequip", - slot = "hand", - }, - { - -- mortal mace - itemid = 31580, - type = "equip", - slot = "hand", - }, - { - -- mortal mace - itemid = 31580, - type = "deequip", - slot = "hand", - }, - { - -- embrace of nature - itemid = 31579, - type = "equip", - slot = "armor", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- embrace of nature - itemid = 31579, - type = "deequip", - slot = "armor", - level = 220, - }, - { - -- bear skin - itemid = 31578, - type = "equip", - slot = "armor", - level = 230, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- bear skin - itemid = 31578, - type = "deequip", - slot = "armor", - level = 230, - }, - { - -- terra helmet - itemid = 31577, - type = "equip", - slot = "head", - level = 230, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- terra helmet - itemid = 31577, - type = "deequip", - slot = "head", - level = 230, - }, - { - -- blister ring - itemid = 31557, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- blister ring - itemid = 31557, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- rainbow amulet - itemid = 31556, - type = "equip", - slot = "necklace", - level = 220, - }, - { - -- rainbow amulet - itemid = 31556, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- sphinx tiara - itemid = 31438, - type = "equip", - slot = "head", - }, - { - -- sphinx tiara - itemid = 31438, - type = "deequip", - slot = "head", - }, - { - -- gryphon mask - itemid = 31433, - type = "equip", - slot = "head", - }, - { - -- gryphon mask - itemid = 31433, - type = "deequip", - slot = "head", - }, - { - -- symbol of sun and sea - itemid = 31431, - type = "equip", - slot = "ring", - }, - { - -- symbol of sun and sea - itemid = 31431, - type = "deequip", - slot = "ring", - }, - { - -- silver mask - itemid = 31370, - type = "equip", - slot = "head", - }, - { - -- silver mask - itemid = 31370, - type = "deequip", - slot = "head", - }, - { - -- ring of secret thoughts - itemid = 31306, - type = "equip", - slot = "ring", - }, - { - -- ring of secret thoughts - itemid = 31306, - type = "deequip", - slot = "ring", - }, - { - -- jade amulet - itemid = 31268, - type = "equip", - slot = "necklace", - }, - { - -- jade amulet - itemid = 31268, - type = "deequip", - slot = "necklace", - }, - { - -- ring of secret thoughts - itemid = 31263, - type = "equip", - slot = "ring", - }, - { - -- ring of secret thoughts - itemid = 31263, - type = "deequip", - slot = "ring", - }, - { - -- amulet of theurgy - itemid = 30403, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- amulet of theurgy - itemid = 30403, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- enchanted theurgic amulet - itemid = 30402, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- enchanted theurgic amulet - itemid = 30402, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- amulet of theurgy - itemid = 30401, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- amulet of theurgy - itemid = 30401, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- cobra rod - itemid = 30400, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- cobra rod - itemid = 30400, - type = "deequip", - slot = "hand", - level = 220, - }, - { - -- cobra wand - itemid = 30399, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- cobra wand - itemid = 30399, - type = "deequip", - slot = "hand", - level = 270, - }, - { - -- cobra sword - itemid = 30398, - type = "equip", - slot = "hand", - }, - { - -- cobra sword - itemid = 30398, - type = "deequip", - slot = "hand", - }, - { - -- cobra hood - itemid = 30397, - type = "equip", - slot = "head", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra hood - itemid = 30397, - type = "deequip", - slot = "head", - level = 270, - }, - { - -- cobra axe - itemid = 30396, - type = "equip", - slot = "hand", - }, - { - -- cobra axe - itemid = 30396, - type = "deequip", - slot = "hand", - }, - { - -- cobra club - itemid = 30395, - type = "equip", - slot = "hand", - }, - { - -- cobra club - itemid = 30395, - type = "deequip", - slot = "hand", - }, - { - -- cobra boots - itemid = 30394, - type = "equip", - slot = "feet", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra boots - itemid = 30394, - type = "deequip", - slot = "feet", - level = 220, - }, - { - -- cobra crossbow - itemid = 30393, - type = "equip", - slot = "hand", - }, - { - -- cobra crossbow - itemid = 30393, - type = "deequip", - slot = "hand", - }, - { - -- rainbow necklace - itemid = 30323, - type = "equip", - slot = "necklace", - level = 220, - }, - { - -- rainbow necklace - itemid = 30323, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- ice hatchet - itemid = 30283, - type = "equip", - slot = "hand", - }, - { - -- ice hatchet - itemid = 30283, - type = "deequip", - slot = "hand", - }, - { - -- frozen claw - itemid = 30279, - type = "equip", - slot = "ring", - }, - { - -- frozen claw - itemid = 30279, - type = "deequip", - slot = "ring", - }, - { - -- the crown of the percht queen - itemid = 30276, - type = "equip", - slot = "head", - }, - { - -- the crown of the percht queen - itemid = 30276, - type = "deequip", - slot = "head", - }, - { - -- the crown of the percht queen - itemid = 30275, - type = "equip", - slot = "head", - }, - { - -- the crown of the percht queen - itemid = 30275, - type = "deequip", - slot = "head", - }, - { - -- festive backpack - itemid = 30197, - type = "equip", - slot = "backpack", - }, - { - -- festive backpack - itemid = 30197, - type = "deequip", - slot = "backpack", - }, - { - -- yetislippers - itemid = 30196, - type = "equip", - slot = "feet", - }, - { - -- yetislippers - itemid = 30196, - type = "deequip", - slot = "feet", - }, - { - -- pendulet - itemid = 30345, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- pendulet - itemid = 30345, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- enchanted pendulet - itemid = 30344, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted pendulet - itemid = 30344, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- sleep shawl - itemid = 30343, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- sleep shawl - itemid = 30343, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- enchanted sleep shawl - itemid = 30342, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted sleep shawl - itemid = 30342, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- shield of endless search - itemid = 30181, - type = "equip", - slot = "shield", - }, - { - -- shield of endless search - itemid = 30181, - type = "deequip", - slot = "shield", - }, - { - -- spirit guide - itemid = 29431, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spirit guide - itemid = 29431, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- ectoplasmic shield - itemid = 29430, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ectoplasmic shield - itemid = 29430, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- dark whispers - itemid = 29427, - type = "equip", - slot = "head", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- dark whispers - itemid = 29427, - type = "deequip", - slot = "head", - level = 180, - }, - { - -- brain in a jar - itemid = 29426, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- brain in a jar - itemid = 29426, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- energized limb - itemid = 29425, - type = "equip", - slot = "hand", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- energized limb - itemid = 29425, - type = "deequip", - slot = "hand", - level = 180, - }, - { - -- pair of dreamwalkers - itemid = 29424, - type = "equip", - slot = "feet", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- pair of dreamwalkers - itemid = 29424, - type = "deequip", - slot = "feet", - level = 180, - }, - { - -- dream shroud - itemid = 29423, - type = "equip", - slot = "armor", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- dream shroud - itemid = 29423, - type = "deequip", - slot = "armor", - level = 180, - }, - { - -- winterblade - itemid = 29422, - type = "equip", - slot = "hand", - }, - { - -- winterblade - itemid = 29422, - type = "deequip", - slot = "hand", - }, - { - -- summerblade - itemid = 29421, - type = "equip", - slot = "hand", - }, - { - -- summerblade - itemid = 29421, - type = "deequip", - slot = "hand", - }, - { - -- shoulder plate - itemid = 29420, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- shoulder plate - itemid = 29420, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- resizer - itemid = 29419, - type = "equip", - slot = "hand", - }, - { - -- resizer - itemid = 29419, - type = "deequip", - slot = "hand", - }, - { - -- living armor - itemid = 29418, - type = "equip", - slot = "armor", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- living armor - itemid = 29418, - type = "deequip", - slot = "armor", - level = 180, - }, - { - -- living vine bow - itemid = 29417, - type = "equip", - slot = "hand", - }, - { - -- living vine bow - itemid = 29417, - type = "deequip", - slot = "hand", - }, - { - -- golden axe - itemid = 29286, - type = "equip", - slot = "hand", - }, - { - -- golden axe - itemid = 29286, - type = "deequip", - slot = "hand", - }, - { - -- book backpack - itemid = 28571, - type = "equip", - slot = "backpack", - }, - { - -- book backpack - itemid = 28571, - type = "deequip", - slot = "backpack", - }, - { - -- wand of destruction test - itemid = 28479, - type = "equip", - slot = "hand", - }, - { - -- wand of destruction test - itemid = 28479, - type = "deequip", - slot = "hand", - }, - { - -- umbral master bow test - itemid = 28478, - type = "equip", - slot = "hand", - }, - { - -- umbral master bow test - itemid = 28478, - type = "deequip", - slot = "hand", - }, - { - -- ornate testtplate - itemid = 28475, - type = "equip", - slot = "armor", - }, - { - -- ornate testtplate - itemid = 28475, - type = "deequip", - slot = "armor", - }, - { - -- sorcerer test weapon - itemid = 28466, - type = "equip", - slot = "hand", - }, - { - -- sorcerer test weapon - itemid = 28466, - type = "deequip", - slot = "hand", - }, - { - -- bow of destruction test - itemid = 28465, - type = "equip", - slot = "hand", - }, - { - -- bow of destruction test - itemid = 28465, - type = "deequip", - slot = "hand", - }, - { - -- test weapon for knights - itemid = 28464, - type = "equip", - slot = "hand", - }, - { - -- test weapon for knights - itemid = 28464, - type = "deequip", - slot = "hand", - }, - { - -- sulphurous demonbone - itemid = 28832, - type = "equip", - slot = "hand", - }, - { - -- sulphurous demonbone - itemid = 28832, - type = "deequip", - slot = "hand", - }, - { - -- unliving demonbone - itemid = 28831, - type = "equip", - slot = "hand", - }, - { - -- unliving demonbone - itemid = 28831, - type = "deequip", - slot = "hand", - }, - { - -- energized demonbone - itemid = 28830, - type = "equip", - slot = "hand", - }, - { - -- energized demonbone - itemid = 28830, - type = "deequip", - slot = "hand", - }, - { - -- rotten demonbone - itemid = 28829, - type = "equip", - slot = "hand", - }, - { - -- rotten demonbone - itemid = 28829, - type = "deequip", - slot = "hand", - }, - { - -- deepling fork - itemid = 28826, - type = "equip", - slot = "hand", - level = 230, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- deepling fork - itemid = 28826, - type = "deequip", - slot = "hand", - level = 230, - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = "equip", - slot = "hand", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = "deequip", - slot = "hand", - level = 180, - }, - { - -- falcon mace - itemid = 28725, - type = "equip", - slot = "hand", - }, - { - -- falcon mace - itemid = 28725, - type = "deequip", - slot = "hand", - }, - { - -- falcon battleaxe - itemid = 28724, - type = "equip", - slot = "hand", - }, - { - -- falcon battleaxe - itemid = 28724, - type = "deequip", - slot = "hand", - }, - { - -- falcon longsword - itemid = 28723, - type = "equip", - slot = "hand", - }, - { - -- falcon longsword - itemid = 28723, - type = "deequip", - slot = "hand", - }, - { - -- falcon escutcheon - itemid = 28722, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon escutcheon - itemid = 28722, - type = "deequip", - slot = "shield", - level = 300, - }, - { - -- falcon shield - itemid = 28721, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon shield - itemid = 28721, - type = "deequip", - slot = "shield", - level = 300, - }, - { - -- falcon greaves - itemid = 28720, - type = "equip", - slot = "legs", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon greaves - itemid = 28720, - type = "deequip", - slot = "legs", - level = 300, - }, - { - -- falcon plate - itemid = 28719, - type = "equip", - slot = "armor", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon plate - itemid = 28719, - type = "deequip", - slot = "armor", - level = 300, - }, - { - -- falcon bow - itemid = 28718, - type = "equip", - slot = "hand", - }, - { - -- falcon bow - itemid = 28718, - type = "deequip", - slot = "hand", - }, - { - -- falcon wand - itemid = 28717, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- falcon wand - itemid = 28717, - type = "deequip", - slot = "hand", - level = 300, - }, - { - -- falcon rod - itemid = 28716, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- falcon rod - itemid = 28716, - type = "deequip", - slot = "hand", - level = 300, - }, - { - -- falcon coif - itemid = 28715, - type = "equip", - slot = "head", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon coif - itemid = 28715, - type = "deequip", - slot = "head", - level = 300, - }, - { - -- falcon circlet - itemid = 28714, - type = "equip", - slot = "head", - level = 300, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- falcon circlet - itemid = 28714, - type = "deequip", - slot = "head", - level = 300, - }, - { - -- silver chimes - itemid = 12126, - type = "equip", - slot = "shield", - }, - { - -- silver chimes - itemid = 12126, - type = "deequip", - slot = "shield", - }, - { - -- suspicious device - itemid = 27653, - type = "equip", - slot = "necklace", - }, - { - -- suspicious device - itemid = 27653, - type = "deequip", - slot = "necklace", - }, - { - -- gnome sword - itemid = 27651, - type = "equip", - slot = "hand", - }, - { - -- gnome sword - itemid = 27651, - type = "deequip", - slot = "hand", - }, - { - -- gnome shield - itemid = 27650, - type = "equip", - slot = "shield", - level = 200, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - { "Elite Knight" }, - }, - }, - { - -- gnome shield - itemid = 27650, - type = "deequip", - slot = "shield", - level = 200, - }, - { - -- gnome legs - itemid = 27649, - type = "equip", - slot = "legs", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gnome legs - itemid = 27649, - type = "deequip", - slot = "legs", - level = 200, - }, - { - -- gnome armor - itemid = 27648, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- gnome armor - itemid = 27648, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- gnome helmet - itemid = 27647, - type = "equip", - slot = "head", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gnome helmet - itemid = 27647, - type = "deequip", - slot = "head", - level = 200, - }, - { - -- foxtail amulet - itemid = 27565, - type = "equip", - slot = "necklace", - level = 100, - }, - { - -- foxtail amulet - itemid = 27565, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- mallet handle - itemid = 27525, - type = "equip", - slot = "hand", - }, - { - -- mallet handle - itemid = 27525, - type = "deequip", - slot = "hand", - }, - { - -- strange mallet - itemid = 27523, - type = "equip", - slot = "hand", - }, - { - -- strange mallet - itemid = 27523, - type = "deequip", - slot = "hand", - }, - { - -- blue spectacles - itemid = 27522, - type = "equip", - slot = "head", - }, - { - -- blue spectacles - itemid = 27522, - type = "deequip", - slot = "head", - }, - { - -- rod of destruction - itemid = 27458, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of destruction - itemid = 27458, - type = "deequip", - slot = "hand", - level = 200, - }, - { - -- wand of destruction - itemid = 27457, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of destruction - itemid = 27457, - type = "deequip", - slot = "hand", - level = 200, - }, - { - -- crossbow of destruction - itemid = 27456, - type = "equip", - slot = "hand", - }, - { - -- crossbow of destruction - itemid = 27456, - type = "deequip", - slot = "hand", - }, - { - -- bow of destruction - itemid = 27455, - type = "equip", - slot = "hand", - }, - { - -- bow of destruction - itemid = 27455, - type = "deequip", - slot = "hand", - }, - { - -- hammer of destruction - itemid = 27454, - type = "equip", - slot = "hand", - }, - { - -- hammer of destruction - itemid = 27454, - type = "deequip", - slot = "hand", - }, - { - -- mace of destruction - itemid = 27453, - type = "equip", - slot = "hand", - }, - { - -- mace of destruction - itemid = 27453, - type = "deequip", - slot = "hand", - }, - { - -- chopper of destruction - itemid = 27452, - type = "equip", - slot = "hand", - }, - { - -- chopper of destruction - itemid = 27452, - type = "deequip", - slot = "hand", - }, - { - -- axe of destruction - itemid = 27451, - type = "equip", - slot = "hand", - }, - { - -- axe of destruction - itemid = 27451, - type = "deequip", - slot = "hand", - }, - { - -- slayer of destruction - itemid = 27450, - type = "equip", - slot = "hand", - }, - { - -- slayer of destruction - itemid = 27450, - type = "deequip", - slot = "hand", - }, - { - -- blade of destruction - itemid = 27449, - type = "equip", - slot = "hand", - }, - { - -- blade of destruction - itemid = 27449, - type = "deequip", - slot = "hand", - }, - { - -- Journal Shield - itemid = 26947, - type = "equip", - slot = "shield", - }, - { - -- Journal Shield - itemid = 26947, - type = "deequip", - slot = "shield", - }, - { - -- reflecting crown - itemid = 26190, - type = "equip", - slot = "head", - }, - { - -- reflecting crown - itemid = 26190, - type = "deequip", - slot = "head", - }, - { - -- incandescent crown - itemid = 26189, - type = "equip", - slot = "head", - }, - { - -- incandescent crown - itemid = 26189, - type = "deequip", - slot = "head", - }, - { - -- iron crown - itemid = 26188, - type = "equip", - slot = "head", - }, - { - -- iron crown - itemid = 26188, - type = "deequip", - slot = "head", - }, - { - -- leaf crown - itemid = 26187, - type = "equip", - slot = "head", - }, - { - -- leaf crown - itemid = 26187, - type = "deequip", - slot = "head", - }, - { - -- ornate carving hammer - itemid = 26061, - type = "equip", - slot = "hand", - }, - { - -- ornate carving hammer - itemid = 26061, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving hammer - itemid = 26060, - type = "equip", - slot = "hand", - }, - { - -- valuable carving hammer - itemid = 26060, - type = "deequip", - slot = "hand", - }, - { - -- plain carving hammer - itemid = 26059, - type = "equip", - slot = "hand", - }, - { - -- plain carving hammer - itemid = 26059, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving mace - itemid = 26058, - type = "equip", - slot = "hand", - }, - { - -- ornate carving mace - itemid = 26058, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving mace - itemid = 26057, - type = "equip", - slot = "hand", - }, - { - -- valuable carving mace - itemid = 26057, - type = "deequip", - slot = "hand", - }, - { - -- plain carving mace - itemid = 26056, - type = "equip", - slot = "hand", - }, - { - -- plain carving mace - itemid = 26056, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving chopper - itemid = 26055, - type = "equip", - slot = "hand", - }, - { - -- ornate carving chopper - itemid = 26055, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving chopper - itemid = 26054, - type = "equip", - slot = "hand", - }, - { - -- valuable carving chopper - itemid = 26054, - type = "deequip", - slot = "hand", - }, - { - -- plain carving chopper - itemid = 26053, - type = "equip", - slot = "hand", - }, - { - -- plain carving chopper - itemid = 26053, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving axe - itemid = 26052, - type = "equip", - slot = "hand", - }, - { - -- ornate carving axe - itemid = 26052, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving axe - itemid = 26051, - type = "equip", - slot = "hand", - }, - { - -- valuable carving axe - itemid = 26051, - type = "deequip", - slot = "hand", - }, - { - -- plain carving axe - itemid = 26050, - type = "equip", - slot = "hand", - }, - { - -- plain carving axe - itemid = 26050, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving slayer - itemid = 26049, - type = "equip", - slot = "hand", - }, - { - -- ornate carving slayer - itemid = 26049, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving slayer - itemid = 26048, - type = "equip", - slot = "hand", - }, - { - -- valuable carving slayer - itemid = 26048, - type = "deequip", - slot = "hand", - }, - { - -- plain carving slayer - itemid = 26047, - type = "equip", - slot = "hand", - }, - { - -- plain carving slayer - itemid = 26047, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving blade - itemid = 26046, - type = "equip", - slot = "hand", - }, - { - -- ornate carving blade - itemid = 26046, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving blade - itemid = 26045, - type = "equip", - slot = "hand", - }, - { - -- valuable carving blade - itemid = 26045, - type = "deequip", - slot = "hand", - }, - { - -- plain carving blade - itemid = 26044, - type = "equip", - slot = "hand", - }, - { - -- plain carving blade - itemid = 26044, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy hammer - itemid = 26031, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy hammer - itemid = 26031, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy hammer - itemid = 26030, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy hammer - itemid = 26030, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy hammer - itemid = 26029, - type = "equip", - slot = "hand", - }, - { - -- plain remedy hammer - itemid = 26029, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy mace - itemid = 26028, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy mace - itemid = 26028, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy mace - itemid = 26027, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy mace - itemid = 26027, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy mace - itemid = 26026, - type = "equip", - slot = "hand", - }, - { - -- plain remedy mace - itemid = 26026, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy chopper - itemid = 26025, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy chopper - itemid = 26025, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy chopper - itemid = 26024, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy chopper - itemid = 26024, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy chopper - itemid = 26023, - type = "equip", - slot = "hand", - }, - { - -- plain remedy chopper - itemid = 26023, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy axe - itemid = 26022, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy axe - itemid = 26022, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy axe - itemid = 26021, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy axe - itemid = 26021, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy axe - itemid = 26020, - type = "equip", - slot = "hand", - }, - { - -- plain remedy axe - itemid = 26020, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy slayer - itemid = 26019, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy slayer - itemid = 26019, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy slayer - itemid = 26018, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy slayer - itemid = 26018, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy slayer - itemid = 26017, - type = "equip", - slot = "hand", - }, - { - -- plain remedy slayer - itemid = 26017, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy blade - itemid = 26016, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy blade - itemid = 26016, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy blade - itemid = 26015, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy blade - itemid = 26015, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy blade - itemid = 26014, - type = "equip", - slot = "hand", - }, - { - -- plain remedy blade - itemid = 26014, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem hammer - itemid = 25998, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem hammer - itemid = 25998, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem mace - itemid = 25997, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem mace - itemid = 25997, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem mace - itemid = 25996, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem mace - itemid = 25996, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem mace - itemid = 25995, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem mace - itemid = 25995, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem chopper - itemid = 25992, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem chopper - itemid = 25992, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem axe - itemid = 25991, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem axe - itemid = 25991, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem axe - itemid = 25990, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem axe - itemid = 25990, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem axe - itemid = 25989, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem axe - itemid = 25989, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem slayer - itemid = 25986, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem slayer - itemid = 25986, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem blade - itemid = 25985, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem blade - itemid = 25985, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem blade - itemid = 25984, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem blade - itemid = 25984, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem blade - itemid = 25983, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem blade - itemid = 25983, - type = "deequip", - slot = "hand", - }, - { - -- mathmaster shield (souvenir) - itemid = 25982, - type = "equip", - slot = "shield", - }, - { - -- mathmaster shield (souvenir) - itemid = 25982, - type = "deequip", - slot = "shield", - }, - { - -- energy war hammer replica - itemid = 25974, - type = "equip", - slot = "hand", - }, - { - -- energy war hammer replica - itemid = 25974, - type = "deequip", - slot = "hand", - }, - { - -- energy orcish maul replica - itemid = 25973, - type = "equip", - slot = "hand", - }, - { - -- energy orcish maul replica - itemid = 25973, - type = "deequip", - slot = "hand", - }, - { - -- energy basher replica - itemid = 25972, - type = "equip", - slot = "hand", - }, - { - -- energy basher replica - itemid = 25972, - type = "deequip", - slot = "hand", - }, - { - -- energy crystal mace replica - itemid = 25971, - type = "equip", - slot = "hand", - }, - { - -- energy crystal mace replica - itemid = 25971, - type = "deequip", - slot = "hand", - }, - { - -- energy clerical mace replica - itemid = 25970, - type = "equip", - slot = "hand", - }, - { - -- energy clerical mace replica - itemid = 25970, - type = "deequip", - slot = "hand", - }, - { - -- energy war axe replica - itemid = 25969, - type = "equip", - slot = "hand", - }, - { - -- energy war axe replica - itemid = 25969, - type = "deequip", - slot = "hand", - }, - { - -- energy headchopper replica - itemid = 25968, - type = "equip", - slot = "hand", - }, - { - -- energy headchopper replica - itemid = 25968, - type = "deequip", - slot = "hand", - }, - { - -- energy heroic axe replica - itemid = 25967, - type = "equip", - slot = "hand", - }, - { - -- energy heroic axe replica - itemid = 25967, - type = "deequip", - slot = "hand", - }, - { - -- energy knight axe replica - itemid = 25966, - type = "equip", - slot = "hand", - }, - { - -- energy knight axe replica - itemid = 25966, - type = "deequip", - slot = "hand", - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = "equip", - slot = "hand", - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = "deequip", - slot = "hand", - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = "equip", - slot = "hand", - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = "deequip", - slot = "hand", - }, - { - -- energy blacksteel replica - itemid = 25963, - type = "equip", - slot = "hand", - }, - { - -- energy blacksteel replica - itemid = 25963, - type = "deequip", - slot = "hand", - }, - { - -- energy mystic blade replica - itemid = 25962, - type = "equip", - slot = "hand", - }, - { - -- energy mystic blade replica - itemid = 25962, - type = "deequip", - slot = "hand", - }, - { - -- energy relic sword replica - itemid = 25961, - type = "equip", - slot = "hand", - }, - { - -- energy relic sword replica - itemid = 25961, - type = "deequip", - slot = "hand", - }, - { - -- energy spike sword replica - itemid = 25960, - type = "equip", - slot = "hand", - }, - { - -- energy spike sword replica - itemid = 25960, - type = "deequip", - slot = "hand", - }, - { - -- earth war hammer replica - itemid = 25959, - type = "equip", - slot = "hand", - }, - { - -- earth war hammer replica - itemid = 25959, - type = "deequip", - slot = "hand", - }, - { - -- earth orcish maul replica - itemid = 25958, - type = "equip", - slot = "hand", - }, - { - -- earth orcish maul replica - itemid = 25958, - type = "deequip", - slot = "hand", - }, - { - -- earth basher replica - itemid = 25957, - type = "equip", - slot = "hand", - }, - { - -- earth basher replica - itemid = 25957, - type = "deequip", - slot = "hand", - }, - { - -- earth crystal mace replica - itemid = 25956, - type = "equip", - slot = "hand", - }, - { - -- earth crystal mace replica - itemid = 25956, - type = "deequip", - slot = "hand", - }, - { - -- earth clerical mace replica - itemid = 25955, - type = "equip", - slot = "hand", - }, - { - -- earth clerical mace replica - itemid = 25955, - type = "deequip", - slot = "hand", - }, - { - -- earth war axe replica - itemid = 25954, - type = "equip", - slot = "hand", - }, - { - -- earth war axe replica - itemid = 25954, - type = "deequip", - slot = "hand", - }, - { - -- earth headchopper replica - itemid = 25953, - type = "equip", - slot = "hand", - }, - { - -- earth headchopper replica - itemid = 25953, - type = "deequip", - slot = "hand", - }, - { - -- earth heroic axe replica - itemid = 25952, - type = "equip", - slot = "hand", - }, - { - -- earth heroic axe replica - itemid = 25952, - type = "deequip", - slot = "hand", - }, - { - -- earth knight axe replica - itemid = 25951, - type = "equip", - slot = "hand", - }, - { - -- earth knight axe replica - itemid = 25951, - type = "deequip", - slot = "hand", - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = "equip", - slot = "hand", - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = "deequip", - slot = "hand", - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = "equip", - slot = "hand", - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = "deequip", - slot = "hand", - }, - { - -- earth blacksteel replica - itemid = 25948, - type = "equip", - slot = "hand", - }, - { - -- earth blacksteel replica - itemid = 25948, - type = "deequip", - slot = "hand", - }, - { - -- earth mystic blade replica - itemid = 25947, - type = "equip", - slot = "hand", - }, - { - -- earth mystic blade replica - itemid = 25947, - type = "deequip", - slot = "hand", - }, - { - -- earth relic sword replica - itemid = 25946, - type = "equip", - slot = "hand", - }, - { - -- earth relic sword replica - itemid = 25946, - type = "deequip", - slot = "hand", - }, - { - -- earth spike sword replica - itemid = 25945, - type = "equip", - slot = "hand", - }, - { - -- earth spike sword replica - itemid = 25945, - type = "deequip", - slot = "hand", - }, - { - -- icy war hammer replica - itemid = 25944, - type = "equip", - slot = "hand", - }, - { - -- icy war hammer replica - itemid = 25944, - type = "deequip", - slot = "hand", - }, - { - -- icy orcish maul replica - itemid = 25943, - type = "equip", - slot = "hand", - }, - { - -- icy orcish maul replica - itemid = 25943, - type = "deequip", - slot = "hand", - }, - { - -- icy basher replica - itemid = 25942, - type = "equip", - slot = "hand", - }, - { - -- icy basher replica - itemid = 25942, - type = "deequip", - slot = "hand", - }, - { - -- icy crystal mace replica - itemid = 25941, - type = "equip", - slot = "hand", - }, - { - -- icy crystal mace replica - itemid = 25941, - type = "deequip", - slot = "hand", - }, - { - -- icy clerical mace replica - itemid = 25940, - type = "equip", - slot = "hand", - }, - { - -- icy clerical mace replica - itemid = 25940, - type = "deequip", - slot = "hand", - }, - { - -- icy war axe replica - itemid = 25939, - type = "equip", - slot = "hand", - }, - { - -- icy war axe replica - itemid = 25939, - type = "deequip", - slot = "hand", - }, - { - -- icy headchopper replica - itemid = 25938, - type = "equip", - slot = "hand", - }, - { - -- icy headchopper replica - itemid = 25938, - type = "deequip", - slot = "hand", - }, - { - -- icy heroic axe replica - itemid = 25937, - type = "equip", - slot = "hand", - }, - { - -- icy heroic axe replica - itemid = 25937, - type = "deequip", - slot = "hand", - }, - { - -- icy knight axe replica - itemid = 25936, - type = "equip", - slot = "hand", - }, - { - -- icy knight axe replica - itemid = 25936, - type = "deequip", - slot = "hand", - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = "equip", - slot = "hand", - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = "deequip", - slot = "hand", - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = "equip", - slot = "hand", - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = "deequip", - slot = "hand", - }, - { - -- icy blacksteel replica - itemid = 25933, - type = "equip", - slot = "hand", - }, - { - -- icy blacksteel replica - itemid = 25933, - type = "deequip", - slot = "hand", - }, - { - -- icy mystic blade replica - itemid = 25932, - type = "equip", - slot = "hand", - }, - { - -- icy mystic blade replica - itemid = 25932, - type = "deequip", - slot = "hand", - }, - { - -- icy relic sword replica - itemid = 25931, - type = "equip", - slot = "hand", - }, - { - -- icy relic sword replica - itemid = 25931, - type = "deequip", - slot = "hand", - }, - { - -- icy spike sword replica - itemid = 25930, - type = "equip", - slot = "hand", - }, - { - -- icy spike sword replica - itemid = 25930, - type = "deequip", - slot = "hand", - }, - { - -- fiery war hammer replica - itemid = 25929, - type = "equip", - slot = "hand", - }, - { - -- fiery war hammer replica - itemid = 25929, - type = "deequip", - slot = "hand", - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = "equip", - slot = "hand", - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = "deequip", - slot = "hand", - }, - { - -- fiery basher replica - itemid = 25927, - type = "equip", - slot = "hand", - }, - { - -- fiery basher replica - itemid = 25927, - type = "deequip", - slot = "hand", - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = "equip", - slot = "hand", - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = "deequip", - slot = "hand", - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = "equip", - slot = "hand", - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = "deequip", - slot = "hand", - }, - { - -- fiery war axe replica - itemid = 25924, - type = "equip", - slot = "hand", - }, - { - -- fiery war axe replica - itemid = 25924, - type = "deequip", - slot = "hand", - }, - { - -- fiery headchopper replica - itemid = 25923, - type = "equip", - slot = "hand", - }, - { - -- fiery headchopper replica - itemid = 25923, - type = "deequip", - slot = "hand", - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = "equip", - slot = "hand", - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = "deequip", - slot = "hand", - }, - { - -- fiery knight axe replica - itemid = 25921, - type = "equip", - slot = "hand", - }, - { - -- fiery knight axe replica - itemid = 25921, - type = "deequip", - slot = "hand", - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = "equip", - slot = "hand", - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = "deequip", - slot = "hand", - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = "equip", - slot = "hand", - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = "deequip", - slot = "hand", - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = "equip", - slot = "hand", - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = "deequip", - slot = "hand", - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = "equip", - slot = "hand", - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = "deequip", - slot = "hand", - }, - { - -- fiery relic sword replica - itemid = 25916, - type = "equip", - slot = "hand", - }, - { - -- fiery relic sword replica - itemid = 25916, - type = "deequip", - slot = "hand", - }, - { - -- fiery spike sword replica - itemid = 25915, - type = "equip", - slot = "hand", - }, - { - -- fiery spike sword replica - itemid = 25915, - type = "deequip", - slot = "hand", - }, - { - -- blossom bag - itemid = 25780, - type = "equip", - slot = "backpack", - }, - { - -- blossom bag - itemid = 25780, - type = "deequip", - slot = "backpack", - }, - { - -- swan feather cloak - itemid = 25779, - type = "equip", - slot = "armor", - level = 60, - }, - { - -- swan feather cloak - itemid = 25779, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- wand of darkness - itemid = 25760, - type = "equip", - slot = "hand", - level = 41, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of darkness - itemid = 25760, - type = "deequip", - slot = "hand", - level = 41, - }, - { - -- royal star - itemid = 25759, - type = "equip", - slot = "hand", - }, - { - -- royal star - itemid = 25759, - type = "deequip", - slot = "hand", - }, - { - -- spectral bolt - itemid = 25758, - type = "equip", - slot = "ammo", - }, - { - -- spectral bolt - itemid = 25758, - type = "deequip", - slot = "ammo", - }, - { - -- leaf star - itemid = 25735, - type = "equip", - slot = "hand", - }, - { - -- leaf star - itemid = 25735, - type = "deequip", - slot = "hand", - }, - { - -- dream blossom staff - itemid = 25700, - type = "equip", - slot = "hand", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- dream blossom staff - itemid = 25700, - type = "deequip", - slot = "hand", - level = 80, - }, - { - -- wooden spellbook - itemid = 25699, - type = "equip", - slot = "shield", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- wooden spellbook - itemid = 25699, - type = "deequip", - slot = "shield", - level = 80, - }, - { - -- butterfly ring - itemid = 25698, - type = "equip", - slot = "ring", - level = 50, - }, - { - -- butterfly ring - itemid = 25698, - type = "deequip", - slot = "ring", - level = 50, - }, - { - -- glowing rubbish amulet - itemid = 25297, - type = "equip", - slot = "necklace", - }, - { - -- glowing rubbish amulet - itemid = 25297, - type = "deequip", - slot = "necklace", - }, - { - -- rubbish amulet - itemid = 25296, - type = "equip", - slot = "necklace", - }, - { - -- rubbish amulet - itemid = 25296, - type = "deequip", - slot = "necklace", - }, - { - -- porcelain mask - itemid = 25088, - type = "equip", - slot = "head", - }, - { - -- porcelain mask - itemid = 25088, - type = "deequip", - slot = "head", - }, - { - -- filthy bunnyslippers - itemid = 24409, - type = "equip", - slot = "feet", - }, - { - -- filthy bunnyslippers - itemid = 24409, - type = "deequip", - slot = "feet", - }, - { - -- rusty winged helmet - itemid = 24405, - type = "equip", - slot = "head", - }, - { - -- rusty winged helmet - itemid = 24405, - type = "deequip", - slot = "head", - }, - { - -- tatty Dragon scale legs - itemid = 24404, - type = "equip", - slot = "legs", - }, - { - -- tatty Dragon scale legs - itemid = 24404, - type = "deequip", - slot = "legs", - }, - { - -- chocolatey dragon scale legs - itemid = 24402, - type = "equip", - slot = "legs", - }, - { - -- chocolatey dragon scale legs - itemid = 24402, - type = "deequip", - slot = "legs", - }, - { - -- Ferumbras' Candy Hat - itemid = 24397, - type = "equip", - slot = "head", - }, - { - -- Ferumbras' Candy Hat - itemid = 24397, - type = "deequip", - slot = "head", - }, - { - -- birthday backpack - itemid = 24395, - type = "equip", - slot = "backpack", - }, - { - -- birthday backpack - itemid = 24395, - type = "deequip", - slot = "backpack", - }, - { - -- pillow backpack - itemid = 24393, - type = "equip", - slot = "backpack", - }, - { - -- pillow backpack - itemid = 24393, - type = "deequip", - slot = "backpack", - }, - { - -- collar of red plasma - itemid = 23544, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- collar of red plasma - itemid = 23544, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of green plasma - itemid = 23543, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- collar of green plasma - itemid = 23543, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of blue plasma - itemid = 23542, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- collar of blue plasma - itemid = 23542, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- ring of red plasma - itemid = 23534, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ring of red plasma - itemid = 23534, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of red plasma - itemid = 23533, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ring of red plasma - itemid = 23533, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of green plasma - itemid = 23532, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- ring of green plasma - itemid = 23532, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of green plasma - itemid = 23531, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- ring of green plasma - itemid = 23531, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of blue plasma - itemid = 23530, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ring of blue plasma - itemid = 23530, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of blue plasma - itemid = 23529, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ring of blue plasma - itemid = 23529, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- collar of red plasma - itemid = 23528, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- collar of red plasma - itemid = 23528, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of green plasma - itemid = 23527, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- collar of green plasma - itemid = 23527, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of blue plasma - itemid = 23526, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- collar of blue plasma - itemid = 23526, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- energetic backpack - itemid = 23525, - type = "equip", - slot = "backpack", - }, - { - -- energetic backpack - itemid = 23525, - type = "deequip", - slot = "backpack", - }, - { - -- void boots - itemid = 23477, - type = "equip", - slot = "feet", - level = 150, - }, - { - -- void boots - itemid = 23477, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- void boots - itemid = 23476, - type = "equip", - slot = "feet", - level = 150, - }, - { - -- void boots - itemid = 23476, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- tiara of power - itemid = 23475, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- tiara of power - itemid = 23475, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- tiara of power - itemid = 23474, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- tiara of power - itemid = 23474, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- rod of carving - itemid = 23339, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of carving - itemid = 23339, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- wand of carving - itemid = 23335, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of carving - itemid = 23335, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- crossbow of carving - itemid = 23331, - type = "equip", - slot = "hand", - }, - { - -- crossbow of carving - itemid = 23331, - type = "deequip", - slot = "hand", - }, - { - -- bow of carving - itemid = 23327, - type = "equip", - slot = "hand", - }, - { - -- bow of carving - itemid = 23327, - type = "deequip", - slot = "hand", - }, - { - -- hammer of carving - itemid = 23323, - type = "equip", - slot = "hand", - }, - { - -- hammer of carving - itemid = 23323, - type = "deequip", - slot = "hand", - }, - { - -- mace of carving - itemid = 23319, - type = "equip", - slot = "hand", - }, - { - -- mace of carving - itemid = 23319, - type = "deequip", - slot = "hand", - }, - { - -- chopper of carving - itemid = 23315, - type = "equip", - slot = "hand", - }, - { - -- chopper of carving - itemid = 23315, - type = "deequip", - slot = "hand", - }, - { - -- axe of carving - itemid = 23311, - type = "equip", - slot = "hand", - }, - { - -- axe of carving - itemid = 23311, - type = "deequip", - slot = "hand", - }, - { - -- slayer of carving - itemid = 23307, - type = "equip", - slot = "hand", - }, - { - -- slayer of carving - itemid = 23307, - type = "deequip", - slot = "hand", - }, - { - -- blade of carving - itemid = 23303, - type = "equip", - slot = "hand", - }, - { - -- blade of carving - itemid = 23303, - type = "deequip", - slot = "hand", - }, - { - -- rod of remedy - itemid = 23299, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of remedy - itemid = 23299, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- wand of remedy - itemid = 23295, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of remedy - itemid = 23295, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- crossbow of remedy - itemid = 23291, - type = "equip", - slot = "hand", - }, - { - -- crossbow of remedy - itemid = 23291, - type = "deequip", - slot = "hand", - }, - { - -- bow of remedy - itemid = 23287, - type = "equip", - slot = "hand", - }, - { - -- bow of remedy - itemid = 23287, - type = "deequip", - slot = "hand", - }, - { - -- mace of remedy - itemid = 23279, - type = "equip", - slot = "hand", - }, - { - -- mace of remedy - itemid = 23279, - type = "deequip", - slot = "hand", - }, - { - -- chopper of remedy - itemid = 23275, - type = "equip", - slot = "hand", - }, - { - -- chopper of remedy - itemid = 23275, - type = "deequip", - slot = "hand", - }, - { - -- axe of remedy - itemid = 23271, - type = "equip", - slot = "hand", - }, - { - -- axe of remedy - itemid = 23271, - type = "deequip", - slot = "hand", - }, - { - -- slayer of remedy - itemid = 23267, - type = "equip", - slot = "hand", - }, - { - -- slayer of remedy - itemid = 23267, - type = "deequip", - slot = "hand", - }, - { - -- blade of remedy - itemid = 23263, - type = "equip", - slot = "hand", - }, - { - -- blade of remedy - itemid = 23263, - type = "deequip", - slot = "hand", - }, - { - -- rod of mayhem - itemid = 23232, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of mayhem - itemid = 23232, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- wand of mayhem - itemid = 23231, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of mayhem - itemid = 23231, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- crossbow of mayhem - itemid = 23230, - type = "equip", - slot = "hand", - }, - { - -- crossbow of mayhem - itemid = 23230, - type = "deequip", - slot = "hand", - }, - { - -- bow of mayhem - itemid = 23229, - type = "equip", - slot = "hand", - }, - { - -- bow of mayhem - itemid = 23229, - type = "deequip", - slot = "hand", - }, - { - -- hammer of mayhem - itemid = 23228, - type = "equip", - slot = "hand", - }, - { - -- hammer of mayhem - itemid = 23228, - type = "deequip", - slot = "hand", - }, - { - -- mace of mayhem - itemid = 23227, - type = "equip", - slot = "hand", - }, - { - -- mace of mayhem - itemid = 23227, - type = "deequip", - slot = "hand", - }, - { - -- chopper of mayhem - itemid = 23226, - type = "equip", - slot = "hand", - }, - { - -- chopper of mayhem - itemid = 23226, - type = "deequip", - slot = "hand", - }, - { - -- axe of mayhem - itemid = 23225, - type = "equip", - slot = "hand", - }, - { - -- axe of mayhem - itemid = 23225, - type = "deequip", - slot = "hand", - }, - { - -- slayer of mayhem - itemid = 23224, - type = "equip", - slot = "hand", - }, - { - -- slayer of mayhem - itemid = 23224, - type = "deequip", - slot = "hand", - }, - { - -- blade of mayhem - itemid = 23223, - type = "equip", - slot = "hand", - }, - { - -- blade of mayhem - itemid = 23223, - type = "deequip", - slot = "hand", - }, - { - -- shield of destiny - itemid = 22890, - type = "equip", - slot = "shield", - }, - { - -- shield of destiny - itemid = 22890, - type = "deequip", - slot = "shield", - }, - { - -- shield of destiny - itemid = 22889, - type = "equip", - slot = "shield", - }, - { - -- shield of destiny - itemid = 22889, - type = "deequip", - slot = "shield", - }, - { - -- rift crossbow - itemid = 22867, - type = "equip", - slot = "hand", - }, - { - -- rift crossbow - itemid = 22867, - type = "deequip", - slot = "hand", - }, - { - -- rift bow - itemid = 22866, - type = "equip", - slot = "hand", - }, - { - -- rift bow - itemid = 22866, - type = "deequip", - slot = "hand", - }, - { - -- boots of homecoming - itemid = 22774, - type = "equip", - slot = "feet", - level = 100, - }, - { - -- boots of homecoming - itemid = 22774, - type = "deequip", - slot = "feet", - level = 100, - }, - { - -- boots of homecoming - itemid = 22773, - type = "equip", - slot = "feet", - level = 100, - }, - { - -- boots of homecoming - itemid = 22773, - type = "deequip", - slot = "feet", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22768, - type = "equip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22768, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22767, - type = "equip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22767, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- Ferumbras' staff - itemid = 22764, - type = "equip", - slot = "hand", - }, - { - -- Ferumbras' staff - itemid = 22764, - type = "deequip", - slot = "hand", - }, - { - -- maimer - itemid = 22762, - type = "equip", - slot = "hand", - }, - { - -- maimer - itemid = 22762, - type = "deequip", - slot = "hand", - }, - { - -- Impaler of the igniter - itemid = 22760, - type = "equip", - slot = "hand", - }, - { - -- Impaler of the igniter - itemid = 22760, - type = "deequip", - slot = "hand", - }, - { - -- plague bite - itemid = 22759, - type = "equip", - slot = "hand", - }, - { - -- plague bite - itemid = 22759, - type = "deequip", - slot = "hand", - }, - { - -- death gaze - itemid = 22758, - type = "equip", - slot = "shield", - level = 200, - }, - { - -- death gaze - itemid = 22758, - type = "deequip", - slot = "shield", - level = 200, - }, - { - -- shroud of despair - itemid = 22757, - type = "equip", - slot = "head", - level = 150, - }, - { - -- shroud of despair - itemid = 22757, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- treader of torment - itemid = 22756, - type = "equip", - slot = "feet", - }, - { - -- treader of torment - itemid = 22756, - type = "deequip", - slot = "feet", - }, - { - -- book of lies - itemid = 22755, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- book of lies - itemid = 22755, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- visage of the end days - itemid = 22754, - type = "equip", - slot = "head", - }, - { - -- visage of the end days - itemid = 22754, - type = "deequip", - slot = "head", - }, - { - -- ancient amulet - itemid = 22746, - type = "equip", - slot = "necklace", - }, - { - -- ancient amulet - itemid = 22746, - type = "deequip", - slot = "necklace", - }, - { - -- rift lance - itemid = 22727, - type = "equip", - slot = "hand", - }, - { - -- rift lance - itemid = 22727, - type = "deequip", - slot = "hand", - }, - { - -- rift shield - itemid = 22726, - type = "equip", - slot = "shield", - }, - { - -- rift shield - itemid = 22726, - type = "deequip", - slot = "shield", - }, - { - -- rattling gourd - itemid = 22651, - type = "equip", - slot = "shield", - }, - { - -- rattling gourd - itemid = 22651, - type = "deequip", - slot = "shield", - }, - { - -- gourd - itemid = 22650, - type = "equip", - slot = "shield", - }, - { - -- gourd - itemid = 22650, - type = "deequip", - slot = "shield", - }, - { - -- frostmind raiment - itemid = 22537, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- frostmind raiment - itemid = 22537, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thundermind raiment - itemid = 22536, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- thundermind raiment - itemid = 22536, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthmind raiment - itemid = 22535, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- earthmind raiment - itemid = 22535, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- firemind raiment - itemid = 22534, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- firemind raiment - itemid = 22534, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostsoul tabard - itemid = 22533, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- frostsoul tabard - itemid = 22533, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thundersoul tabard - itemid = 22532, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- thundersoul tabard - itemid = 22532, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthsoul tabard - itemid = 22531, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- earthsoul tabard - itemid = 22531, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- firesoul tabard - itemid = 22530, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- firesoul tabard - itemid = 22530, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostheart platemail - itemid = 22529, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostheart platemail - itemid = 22529, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostheart hauberk - itemid = 22528, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostheart hauberk - itemid = 22528, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostheart cuirass - itemid = 22527, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostheart cuirass - itemid = 22527, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thunderheart platemail - itemid = 22526, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thunderheart platemail - itemid = 22526, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thunderheart hauberk - itemid = 22525, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thunderheart hauberk - itemid = 22525, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thunderheart cuirass - itemid = 22524, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thunderheart cuirass - itemid = 22524, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthheart platemail - itemid = 22523, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthheart platemail - itemid = 22523, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthheart hauberk - itemid = 22522, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthheart hauberk - itemid = 22522, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthheart cuirass - itemid = 22521, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthheart cuirass - itemid = 22521, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- fireheart platemail - itemid = 22520, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireheart platemail - itemid = 22520, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- fireheart hauberk - itemid = 22519, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireheart hauberk - itemid = 22519, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- fireheart cuirass - itemid = 22518, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireheart cuirass - itemid = 22518, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- onyx pendant - itemid = 22195, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- onyx pendant - itemid = 22195, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- shamanic mask - itemid = 22192, - type = "equip", - slot = "head", - }, - { - -- shamanic mask - itemid = 22192, - type = "deequip", - slot = "head", - }, - { - -- painted gourd rattle - itemid = 22190, - type = "equip", - slot = "shield", - }, - { - -- painted gourd rattle - itemid = 22190, - type = "deequip", - slot = "shield", - }, - { - -- ogre sceptra - itemid = 22183, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- ogre sceptra - itemid = 22183, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- ogre choppa - itemid = 22172, - type = "equip", - slot = "hand", - }, - { - -- ogre choppa - itemid = 22172, - type = "deequip", - slot = "hand", - }, - { - -- ogre klubba - itemid = 22171, - type = "equip", - slot = "hand", - }, - { - -- ogre klubba - itemid = 22171, - type = "deequip", - slot = "hand", - }, - { - -- house silversun's signet ring - itemid = 22170, - type = "equip", - slot = "ring", - }, - { - -- house silversun's signet ring - itemid = 22170, - type = "deequip", - slot = "ring", - }, - { - -- dark wizard's crown - itemid = 22154, - type = "equip", - slot = "head", - }, - { - -- dark wizard's crown - itemid = 22154, - type = "deequip", - slot = "head", - }, - { - -- dark wizard's crown - itemid = 22153, - type = "equip", - slot = "head", - }, - { - -- dark wizard's crown - itemid = 22153, - type = "deequip", - slot = "head", - }, - { - -- enchanted werewolf amulet - itemid = 22134, - type = "equip", - slot = "necklace", - }, - { - -- enchanted werewolf amulet - itemid = 22134, - type = "deequip", - slot = "necklace", - }, - { - -- enchanted werewolf helmet - itemid = 22130, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted werewolf helmet - itemid = 22130, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf helmet - itemid = 22129, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted werewolf helmet - itemid = 22129, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf helmet - itemid = 22128, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- enchanted werewolf helmet - itemid = 22128, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf helmet - itemid = 22127, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- enchanted werewolf helmet - itemid = 22127, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- wereboar loincloth - itemid = 22087, - type = "equip", - slot = "legs", - }, - { - -- wereboar loincloth - itemid = 22087, - type = "deequip", - slot = "legs", - }, - { - -- badger boots - itemid = 22086, - type = "equip", - slot = "feet", - level = 60, - }, - { - -- badger boots - itemid = 22086, - type = "deequip", - slot = "feet", - level = 60, - }, - { - -- fur armor - itemid = 22085, - type = "equip", - slot = "armor", - level = 50, - }, - { - -- fur armor - itemid = 22085, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- wolf backpack - itemid = 22084, - type = "equip", - slot = "backpack", - }, - { - -- wolf backpack - itemid = 22084, - type = "deequip", - slot = "backpack", - }, - { - -- werewolf helmet - itemid = 22062, - type = "equip", - slot = "head", - level = 100, - }, - { - -- werewolf helmet - itemid = 22062, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- werewolf amulet - itemid = 22060, - type = "equip", - slot = "necklace", - }, - { - -- werewolf amulet - itemid = 22060, - type = "deequip", - slot = "necklace", - }, - { - -- oriental shoes - itemid = 21981, - type = "equip", - slot = "feet", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- oriental shoes - itemid = 21981, - type = "deequip", - slot = "feet", - level = 80, - }, - { - -- sweetheart ring - itemid = 21955, - type = "equip", - slot = "ring", - }, - { - -- sweetheart ring - itemid = 21955, - type = "deequip", - slot = "ring", - }, - { - -- crest of the deep seas - itemid = 21892, - type = "equip", - slot = "head", - level = 80, - }, - { - -- crest of the deep seas - itemid = 21892, - type = "deequip", - slot = "head", - level = 80, - }, - { - -- brandon's wedding ring - itemid = 21745, - type = "equip", - slot = "ring", - }, - { - -- brandon's wedding ring - itemid = 21745, - type = "deequip", - slot = "ring", - }, - { - -- simple arrow - itemid = 21470, - type = "equip", - slot = "ammo", - }, - { - -- simple arrow - itemid = 21470, - type = "deequip", - slot = "ammo", - }, - { - -- war backpack - itemid = 21445, - type = "equip", - slot = "backpack", - }, - { - -- war backpack - itemid = 21445, - type = "deequip", - slot = "backpack", - }, - { - -- the Lion's Heart - itemid = 21439, - type = "equip", - slot = "necklace", - }, - { - -- the Lion's Heart - itemid = 21439, - type = "deequip", - slot = "necklace", - }, - { - -- shopping bag - itemid = 21411, - type = "equip", - slot = "backpack", - }, - { - -- shopping bag - itemid = 21411, - type = "deequip", - slot = "backpack", - }, - { - -- broken wooden shield - itemid = 21401, - type = "equip", - slot = "shield", - }, - { - -- broken wooden shield - itemid = 21401, - type = "deequip", - slot = "shield", - }, - { - -- spellbook of the novice - itemid = 21400, - type = "equip", - slot = "shield", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of the novice - itemid = 21400, - type = "deequip", - slot = "shield", - }, - { - -- the chiller - itemid = 21350, - type = "equip", - slot = "hand", - level = 1, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- the chiller - itemid = 21350, - type = "deequip", - slot = "hand", - level = 1, - }, - { - -- the scorcher - itemid = 21348, - type = "equip", - slot = "hand", - level = 1, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- the scorcher - itemid = 21348, - type = "deequip", - slot = "hand", - level = 1, - }, - { - -- glooth backpack - itemid = 21295, - type = "equip", - slot = "backpack", - }, - { - -- glooth backpack - itemid = 21295, - type = "deequip", - slot = "backpack", - }, - { - -- feedbag - itemid = 21292, - type = "equip", - slot = "backpack", - }, - { - -- feedbag - itemid = 21292, - type = "deequip", - slot = "backpack", - }, - { - -- one hit wonder - itemid = 21219, - type = "equip", - slot = "hand", - }, - { - -- one hit wonder - itemid = 21219, - type = "deequip", - slot = "hand", - }, - { - -- glooth amulet - itemid = 21183, - type = "equip", - slot = "necklace", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glooth amulet - itemid = 21183, - type = "deequip", - slot = "necklace", - level = 75, - }, - { - -- glooth axe - itemid = 21180, - type = "equip", - slot = "hand", - }, - { - -- glooth axe - itemid = 21180, - type = "deequip", - slot = "hand", - }, - { - -- glooth blade - itemid = 21179, - type = "equip", - slot = "hand", - }, - { - -- glooth blade - itemid = 21179, - type = "deequip", - slot = "hand", - }, - { - -- glooth club - itemid = 21178, - type = "equip", - slot = "hand", - }, - { - -- glooth club - itemid = 21178, - type = "deequip", - slot = "hand", - }, - { - -- cowtana - itemid = 21177, - type = "equip", - slot = "hand", - }, - { - -- cowtana - itemid = 21177, - type = "deequip", - slot = "hand", - }, - { - -- execowtioner axe - itemid = 21176, - type = "equip", - slot = "hand", - }, - { - -- execowtioner axe - itemid = 21176, - type = "deequip", - slot = "hand", - }, - { - -- mino shield - itemid = 21175, - type = "equip", - slot = "shield", - }, - { - -- mino shield - itemid = 21175, - type = "deequip", - slot = "shield", - }, - { - -- mino lance - itemid = 21174, - type = "equip", - slot = "hand", - }, - { - -- mino lance - itemid = 21174, - type = "deequip", - slot = "hand", - }, - { - -- moohtant cudgel - itemid = 21173, - type = "equip", - slot = "hand", - }, - { - -- moohtant cudgel - itemid = 21173, - type = "deequip", - slot = "hand", - }, - { - -- glooth whip - itemid = 21172, - type = "equip", - slot = "hand", - }, - { - -- glooth whip - itemid = 21172, - type = "deequip", - slot = "hand", - }, - { - -- metal bat - itemid = 21171, - type = "equip", - slot = "hand", - }, - { - -- metal bat - itemid = 21171, - type = "deequip", - slot = "hand", - }, - { - -- gearwheel chain - itemid = 21170, - type = "equip", - slot = "necklace", - level = 75, - }, - { - -- gearwheel chain - itemid = 21170, - type = "deequip", - slot = "necklace", - level = 75, - }, - { - -- metal spats - itemid = 21169, - type = "equip", - slot = "feet", - level = 50, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- metal spats - itemid = 21169, - type = "deequip", - slot = "feet", - level = 50, - }, - { - -- alloy legs - itemid = 21168, - type = "equip", - slot = "legs", - level = 60, - }, - { - -- alloy legs - itemid = 21168, - type = "deequip", - slot = "legs", - level = 60, - }, - { - -- heat core - itemid = 21167, - type = "equip", - slot = "armor", - }, - { - -- heat core - itemid = 21167, - type = "deequip", - slot = "armor", - }, - { - -- mooh'tah plate - itemid = 21166, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- mooh'tah plate - itemid = 21166, - type = "deequip", - slot = "armor", - }, - { - -- rubber cap - itemid = 21165, - type = "equip", - slot = "head", - level = 70, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- rubber cap - itemid = 21165, - type = "deequip", - slot = "head", - level = 70, - }, - { - -- glooth cape - itemid = 21164, - type = "equip", - slot = "armor", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glooth cape - itemid = 21164, - type = "deequip", - slot = "armor", - level = 40, - }, - { - -- glooth spear - itemid = 21158, - type = "equip", - slot = "hand", - }, - { - -- glooth spear - itemid = 21158, - type = "deequip", - slot = "hand", - }, - { - -- cake backpack - itemid = 20347, - type = "equip", - slot = "backpack", - }, - { - -- cake backpack - itemid = 20347, - type = "deequip", - slot = "backpack", - }, - { - -- unstable ring of ending - itemid = 20209, - type = "equip", - slot = "ring", - }, - { - -- unstable ring of ending - itemid = 20209, - type = "deequip", - slot = "ring", - }, - { - -- broken visor - itemid = 20184, - type = "equip", - slot = "head", - }, - { - -- broken visor - itemid = 20184, - type = "deequip", - slot = "head", - }, - { - -- ring of ending - itemid = 20182, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- ring of ending - itemid = 20182, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- eerie song book - itemid = 20140, - type = "equip", - slot = "shield", - }, - { - -- eerie song book - itemid = 20140, - type = "deequip", - slot = "shield", - }, - { - -- umbral master spellbook - itemid = 20090, - type = "equip", - slot = "shield", - level = 250, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- umbral master spellbook - itemid = 20090, - type = "deequip", - slot = "shield", - level = 250, - }, - { - -- umbral spellbook - itemid = 20089, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- umbral spellbook - itemid = 20089, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- crude umbral spellbook - itemid = 20088, - type = "equip", - slot = "shield", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- crude umbral spellbook - itemid = 20088, - type = "deequip", - slot = "shield", - level = 75, - }, - { - -- umbral master crossbow - itemid = 20087, - type = "equip", - slot = "hand", - }, - { - -- umbral master crossbow - itemid = 20087, - type = "deequip", - slot = "hand", - }, - { - -- umbral crossbow - itemid = 20086, - type = "equip", - slot = "hand", - }, - { - -- umbral crossbow - itemid = 20086, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral crossbow - itemid = 20085, - type = "equip", - slot = "hand", - }, - { - -- crude umbral crossbow - itemid = 20085, - type = "deequip", - slot = "hand", - }, - { - -- umbral master bow - itemid = 20084, - type = "equip", - slot = "hand", - }, - { - -- umbral master bow - itemid = 20084, - type = "deequip", - slot = "hand", - }, - { - -- umbral bow - itemid = 20083, - type = "equip", - slot = "hand", - }, - { - -- umbral bow - itemid = 20083, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral bow - itemid = 20082, - type = "equip", - slot = "hand", - }, - { - -- crude umbral bow - itemid = 20082, - type = "deequip", - slot = "hand", - }, - { - -- umbral master hammer - itemid = 20081, - type = "equip", - slot = "hand", - }, - { - -- umbral master hammer - itemid = 20081, - type = "deequip", - slot = "hand", - }, - { - -- umbral hammer - itemid = 20080, - type = "equip", - slot = "hand", - }, - { - -- umbral hammer - itemid = 20080, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral hammer - itemid = 20079, - type = "equip", - slot = "hand", - }, - { - -- crude umbral hammer - itemid = 20079, - type = "deequip", - slot = "hand", - }, - { - -- umbral master mace - itemid = 20078, - type = "equip", - slot = "hand", - }, - { - -- umbral master mace - itemid = 20078, - type = "deequip", - slot = "hand", - }, - { - -- umbral mace - itemid = 20077, - type = "equip", - slot = "hand", - }, - { - -- umbral mace - itemid = 20077, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral mace - itemid = 20076, - type = "equip", - slot = "hand", - }, - { - -- crude umbral mace - itemid = 20076, - type = "deequip", - slot = "hand", - }, - { - -- umbral master chopper - itemid = 20075, - type = "equip", - slot = "hand", - }, - { - -- umbral master chopper - itemid = 20075, - type = "deequip", - slot = "hand", - }, - { - -- umbral chopper - itemid = 20074, - type = "equip", - slot = "hand", - }, - { - -- umbral chopper - itemid = 20074, - type = "deequip", - slot = "hand", - }, - { - -- guardian halberd - itemid = 20073, - type = "equip", - slot = "hand", - }, - { - -- guardian halberd - itemid = 20073, - type = "deequip", - slot = "hand", - }, - { - -- umbral master axe - itemid = 20072, - type = "equip", - slot = "hand", - }, - { - -- umbral master axe - itemid = 20072, - type = "deequip", - slot = "hand", - }, - { - -- umbral axe - itemid = 20071, - type = "equip", - slot = "hand", - }, - { - -- umbral axe - itemid = 20071, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral axe - itemid = 20070, - type = "equip", - slot = "hand", - }, - { - -- crude umbral axe - itemid = 20070, - type = "deequip", - slot = "hand", - }, - { - -- umbral master slayer - itemid = 20069, - type = "equip", - slot = "hand", - }, - { - -- umbral master slayer - itemid = 20069, - type = "deequip", - slot = "hand", - }, - { - -- umbral slayer - itemid = 20068, - type = "equip", - slot = "hand", - }, - { - -- umbral slayer - itemid = 20068, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral slayer - itemid = 20067, - type = "equip", - slot = "hand", - }, - { - -- crude umbral slayer - itemid = 20067, - type = "deequip", - slot = "hand", - }, - { - -- umbral masterblade - itemid = 20066, - type = "equip", - slot = "hand", - }, - { - -- umbral masterblade - itemid = 20066, - type = "deequip", - slot = "hand", - }, - { - -- umbral blade - itemid = 20065, - type = "equip", - slot = "hand", - }, - { - -- umbral blade - itemid = 20065, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral blade - itemid = 20064, - type = "equip", - slot = "hand", - }, - { - -- crude umbral blade - itemid = 20064, - type = "deequip", - slot = "hand", - }, - { - -- strange good night songs - itemid = 20050, - type = "equip", - slot = "shield", - }, - { - -- strange good night songs - itemid = 20050, - type = "deequip", - slot = "shield", - }, - { - -- furious frock - itemid = 19391, - type = "equip", - slot = "armor", - level = 130, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- furious frock - itemid = 19391, - type = "deequip", - slot = "armor", - level = 130, - }, - { - -- vampire silk slippers - itemid = 19374, - type = "equip", - slot = "feet", - }, - { - -- vampire silk slippers - itemid = 19374, - type = "deequip", - slot = "feet", - }, - { - -- haunted mirror piece - itemid = 19373, - type = "equip", - slot = "shield", - }, - { - -- haunted mirror piece - itemid = 19373, - type = "deequip", - slot = "shield", - }, - { - -- goo shell - itemid = 19372, - type = "equip", - slot = "armor", - }, - { - -- goo shell - itemid = 19372, - type = "deequip", - slot = "armor", - }, - { - -- icy culottes - itemid = 19366, - type = "equip", - slot = "legs", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- icy culottes - itemid = 19366, - type = "deequip", - slot = "legs", - }, - { - -- runic ice shield - itemid = 19363, - type = "equip", - slot = "shield", - }, - { - -- runic ice shield - itemid = 19363, - type = "deequip", - slot = "shield", - }, - { - -- icicle bow - itemid = 19362, - type = "equip", - slot = "hand", - }, - { - -- icicle bow - itemid = 19362, - type = "deequip", - slot = "hand", - }, - { - -- horn - itemid = 19359, - type = "equip", - slot = "ring", - }, - { - -- horn - itemid = 19359, - type = "deequip", - slot = "ring", - }, - { - -- albino plate - itemid = 19358, - type = "equip", - slot = "armor", - }, - { - -- albino plate - itemid = 19358, - type = "deequip", - slot = "armor", - }, - { - -- shrunken head necklace - itemid = 19357, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- shrunken head necklace - itemid = 19357, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- triple bolt crossbow - itemid = 19356, - type = "equip", - slot = "hand", - }, - { - -- triple bolt crossbow - itemid = 19356, - type = "deequip", - slot = "hand", - }, - { - -- pannier backpack - itemid = 19159, - type = "equip", - slot = "backpack", - }, - { - -- pannier backpack - itemid = 19159, - type = "deequip", - slot = "backpack", - }, - { - -- friendship amulet - itemid = 19153, - type = "equip", - slot = "necklace", - }, - { - -- friendship amulet - itemid = 19153, - type = "deequip", - slot = "necklace", - }, - { - -- vampire's signet ring - itemid = 18935, - type = "equip", - slot = "ring", - }, - { - -- vampire's signet ring - itemid = 18935, - type = "deequip", - slot = "ring", - }, - { - -- spiky club - itemid = 17859, - type = "equip", - slot = "hand", - }, - { - -- spiky club - itemid = 17859, - type = "deequip", - slot = "hand", - }, - { - -- helmet of the lost - itemid = 17852, - type = "equip", - slot = "head", - }, - { - -- helmet of the lost - itemid = 17852, - type = "deequip", - slot = "head", - }, - { - -- leather harness - itemid = 17846, - type = "equip", - slot = "armor", - }, - { - -- leather harness - itemid = 17846, - type = "deequip", - slot = "armor", - }, - { - -- buckle - itemid = 17829, - type = "equip", - slot = "armor", - }, - { - -- buckle - itemid = 17829, - type = "deequip", - slot = "armor", - }, - { - -- pair of iron fists - itemid = 17828, - type = "equip", - slot = "hand", - }, - { - -- pair of iron fists - itemid = 17828, - type = "deequip", - slot = "hand", - }, - { - -- swampling club - itemid = 17824, - type = "equip", - slot = "hand", - }, - { - -- swampling club - itemid = 17824, - type = "deequip", - slot = "hand", - }, - { - -- life preserver - itemid = 17813, - type = "equip", - slot = "hand", - }, - { - -- life preserver - itemid = 17813, - type = "deequip", - slot = "hand", - }, - { - -- ratana - itemid = 17812, - type = "equip", - slot = "hand", - }, - { - -- ratana - itemid = 17812, - type = "deequip", - slot = "hand", - }, - { - -- spike shield - itemid = 17810, - type = "equip", - slot = "shield", - }, - { - -- spike shield - itemid = 17810, - type = "deequip", - slot = "shield", - }, - { - -- sorc and druid staff - itemid = 17111, - type = "equip", - slot = "hand", - level = 1, - vocation = { - { "None", true }, - }, - }, - { - -- sorc and druid staff - itemid = 17111, - type = "deequip", - slot = "hand", - level = 1, - }, - { - -- mean paladin spear - itemid = 17110, - type = "equip", - slot = "hand", - }, - { - -- mean paladin spear - itemid = 17110, - type = "deequip", - slot = "hand", - }, - { - -- mean knight sword - itemid = 17109, - type = "equip", - slot = "hand", - }, - { - -- mean knight sword - itemid = 17109, - type = "deequip", - slot = "hand", - }, - { - -- prismatic ring - itemid = 16264, - type = "equip", - slot = "ring", - level = 120, - }, - { - -- prismatic ring - itemid = 16264, - type = "deequip", - slot = "ring", - level = 120, - }, - { - -- shiny blade - itemid = 16175, - type = "equip", - slot = "hand", - }, - { - -- shiny blade - itemid = 16175, - type = "deequip", - slot = "hand", - }, - { - -- mycological bow - itemid = 16164, - type = "equip", - slot = "hand", - }, - { - -- mycological bow - itemid = 16164, - type = "deequip", - slot = "hand", - }, - { - -- crystal crossbow - itemid = 16163, - type = "equip", - slot = "hand", - }, - { - -- crystal crossbow - itemid = 16163, - type = "deequip", - slot = "hand", - }, - { - -- mycological mace - itemid = 16162, - type = "equip", - slot = "hand", - }, - { - -- mycological mace - itemid = 16162, - type = "deequip", - slot = "hand", - }, - { - -- crystalline axe - itemid = 16161, - type = "equip", - slot = "hand", - }, - { - -- crystalline axe - itemid = 16161, - type = "deequip", - slot = "hand", - }, - { - -- crystalline sword - itemid = 16160, - type = "equip", - slot = "hand", - }, - { - -- crystalline sword - itemid = 16160, - type = "deequip", - slot = "hand", - }, - { - -- envenomed arrow - itemid = 16143, - type = "equip", - slot = "ammo", - }, - { - -- envenomed arrow - itemid = 16143, - type = "deequip", - slot = "ammo", - }, - { - -- drill bolt - itemid = 16142, - type = "equip", - slot = "ammo", - }, - { - -- drill bolt - itemid = 16142, - type = "deequip", - slot = "ammo", - }, - { - -- prismatic bolt - itemid = 16141, - type = "equip", - slot = "ammo", - }, - { - -- prismatic bolt - itemid = 16141, - type = "deequip", - slot = "ammo", - }, - { - -- glacial rod - itemid = 16118, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- glacial rod - itemid = 16118, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- muck rod - itemid = 16117, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- muck rod - itemid = 16117, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- prismatic shield - itemid = 16116, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- prismatic shield - itemid = 16116, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- wand of everblazing - itemid = 16115, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of everblazing - itemid = 16115, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- prismatic ring - itemid = 16114, - type = "equip", - slot = "ring", - level = 120, - }, - { - -- prismatic ring - itemid = 16114, - type = "deequip", - slot = "ring", - level = 120, - }, - { - -- prismatic necklace - itemid = 16113, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- prismatic necklace - itemid = 16113, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- prismatic boots - itemid = 16112, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- prismatic boots - itemid = 16112, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- prismatic legs - itemid = 16111, - type = "equip", - slot = "legs", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- prismatic legs - itemid = 16111, - type = "deequip", - slot = "legs", - level = 150, - }, - { - -- prismatic armor - itemid = 16110, - type = "equip", - slot = "armor", - level = 120, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- prismatic armor - itemid = 16110, - type = "deequip", - slot = "armor", - level = 120, - }, - { - -- prismatic helmet - itemid = 16109, - type = "equip", - slot = "head", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- prismatic helmet - itemid = 16109, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- gill necklace - itemid = 16108, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- gill necklace - itemid = 16108, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- spellbook of vigilance - itemid = 16107, - type = "equip", - slot = "shield", - level = 130, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of vigilance - itemid = 16107, - type = "deequip", - slot = "shield", - level = 130, - }, - { - -- gill legs - itemid = 16106, - type = "equip", - slot = "legs", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gill legs - itemid = 16106, - type = "deequip", - slot = "legs", - level = 150, - }, - { - -- gill coat - itemid = 16105, - type = "equip", - slot = "armor", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gill coat - itemid = 16105, - type = "deequip", - slot = "armor", - level = 150, - }, - { - -- gill gugel - itemid = 16104, - type = "equip", - slot = "head", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gill gugel - itemid = 16104, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- crystal backpack - itemid = 16100, - type = "equip", - slot = "backpack", - }, - { - -- crystal backpack - itemid = 16100, - type = "deequip", - slot = "backpack", - }, - { - -- mushroom backpack - itemid = 16099, - type = "equip", - slot = "backpack", - }, - { - -- mushroom backpack - itemid = 16099, - type = "deequip", - slot = "backpack", - }, - { - -- wand of defiance - itemid = 16096, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of defiance - itemid = 16096, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- crystalline arrow - itemid = 15793, - type = "equip", - slot = "ammo", - }, - { - -- crystalline arrow - itemid = 15793, - type = "deequip", - slot = "ammo", - }, - { - -- crystal bolt - itemid = 15792, - type = "equip", - slot = "ammo", - }, - { - -- crystal bolt - itemid = 15792, - type = "deequip", - slot = "ammo", - }, - { - -- spellbook of ancient arcana - itemid = 14769, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of ancient arcana - itemid = 14769, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- thorn spitter - itemid = 14768, - type = "equip", - slot = "hand", - }, - { - -- thorn spitter - itemid = 14768, - type = "deequip", - slot = "hand", - }, - { - -- mathmaster shield - itemid = 14761, - type = "equip", - slot = "shield", - }, - { - -- mathmaster shield - itemid = 14761, - type = "deequip", - slot = "shield", - }, - { - -- mathmaster shield - itemid = 14760, - type = "equip", - slot = "shield", - }, - { - -- mathmaster shield - itemid = 14760, - type = "deequip", - slot = "shield", - }, - { - -- anniversary backpack - itemid = 14674, - type = "equip", - slot = "backpack", - }, - { - -- anniversary backpack - itemid = 14674, - type = "deequip", - slot = "backpack", - }, - { - -- vortex bolt - itemid = 14252, - type = "equip", - slot = "ammo", - }, - { - -- vortex bolt - itemid = 14252, - type = "deequip", - slot = "ammo", - }, - { - -- tarsal arrow - itemid = 14251, - type = "equip", - slot = "ammo", - }, - { - -- tarsal arrow - itemid = 14251, - type = "deequip", - slot = "ammo", - }, - { - -- deepling squelcher - itemid = 14250, - type = "equip", - slot = "hand", - }, - { - -- deepling squelcher - itemid = 14250, - type = "deequip", - slot = "hand", - }, - { - -- buggy backpack - itemid = 14249, - type = "equip", - slot = "backpack", - }, - { - -- buggy backpack - itemid = 14249, - type = "deequip", - slot = "backpack", - }, - { - -- deepling backpack - itemid = 14248, - type = "equip", - slot = "backpack", - }, - { - -- deepling backpack - itemid = 14248, - type = "deequip", - slot = "backpack", - }, - { - -- ornate crossbow - itemid = 14247, - type = "equip", - slot = "hand", - }, - { - -- ornate crossbow - itemid = 14247, - type = "deequip", - slot = "hand", - }, - { - -- hive bow - itemid = 14246, - type = "equip", - slot = "hand", - }, - { - -- hive bow - itemid = 14246, - type = "deequip", - slot = "hand", - }, - { - -- hive scythe - itemid = 14089, - type = "equip", - slot = "hand", - }, - { - -- hive scythe - itemid = 14089, - type = "deequip", - slot = "hand", - }, - { - -- carapace shield - itemid = 14088, - type = "equip", - slot = "shield", - }, - { - -- carapace shield - itemid = 14088, - type = "deequip", - slot = "shield", - }, - { - -- grasshopper legs - itemid = 14087, - type = "equip", - slot = "legs", - level = 75, - }, - { - -- grasshopper legs - itemid = 14087, - type = "deequip", - slot = "legs", - level = 75, - }, - { - -- calopteryx cape - itemid = 14086, - type = "equip", - slot = "armor", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- calopteryx cape - itemid = 14086, - type = "deequip", - slot = "armor", - level = 80, - }, - { - -- guardian axe - itemid = 14043, - type = "equip", - slot = "hand", - }, - { - -- guardian axe - itemid = 14043, - type = "deequip", - slot = "hand", - }, - { - -- warrior's shield - itemid = 14042, - type = "equip", - slot = "shield", - }, - { - -- warrior's shield - itemid = 14042, - type = "deequip", - slot = "shield", - }, - { - -- warrior's axe - itemid = 14040, - type = "equip", - slot = "hand", - }, - { - -- warrior's axe - itemid = 14040, - type = "deequip", - slot = "hand", - }, - { - -- ornate mace - itemid = 14001, - type = "equip", - slot = "hand", - }, - { - -- ornate mace - itemid = 14001, - type = "deequip", - slot = "hand", - }, - { - -- ornate shield - itemid = 14000, - type = "equip", - slot = "shield", - level = 130, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate shield - itemid = 14000, - type = "deequip", - slot = "shield", - level = 130, - }, - { - -- ornate legs - itemid = 13999, - type = "equip", - slot = "legs", - level = 185, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate legs - itemid = 13999, - type = "deequip", - slot = "legs", - level = 185, - }, - { - -- depth scutum - itemid = 13998, - type = "equip", - slot = "shield", - level = 120, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- depth scutum - itemid = 13998, - type = "deequip", - slot = "shield", - level = 120, - }, - { - -- depth calcei - itemid = 13997, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- depth calcei - itemid = 13997, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- depth ocrea - itemid = 13996, - type = "equip", - slot = "legs", - level = 130, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- depth ocrea - itemid = 13996, - type = "deequip", - slot = "legs", - level = 130, - }, - { - -- depth galea - itemid = 13995, - type = "equip", - slot = "head", - level = 150, - }, - { - -- depth galea - itemid = 13995, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- depth lorica - itemid = 13994, - type = "equip", - slot = "armor", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- depth lorica - itemid = 13994, - type = "deequip", - slot = "armor", - level = 150, - }, - { - -- ornate chestplate - itemid = 13993, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate chestplate - itemid = 13993, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- deepling axe - itemid = 13991, - type = "equip", - slot = "hand", - }, - { - -- deepling axe - itemid = 13991, - type = "deequip", - slot = "hand", - }, - { - -- necklace of the deep - itemid = 13990, - type = "equip", - slot = "necklace", - level = 120, - }, - { - -- necklace of the deep - itemid = 13990, - type = "deequip", - slot = "necklace", - level = 120, - }, - { - -- deepling staff - itemid = 13987, - type = "equip", - slot = "hand", - }, - { - -- deepling staff - itemid = 13987, - type = "deequip", - slot = "hand", - }, - { - -- the Epic Wisdom - itemid = 12810, - type = "equip", - slot = "head", - }, - { - -- the Epic Wisdom - itemid = 12810, - type = "deequip", - slot = "head", - }, - { - -- the Epic Wisdom - itemid = 12809, - type = "equip", - slot = "head", - }, - { - -- the Epic Wisdom - itemid = 12809, - type = "deequip", - slot = "head", - }, - { - -- shimmer wand - itemid = 12741, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- shimmer wand - itemid = 12741, - type = "deequip", - slot = "hand", - level = 40, - }, - { - -- broken ring of ending - itemid = 12737, - type = "equip", - slot = "ring", - }, - { - -- broken ring of ending - itemid = 12737, - type = "deequip", - slot = "ring", - }, - { - -- shimmer bow - itemid = 12733, - type = "equip", - slot = "hand", - }, - { - -- shimmer bow - itemid = 12733, - type = "deequip", - slot = "hand", - }, - { - -- shimmer rod - itemid = 12732, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- shimmer rod - itemid = 12732, - type = "deequip", - slot = "hand", - level = 40, - }, - { - -- shimmer sword - itemid = 12731, - type = "equip", - slot = "hand", - }, - { - -- shimmer sword - itemid = 12731, - type = "deequip", - slot = "hand", - }, - { - -- heavy trident - itemid = 12683, - type = "equip", - slot = "hand", - }, - { - -- heavy trident - itemid = 12683, - type = "deequip", - slot = "hand", - }, - { - -- wooden sword - itemid = 12673, - type = "equip", - slot = "hand", - }, - { - -- wooden sword - itemid = 12673, - type = "deequip", - slot = "hand", - }, - { - -- star ring - itemid = 12670, - type = "equip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- star ring - itemid = 12670, - type = "deequip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- star ring - itemid = 12669, - type = "equip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- star ring - itemid = 12669, - type = "deequip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- wand of dimensions - itemid = 12603, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of dimensions - itemid = 12603, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- mage's cap - itemid = 12599, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- mage's cap - itemid = 12599, - type = "deequip", - slot = "head", - }, - { - -- fish tail (equipped) - itemid = 11543, - type = "equip", - slot = "feet", - }, - { - -- fish tail (equipped) - itemid = 11543, - type = "deequip", - slot = "feet", - }, - { - -- golden hyena pendant - itemid = 12543, - type = "equip", - slot = "necklace", - }, - { - -- golden hyena pendant - itemid = 12543, - type = "deequip", - slot = "necklace", - }, - { - -- golden scorpion pendant - itemid = 12542, - type = "equip", - slot = "necklace", - }, - { - -- golden scorpion pendant - itemid = 12542, - type = "deequip", - slot = "necklace", - }, - { - -- old cape - itemid = 11701, - type = "equip", - slot = "armor", - }, - { - -- old cape - itemid = 11701, - type = "deequip", - slot = "armor", - }, - { - -- sedge hat - itemid = 11700, - type = "equip", - slot = "head", - }, - { - -- sedge hat - itemid = 11700, - type = "deequip", - slot = "head", - }, - { - -- loot bag - itemid = 11698, - type = "equip", - slot = "backpack", - }, - { - -- loot bag - itemid = 11698, - type = "deequip", - slot = "backpack", - }, - { - -- blade of corruption - itemid = 11693, - type = "equip", - slot = "hand", - }, - { - -- blade of corruption - itemid = 11693, - type = "deequip", - slot = "hand", - }, - { - -- snake god's sceptre - itemid = 11692, - type = "equip", - slot = "hand", - }, - { - -- snake god's sceptre - itemid = 11692, - type = "deequip", - slot = "hand", - }, - { - -- snake god's wristguard - itemid = 11691, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- snake god's wristguard - itemid = 11691, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- draken boots - itemid = 4033, - type = "equip", - slot = "feet", - level = 80, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- draken boots - itemid = 4033, - type = "deequip", - slot = "feet", - level = 80, - }, - { - -- elite draken helmet - itemid = 11689, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- elite draken helmet - itemid = 11689, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- shield of corruption - itemid = 11688, - type = "equip", - slot = "shield", - level = 80, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- shield of corruption - itemid = 11688, - type = "deequip", - slot = "shield", - level = 80, - }, - { - -- royal scale robe - itemid = 11687, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- royal scale robe - itemid = 11687, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- royal draken mail - itemid = 11686, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- royal draken mail - itemid = 11686, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- cobra crown - itemid = 11674, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- cobra crown - itemid = 11674, - type = "deequip", - slot = "head", - }, - { - -- twiceslicer - itemid = 11657, - type = "equip", - slot = "hand", - }, - { - -- twiceslicer - itemid = 11657, - type = "deequip", - slot = "hand", - }, - { - -- elite draken mail - itemid = 11651, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- elite draken mail - itemid = 11651, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- fish tail (unequipped) - itemid = 11542, - type = "equip", - slot = "feet", - }, - { - -- fish tail (unequipped) - itemid = 11542, - type = "deequip", - slot = "feet", - }, - { - -- ornamented brooch - itemid = 11468, - type = "equip", - slot = "necklace", - }, - { - -- ornamented brooch - itemid = 11468, - type = "deequip", - slot = "necklace", - }, - { - -- lucky clover amulet - itemid = 10476, - type = "equip", - slot = "necklace", - }, - { - -- lucky clover amulet - itemid = 10476, - type = "deequip", - slot = "necklace", - }, - { - -- beetle necklace - itemid = 10457, - type = "equip", - slot = "necklace", - }, - { - -- beetle necklace - itemid = 10457, - type = "deequip", - slot = "necklace", - }, - { - -- jade hat - itemid = 10451, - type = "equip", - slot = "head", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- jade hat - itemid = 10451, - type = "deequip", - slot = "head", - level = 60, - }, - { - -- Zaoan robe - itemid = 10439, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- Zaoan robe - itemid = 10439, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- spellweaver's robe - itemid = 10438, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellweaver's robe - itemid = 10438, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- wailing widow's necklace - itemid = 10412, - type = "equip", - slot = "necklace", - }, - { - -- wailing widow's necklace - itemid = 10412, - type = "deequip", - slot = "necklace", - }, - { - -- Zaoan halberd - itemid = 10406, - type = "equip", - slot = "hand", - }, - { - -- Zaoan halberd - itemid = 10406, - type = "deequip", - slot = "hand", - }, - { - -- twin hooks - itemid = 10392, - type = "equip", - slot = "hand", - }, - { - -- twin hooks - itemid = 10392, - type = "deequip", - slot = "hand", - }, - { - -- drachaku - itemid = 10391, - type = "equip", - slot = "hand", - }, - { - -- drachaku - itemid = 10391, - type = "deequip", - slot = "hand", - }, - { - -- Zaoan sword - itemid = 10390, - type = "equip", - slot = "hand", - }, - { - -- Zaoan sword - itemid = 10390, - type = "deequip", - slot = "hand", - }, - { - -- sai - itemid = 10389, - type = "equip", - slot = "hand", - }, - { - -- sai - itemid = 10389, - type = "deequip", - slot = "hand", - }, - { - -- drakinata - itemid = 10388, - type = "equip", - slot = "hand", - }, - { - -- drakinata - itemid = 10388, - type = "deequip", - slot = "hand", - }, - { - -- Zaoan legs - itemid = 10387, - type = "equip", - slot = "legs", - }, - { - -- Zaoan legs - itemid = 10387, - type = "deequip", - slot = "legs", - }, - { - -- zaoan shoes - itemid = 10386, - type = "equip", - slot = "feet", - }, - { - -- zaoan shoes - itemid = 10386, - type = "deequip", - slot = "feet", - }, - { - -- Zaoan helmet - itemid = 10385, - type = "equip", - slot = "head", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- Zaoan helmet - itemid = 10385, - type = "deequip", - slot = "head", - }, - { - -- Zaoan armor - itemid = 10384, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- Zaoan armor - itemid = 10384, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- santa backpack - itemid = 10346, - type = "equip", - slot = "backpack", - }, - { - -- santa backpack - itemid = 10346, - type = "deequip", - slot = "backpack", - }, - { - -- minotaur backpack - itemid = 10327, - type = "equip", - slot = "backpack", - }, - { - -- minotaur backpack - itemid = 10327, - type = "deequip", - slot = "backpack", - }, - { - -- dragon backpack - itemid = 10326, - type = "equip", - slot = "backpack", - }, - { - -- dragon backpack - itemid = 10326, - type = "deequip", - slot = "backpack", - }, - { - -- expedition bag - itemid = 10325, - type = "equip", - slot = "backpack", - }, - { - -- expedition bag - itemid = 10325, - type = "deequip", - slot = "backpack", - }, - { - -- expedition backpack - itemid = 10324, - type = "equip", - slot = "backpack", - }, - { - -- expedition backpack - itemid = 10324, - type = "deequip", - slot = "backpack", - }, - { - -- guardian boots - itemid = 10323, - type = "equip", - slot = "feet", - level = 70, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- guardian boots - itemid = 10323, - type = "deequip", - slot = "feet", - level = 70, - }, - { - -- heart backpack - itemid = 10202, - type = "equip", - slot = "backpack", - }, - { - -- heart backpack - itemid = 10202, - type = "deequip", - slot = "backpack", - }, - { - -- dragon scale boots - itemid = 10201, - type = "equip", - slot = "feet", - level = 70, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- dragon scale boots - itemid = 10201, - type = "deequip", - slot = "feet", - level = 70, - }, - { - -- crystal boots - itemid = 10200, - type = "equip", - slot = "feet", - level = 70, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crystal boots - itemid = 10200, - type = "deequip", - slot = "feet", - level = 70, - }, - { - -- witch hat - itemid = 9653, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- witch hat - itemid = 9653, - type = "deequip", - slot = "head", - }, - { - -- crown backpack - itemid = 9605, - type = "equip", - slot = "backpack", - }, - { - -- crown backpack - itemid = 9605, - type = "deequip", - slot = "backpack", - }, - { - -- moon backpack - itemid = 9604, - type = "equip", - slot = "backpack", - }, - { - -- moon backpack - itemid = 9604, - type = "deequip", - slot = "backpack", - }, - { - -- orange bag - itemid = 9603, - type = "equip", - slot = "backpack", - }, - { - -- orange bag - itemid = 9603, - type = "deequip", - slot = "backpack", - }, - { - -- orange backpack - itemid = 9602, - type = "equip", - slot = "backpack", - }, - { - -- orange backpack - itemid = 9602, - type = "deequip", - slot = "backpack", - }, - { - -- demon backpack - itemid = 9601, - type = "equip", - slot = "backpack", - }, - { - -- demon backpack - itemid = 9601, - type = "deequip", - slot = "backpack", - }, - { - -- broken wedding ring - itemid = 9593, - type = "equip", - slot = "ring", - }, - { - -- broken wedding ring - itemid = 9593, - type = "deequip", - slot = "ring", - }, - { - -- engraved wedding ring - itemid = 9585, - type = "equip", - slot = "ring", - }, - { - -- engraved wedding ring - itemid = 9585, - type = "deequip", - slot = "ring", - }, - { - -- the shield Nevermourn - itemid = 9447, - type = "equip", - slot = "shield", - }, - { - -- the shield Nevermourn - itemid = 9447, - type = "deequip", - slot = "shield", - }, - { - -- the rain coat - itemid = 9446, - type = "equip", - slot = "armor", - }, - { - -- the rain coat - itemid = 9446, - type = "deequip", - slot = "armor", - }, - { - -- the shield Nevermourn - itemid = 9401, - type = "equip", - slot = "shield", - }, - { - -- the shield Nevermourn - itemid = 9401, - type = "deequip", - slot = "shield", - }, - { - -- the rain coat - itemid = 9400, - type = "equip", - slot = "armor", - }, - { - -- the rain coat - itemid = 9400, - type = "deequip", - slot = "armor", - }, - { - -- mighty helm of green sparks - itemid = 9399, - type = "equip", - slot = "head", - }, - { - -- mighty helm of green sparks - itemid = 9399, - type = "deequip", - slot = "head", - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = "equip", - slot = "hand", - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = "deequip", - slot = "hand", - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9394, - type = "equip", - slot = "ring", - level = 100, - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9394, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9392, - type = "equip", - slot = "ring", - level = 100, - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9392, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- poet's fencing quill - itemid = 9387, - type = "equip", - slot = "hand", - }, - { - -- poet's fencing quill - itemid = 9387, - type = "deequip", - slot = "hand", - }, - { - -- farmer's avenger - itemid = 9386, - type = "equip", - slot = "hand", - }, - { - -- farmer's avenger - itemid = 9386, - type = "deequip", - slot = "hand", - }, - { - -- club of the fury - itemid = 9385, - type = "equip", - slot = "hand", - }, - { - -- club of the fury - itemid = 9385, - type = "deequip", - slot = "hand", - }, - { - -- scythe of the reaper - itemid = 9384, - type = "equip", - slot = "hand", - }, - { - -- scythe of the reaper - itemid = 9384, - type = "deequip", - slot = "hand", - }, - { - -- trousers of the ancients - itemid = 9383, - type = "equip", - slot = "legs", - }, - { - -- trousers of the ancients - itemid = 9383, - type = "deequip", - slot = "legs", - }, - { - -- helmet of nature - itemid = 9382, - type = "equip", - slot = "head", - }, - { - -- helmet of nature - itemid = 9382, - type = "deequip", - slot = "head", - }, - { - -- helmet of ultimate terror - itemid = 9381, - type = "equip", - slot = "head", - }, - { - -- helmet of ultimate terror - itemid = 9381, - type = "deequip", - slot = "head", - }, - { - -- shield of care - itemid = 9380, - type = "equip", - slot = "shield", - }, - { - -- shield of care - itemid = 9380, - type = "deequip", - slot = "shield", - }, - { - -- heavy metal t-shirt - itemid = 9379, - type = "equip", - slot = "armor", - }, - { - -- heavy metal t-shirt - itemid = 9379, - type = "deequip", - slot = "armor", - }, - { - -- musician's bow - itemid = 9378, - type = "equip", - slot = "hand", - }, - { - -- musician's bow - itemid = 9378, - type = "deequip", - slot = "hand", - }, - { - -- shield of the white knight - itemid = 3537, - type = "equip", - slot = "shield", - }, - { - -- shield of the white knight - itemid = 3537, - type = "deequip", - slot = "shield", - }, - { - -- stale bread of ancientness - itemid = 9376, - type = "equip", - slot = "hand", - }, - { - -- stale bread of ancientness - itemid = 9376, - type = "deequip", - slot = "hand", - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = "equip", - slot = "hand", - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = "deequip", - slot = "hand", - }, - { - -- odd hat - itemid = 9374, - type = "equip", - slot = "head", - }, - { - -- odd hat - itemid = 9374, - type = "deequip", - slot = "head", - }, - { - -- glutton's mace - itemid = 9373, - type = "equip", - slot = "hand", - }, - { - -- glutton's mace - itemid = 9373, - type = "deequip", - slot = "hand", - }, - { - -- meat shield - itemid = 9372, - type = "equip", - slot = "shield", - }, - { - -- meat shield - itemid = 9372, - type = "deequip", - slot = "shield", - }, - { - -- shockwave amulet - itemid = 9304, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- shockwave amulet - itemid = 9304, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- leviathan's amulet - itemid = 9303, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- leviathan's amulet - itemid = 9303, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- sacred tree amulet - itemid = 9302, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- sacred tree amulet - itemid = 9302, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- bonfire amulet - itemid = 9301, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- bonfire amulet - itemid = 9301, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- laurel wreath - itemid = 9221, - type = "equip", - slot = "head", - }, - { - -- laurel wreath - itemid = 9221, - type = "deequip", - slot = "head", - }, - { - -- bronze medal - itemid = 9217, - type = "equip", - slot = "necklace", - }, - { - -- bronze medal - itemid = 9217, - type = "deequip", - slot = "necklace", - }, - { - -- silver medal - itemid = 9216, - type = "equip", - slot = "necklace", - }, - { - -- silver medal - itemid = 9216, - type = "deequip", - slot = "necklace", - }, - { - -- gold medal - itemid = 9215, - type = "equip", - slot = "necklace", - }, - { - -- gold medal - itemid = 9215, - type = "deequip", - slot = "necklace", - }, - { - -- grey bag - itemid = 9151, - type = "equip", - slot = "backpack", - }, - { - -- grey bag - itemid = 9151, - type = "deequip", - slot = "backpack", - }, - { - -- batwing hat - itemid = 9103, - type = "equip", - slot = "head", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- batwing hat - itemid = 9103, - type = "deequip", - slot = "head", - level = 50, - }, - { - -- pair firewalker boots - itemid = 9019, - type = "equip", - slot = "feet", - level = 130, - }, - { - -- pair firewalker boots - itemid = 9019, - type = "deequip", - slot = "feet", - level = 130, - }, - { - -- firewalker boots - itemid = 9018, - type = "equip", - slot = "feet", - level = 130, - }, - { - -- firewalker boots - itemid = 9018, - type = "deequip", - slot = "feet", - level = 130, - }, - { - -- coconut shoes - itemid = 9017, - type = "equip", - slot = "feet", - }, - { - -- coconut shoes - itemid = 9017, - type = "deequip", - slot = "feet", - }, - { - -- flower dress - itemid = 9015, - type = "equip", - slot = "armor", - }, - { - -- flower dress - itemid = 9015, - type = "deequip", - slot = "armor", - }, - { - -- leaf legs - itemid = 9014, - type = "equip", - slot = "legs", - }, - { - -- leaf legs - itemid = 9014, - type = "deequip", - slot = "legs", - }, - { - -- flower wreath - itemid = 9013, - type = "equip", - slot = "head", - }, - { - -- flower wreath - itemid = 9013, - type = "deequip", - slot = "head", - }, - { - -- yalahari mask - itemid = 8864, - type = "equip", - slot = "head", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- yalahari mask - itemid = 8864, - type = "deequip", - slot = "head", - level = 80, - }, - { - -- yalahari leg piece - itemid = 8863, - type = "equip", - slot = "legs", - level = 80, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- yalahari leg piece - itemid = 8863, - type = "deequip", - slot = "legs", - level = 80, - }, - { - -- yalahari armor - itemid = 8862, - type = "equip", - slot = "armor", - level = 80, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- yalahari armor - itemid = 8862, - type = "deequip", - slot = "armor", - level = 80, - }, - { - -- brocade bag - itemid = 8861, - type = "equip", - slot = "backpack", - }, - { - -- brocade bag - itemid = 8861, - type = "deequip", - slot = "backpack", - }, - { - -- brocade backpack - itemid = 8860, - type = "equip", - slot = "backpack", - }, - { - -- brocade backpack - itemid = 8860, - type = "deequip", - slot = "backpack", - }, - { - -- golden bag - itemid = 655, - type = "equip", - slot = "backpack", - }, - { - -- golden bag - itemid = 655, - type = "deequip", - slot = "backpack", - }, - { - -- purple bag - itemid = 653, - type = "equip", - slot = "backpack", - }, - { - -- purple bag - itemid = 653, - type = "deequip", - slot = "backpack", - }, - { - -- the calamity - itemid = 8104, - type = "equip", - slot = "hand", - }, - { - -- the calamity - itemid = 8104, - type = "deequip", - slot = "hand", - }, - { - -- the epiphany - itemid = 8103, - type = "equip", - slot = "hand", - }, - { - -- the epiphany - itemid = 8103, - type = "deequip", - slot = "hand", - }, - { - -- emerald sword - itemid = 8102, - type = "equip", - slot = "hand", - }, - { - -- emerald sword - itemid = 8102, - type = "deequip", - slot = "hand", - }, - { - -- the stomper - itemid = 8101, - type = "equip", - slot = "hand", - }, - { - -- the stomper - itemid = 8101, - type = "deequip", - slot = "hand", - }, - { - -- obsidian truncheon - itemid = 8100, - type = "equip", - slot = "hand", - }, - { - -- obsidian truncheon - itemid = 8100, - type = "deequip", - slot = "hand", - }, - { - -- dark trinity mace - itemid = 8099, - type = "equip", - slot = "hand", - }, - { - -- dark trinity mace - itemid = 8099, - type = "deequip", - slot = "hand", - }, - { - -- demonwing axe - itemid = 8098, - type = "equip", - slot = "hand", - }, - { - -- demonwing axe - itemid = 8098, - type = "deequip", - slot = "hand", - }, - { - -- solar axe - itemid = 8097, - type = "equip", - slot = "hand", - }, - { - -- solar axe - itemid = 8097, - type = "deequip", - slot = "hand", - }, - { - -- hellforged axe - itemid = 8096, - type = "equip", - slot = "hand", - }, - { - -- hellforged axe - itemid = 8096, - type = "deequip", - slot = "hand", - }, - { - -- ranger legs - itemid = 8095, - type = "equip", - slot = "legs", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ranger legs - itemid = 8095, - type = "deequip", - slot = "legs", - }, - { - -- wand of voodoo - itemid = 8094, - type = "equip", - slot = "hand", - level = 42, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of voodoo - itemid = 8094, - type = "deequip", - slot = "hand", - level = 42, - }, - { - -- wand of draconia - itemid = 8093, - type = "equip", - slot = "hand", - level = 22, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of draconia - itemid = 8093, - type = "deequip", - slot = "hand", - level = 22, - }, - { - -- wand of starmstorm - itemid = 8092, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of starmstorm - itemid = 8092, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- spellbook of dark mysteries - itemid = 8090, - type = "equip", - slot = "shield", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of dark mysteries - itemid = 8090, - type = "deequip", - slot = "shield", - level = 80, - }, - { - -- springsprout rod - itemid = 8084, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- springsprout rod - itemid = 8084, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- northwind rod - itemid = 8083, - type = "equip", - slot = "hand", - level = 22, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- northwind rod - itemid = 8083, - type = "deequip", - slot = "hand", - level = 22, - }, - { - -- underworld rod - itemid = 8082, - type = "equip", - slot = "hand", - level = 42, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- underworld rod - itemid = 8082, - type = "deequip", - slot = "hand", - level = 42, - }, - { - -- terran rainbow shield - itemid = 8081, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- terran rainbow shield - itemid = 8081, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- sparking rainbow shield - itemid = 8080, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sparking rainbow shield - itemid = 8080, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- icy rainbow shield - itemid = 8079, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy rainbow shield - itemid = 8079, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- fiery rainbow shield - itemid = 8078, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery rainbow shield - itemid = 8078, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- rainbow shield - itemid = 8077, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rainbow shield - itemid = 8077, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- spellscroll of prophecies - itemid = 8076, - type = "equip", - slot = "shield", - level = 70, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellscroll of prophecies - itemid = 8076, - type = "deequip", - slot = "shield", - level = 70, - }, - { - -- spellbook of lost souls - itemid = 8075, - type = "equip", - slot = "shield", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of lost souls - itemid = 8075, - type = "deequip", - slot = "shield", - level = 60, - }, - { - -- spellbook of mind control - itemid = 8074, - type = "equip", - slot = "shield", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of mind control - itemid = 8074, - type = "deequip", - slot = "shield", - level = 50, - }, - { - -- spellbook of warding - itemid = 8073, - type = "equip", - slot = "shield", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of warding - itemid = 8073, - type = "deequip", - slot = "shield", - level = 40, - }, - { - -- spellbook of enlightenment - itemid = 8072, - type = "equip", - slot = "shield", - level = 30, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of enlightenment - itemid = 8072, - type = "deequip", - slot = "shield", - level = 30, - }, - { - -- ethno coat - itemid = 8064, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- ethno coat - itemid = 8064, - type = "deequip", - slot = "armor", - }, - { - -- paladin armor - itemid = 8063, - type = "equip", - slot = "armor", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- paladin armor - itemid = 8063, - type = "deequip", - slot = "armor", - }, - { - -- robe of the underworld - itemid = 8062, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- robe of the underworld - itemid = 8062, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- skullcracker armor - itemid = 8061, - type = "equip", - slot = "armor", - level = 85, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- skullcracker armor - itemid = 8061, - type = "deequip", - slot = "armor", - level = 85, - }, - { - -- master archer's armor - itemid = 8060, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- master archer's armor - itemid = 8060, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- frozen plate - itemid = 8059, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- frozen plate - itemid = 8059, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- molten plate - itemid = 8058, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- molten plate - itemid = 8058, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- divine plate - itemid = 8057, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- divine plate - itemid = 8057, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- oceanborn leviathan armor - itemid = 8056, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- oceanborn leviathan armor - itemid = 8056, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- windborn colossus armor - itemid = 8055, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- windborn colossus armor - itemid = 8055, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- earthborn titan armor - itemid = 8054, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthborn titan armor - itemid = 8054, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- fireborn giant armor - itemid = 8053, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireborn giant armor - itemid = 8053, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- swamplair armor - itemid = 8052, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- swamplair armor - itemid = 8052, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- voltage armor - itemid = 8051, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- voltage armor - itemid = 8051, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- crystalline armor - itemid = 8050, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crystalline armor - itemid = 8050, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- lavos armor - itemid = 8049, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- lavos armor - itemid = 8049, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- girl's dress - itemid = 8048, - type = "equip", - slot = "armor", - }, - { - -- girl's dress - itemid = 8048, - type = "deequip", - slot = "armor", - }, - { - -- tunic - itemid = 8047, - type = "equip", - slot = "armor", - }, - { - -- tunic - itemid = 8047, - type = "deequip", - slot = "armor", - }, - { - -- summer dress - itemid = 8046, - type = "equip", - slot = "armor", - }, - { - -- summer dress - itemid = 8046, - type = "deequip", - slot = "armor", - }, - { - -- hibiscus dress - itemid = 8045, - type = "equip", - slot = "armor", - }, - { - -- hibiscus dress - itemid = 8045, - type = "deequip", - slot = "armor", - }, - { - -- belted cape - itemid = 8044, - type = "equip", - slot = "armor", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- belted cape - itemid = 8044, - type = "deequip", - slot = "armor", - }, - { - -- focus cape - itemid = 8043, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- focus cape - itemid = 8043, - type = "deequip", - slot = "armor", - }, - { - -- spirit cloak - itemid = 8042, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spirit cloak - itemid = 8042, - type = "deequip", - slot = "armor", - }, - { - -- greenwood coat - itemid = 8041, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- greenwood coat - itemid = 8041, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- velvet mantle - itemid = 8040, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- velvet mantle - itemid = 8040, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- dragon robe - itemid = 8039, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- dragon robe - itemid = 8039, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- robe of the ice queen - itemid = 8038, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- robe of the ice queen - itemid = 8038, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- dark lord's cape - itemid = 8037, - type = "equip", - slot = "armor", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- dark lord's cape - itemid = 8037, - type = "deequip", - slot = "armor", - level = 65, - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = "equip", - slot = "hand", - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = "deequip", - slot = "hand", - }, - { - -- silkweaver bow - itemid = 8029, - type = "equip", - slot = "hand", - }, - { - -- silkweaver bow - itemid = 8029, - type = "deequip", - slot = "hand", - }, - { - -- yol's bow - itemid = 8028, - type = "equip", - slot = "hand", - }, - { - -- yol's bow - itemid = 8028, - type = "deequip", - slot = "hand", - }, - { - -- composite hornbow - itemid = 8027, - type = "equip", - slot = "hand", - }, - { - -- composite hornbow - itemid = 8027, - type = "deequip", - slot = "hand", - }, - { - -- warsinger bow - itemid = 8026, - type = "equip", - slot = "hand", - }, - { - -- warsinger bow - itemid = 8026, - type = "deequip", - slot = "hand", - }, - { - -- ironworker - itemid = 8025, - type = "equip", - slot = "hand", - }, - { - -- ironworker - itemid = 8025, - type = "deequip", - slot = "hand", - }, - { - -- devileye - itemid = 8024, - type = "equip", - slot = "hand", - }, - { - -- devileye - itemid = 8024, - type = "deequip", - slot = "hand", - }, - { - -- royal crossbow - itemid = 8023, - type = "equip", - slot = "hand", - }, - { - -- royal crossbow - itemid = 8023, - type = "deequip", - slot = "hand", - }, - { - -- chain bolter - itemid = 8022, - type = "equip", - slot = "hand", - }, - { - -- chain bolter - itemid = 8022, - type = "deequip", - slot = "hand", - }, - { - -- modified crossbow - itemid = 8021, - type = "equip", - slot = "hand", - }, - { - -- modified crossbow - itemid = 8021, - type = "deequip", - slot = "hand", - }, - { - -- witchhunter's coat - itemid = 7993, - type = "equip", - slot = "armor", - level = 50, - }, - { - -- witchhunter's coat - itemid = 7993, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- mage hat - itemid = 7992, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- mage hat - itemid = 7992, - type = "deequip", - slot = "head", - }, - { - -- magician's robe - itemid = 7991, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magician's robe - itemid = 7991, - type = "deequip", - slot = "armor", - }, - { - -- jagged sword - itemid = 7774, - type = "equip", - slot = "hand", - }, - { - -- jagged sword - itemid = 7774, - type = "deequip", - slot = "hand", - }, - { - -- steel axe - itemid = 7773, - type = "equip", - slot = "hand", - }, - { - -- steel axe - itemid = 7773, - type = "deequip", - slot = "hand", - }, - { - -- Jerom's family necklace - itemid = 7754, - type = "equip", - slot = "necklace", - }, - { - -- Jerom's family necklace - itemid = 7754, - type = "deequip", - slot = "necklace", - }, - { - -- Koshei's ancient amulet - itemid = 7532, - type = "equip", - slot = "necklace", - }, - { - -- Koshei's ancient amulet - itemid = 7532, - type = "deequip", - slot = "necklace", - }, - { - -- crimson sword - itemid = 860, - type = "equip", - slot = "hand", - }, - { - -- crimson sword - itemid = 860, - type = "deequip", - slot = "hand", - }, - { - -- shapeshifter ring - itemid = 908, - type = "equip", - slot = "ring", - }, - { - -- shapeshifter ring - itemid = 908, - type = "deequip", - slot = "ring", - }, - { - -- shapeshifter ring - itemid = 907, - type = "equip", - slot = "ring", - }, - { - -- shapeshifter ring - itemid = 904, - type = "deequip", - slot = "ring", - }, - { - -- jester hat - itemid = 894, - type = "equip", - slot = "head", - }, - { - -- jester hat - itemid = 894, - type = "deequip", - slot = "head", - }, - { - -- terra hood - itemid = 830, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra hood - itemid = 830, - type = "deequip", - slot = "head", - }, - { - -- glacier mask - itemid = 829, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier mask - itemid = 829, - type = "deequip", - slot = "head", - }, - { - -- lightning headband - itemid = 828, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning headband - itemid = 828, - type = "deequip", - slot = "head", - }, - { - -- magma monocle - itemid = 827, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma monocle - itemid = 827, - type = "deequip", - slot = "head", - }, - { - -- magma coat - itemid = 826, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma coat - itemid = 826, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- lightning robe - itemid = 825, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning robe - itemid = 825, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- glacier robe - itemid = 824, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier robe - itemid = 824, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- glacier kilt - itemid = 823, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier kilt - itemid = 823, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- lightning legs - itemid = 822, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning legs - itemid = 822, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- magma legs - itemid = 821, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma legs - itemid = 821, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- lightning boots - itemid = 820, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning boots - itemid = 820, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- glacier shoes - itemid = 819, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier shoes - itemid = 819, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- magma boots - itemid = 818, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma boots - itemid = 818, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- magma amulet - itemid = 817, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- magma amulet - itemid = 817, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- lightning pendant - itemid = 816, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- lightning pendant - itemid = 816, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- glacier amulet - itemid = 815, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- glacier amulet - itemid = 815, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- terra amulet - itemid = 814, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- terra amulet - itemid = 814, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- terra boots - itemid = 813, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra boots - itemid = 813, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- terra legs - itemid = 812, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra legs - itemid = 812, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- terra mantle - itemid = 811, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra mantle - itemid = 811, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- energy war hammer - itemid = 810, - type = "equip", - slot = "hand", - }, - { - -- energy war hammer - itemid = 810, - type = "deequip", - slot = "hand", - }, - { - -- energy orcish maul - itemid = 809, - type = "equip", - slot = "hand", - }, - { - -- energy orcish maul - itemid = 809, - type = "deequip", - slot = "hand", - }, - { - -- energy cranial basher - itemid = 808, - type = "equip", - slot = "hand", - }, - { - -- energy cranial basher - itemid = 808, - type = "deequip", - slot = "hand", - }, - { - -- energy crystal mace - itemid = 807, - type = "equip", - slot = "hand", - }, - { - -- energy crystal mace - itemid = 807, - type = "deequip", - slot = "hand", - }, - { - -- energy clerical mace - itemid = 806, - type = "equip", - slot = "hand", - }, - { - -- energy clerical mace - itemid = 806, - type = "deequip", - slot = "hand", - }, - { - -- energy war axe - itemid = 805, - type = "equip", - slot = "hand", - }, - { - -- energy war axe - itemid = 805, - type = "deequip", - slot = "hand", - }, - { - -- energy headchopper - itemid = 804, - type = "equip", - slot = "hand", - }, - { - -- energy headchopper - itemid = 804, - type = "deequip", - slot = "hand", - }, - { - -- energy heroic axe - itemid = 803, - type = "equip", - slot = "hand", - }, - { - -- energy heroic axe - itemid = 803, - type = "deequip", - slot = "hand", - }, - { - -- energy knight axe - itemid = 802, - type = "equip", - slot = "hand", - }, - { - -- energy knight axe - itemid = 802, - type = "deequip", - slot = "hand", - }, - { - -- energy barbarian axe - itemid = 801, - type = "equip", - slot = "hand", - }, - { - -- energy barbarian axe - itemid = 801, - type = "deequip", - slot = "hand", - }, - { - -- energy dragon slayer - itemid = 798, - type = "equip", - slot = "hand", - }, - { - -- energy dragon slayer - itemid = 798, - type = "deequip", - slot = "hand", - }, - { - -- energy blacksteel sword - itemid = 797, - type = "equip", - slot = "hand", - }, - { - -- energy blacksteel sword - itemid = 797, - type = "deequip", - slot = "hand", - }, - { - -- energy mystic blade - itemid = 796, - type = "equip", - slot = "hand", - }, - { - -- energy mystic blade - itemid = 796, - type = "deequip", - slot = "hand", - }, - { - -- energy relic sword - itemid = 795, - type = "equip", - slot = "hand", - }, - { - -- energy relic sword - itemid = 795, - type = "deequip", - slot = "hand", - }, - { - -- energy spike sword - itemid = 794, - type = "equip", - slot = "hand", - }, - { - -- energy spike sword - itemid = 794, - type = "deequip", - slot = "hand", - }, - { - -- earth war hammer - itemid = 793, - type = "equip", - slot = "hand", - }, - { - -- earth war hammer - itemid = 793, - type = "deequip", - slot = "hand", - }, - { - -- earth orcish maul - itemid = 792, - type = "equip", - slot = "hand", - }, - { - -- earth orcish maul - itemid = 792, - type = "deequip", - slot = "hand", - }, - { - -- earth cranial basher - itemid = 791, - type = "equip", - slot = "hand", - }, - { - -- earth cranial basher - itemid = 791, - type = "deequip", - slot = "hand", - }, - { - -- earth crystal mace - itemid = 790, - type = "equip", - slot = "hand", - }, - { - -- earth crystal mace - itemid = 790, - type = "deequip", - slot = "hand", - }, - { - -- earth clerical mace - itemid = 789, - type = "equip", - slot = "hand", - }, - { - -- earth clerical mace - itemid = 789, - type = "deequip", - slot = "hand", - }, - { - -- earth war axe - itemid = 788, - type = "equip", - slot = "hand", - }, - { - -- earth war axe - itemid = 788, - type = "deequip", - slot = "hand", - }, - { - -- earth headchopper - itemid = 787, - type = "equip", - slot = "hand", - }, - { - -- earth headchopper - itemid = 787, - type = "deequip", - slot = "hand", - }, - { - -- earth heroic axe - itemid = 786, - type = "equip", - slot = "hand", - }, - { - -- earth heroic axe - itemid = 786, - type = "deequip", - slot = "hand", - }, - { - -- earth knight axe - itemid = 785, - type = "equip", - slot = "hand", - }, - { - -- earth knight axe - itemid = 785, - type = "deequip", - slot = "hand", - }, - { - -- earth barbarian axe - itemid = 784, - type = "equip", - slot = "hand", - }, - { - -- earth barbarian axe - itemid = 784, - type = "deequip", - slot = "hand", - }, - { - -- earth dragon slayer - itemid = 783, - type = "equip", - slot = "hand", - }, - { - -- earth dragon slayer - itemid = 783, - type = "deequip", - slot = "hand", - }, - { - -- earth blacksteel sword - itemid = 782, - type = "equip", - slot = "hand", - }, - { - -- earth blacksteel sword - itemid = 782, - type = "deequip", - slot = "hand", - }, - { - -- earth mystic blade - itemid = 781, - type = "equip", - slot = "hand", - }, - { - -- earth mystic blade - itemid = 781, - type = "deequip", - slot = "hand", - }, - { - -- earth relic sword - itemid = 780, - type = "equip", - slot = "hand", - }, - { - -- earth relic sword - itemid = 780, - type = "deequip", - slot = "hand", - }, - { - -- earth spike sword - itemid = 779, - type = "equip", - slot = "hand", - }, - { - -- earth spike sword - itemid = 779, - type = "deequip", - slot = "hand", - }, - { - -- earth arrow - itemid = 774, - type = "equip", - slot = "ammo", - }, - { - -- earth arrow - itemid = 774, - type = "deequip", - slot = "ammo", - }, - { - -- flaming arrow - itemid = 763, - type = "equip", - slot = "ammo", - }, - { - -- flaming arrow - itemid = 763, - type = "deequip", - slot = "ammo", - }, - { - -- shiver arrow - itemid = 762, - type = "equip", - slot = "ammo", - }, - { - -- shiver arrow - itemid = 762, - type = "deequip", - slot = "ammo", - }, - { - -- flash arrow - itemid = 761, - type = "equip", - slot = "ammo", - }, - { - -- flash arrow - itemid = 761, - type = "deequip", - slot = "ammo", - }, - { - -- icy war hammer - itemid = 693, - type = "equip", - slot = "hand", - }, - { - -- icy war hammer - itemid = 693, - type = "deequip", - slot = "hand", - }, - { - -- icy orcish maul - itemid = 692, - type = "equip", - slot = "hand", - }, - { - -- icy orcish maul - itemid = 692, - type = "deequip", - slot = "hand", - }, - { - -- icy cranial basher - itemid = 691, - type = "equip", - slot = "hand", - }, - { - -- icy cranial basher - itemid = 691, - type = "deequip", - slot = "hand", - }, - { - -- icy crystal mace - itemid = 690, - type = "equip", - slot = "hand", - }, - { - -- icy crystal mace - itemid = 690, - type = "deequip", - slot = "hand", - }, - { - -- icy clerical mace - itemid = 689, - type = "equip", - slot = "hand", - }, - { - -- icy clerical mace - itemid = 689, - type = "deequip", - slot = "hand", - }, - { - -- icy war axe - itemid = 688, - type = "equip", - slot = "hand", - }, - { - -- icy war axe - itemid = 688, - type = "deequip", - slot = "hand", - }, - { - -- icy headchopper - itemid = 687, - type = "equip", - slot = "hand", - }, - { - -- icy headchopper - itemid = 687, - type = "deequip", - slot = "hand", - }, - { - -- icy heroic axe - itemid = 686, - type = "equip", - slot = "hand", - }, - { - -- icy heroic axe - itemid = 686, - type = "deequip", - slot = "hand", - }, - { - -- icy knight axe - itemid = 685, - type = "equip", - slot = "hand", - }, - { - -- icy knight axe - itemid = 685, - type = "deequip", - slot = "hand", - }, - { - -- icy barbarian axe - itemid = 684, - type = "equip", - slot = "hand", - }, - { - -- icy barbarian axe - itemid = 684, - type = "deequip", - slot = "hand", - }, - { - -- icy dragon slayer - itemid = 683, - type = "equip", - slot = "hand", - }, - { - -- icy dragon slayer - itemid = 683, - type = "deequip", - slot = "hand", - }, - { - -- icy blacksteel sword - itemid = 682, - type = "equip", - slot = "hand", - }, - { - -- icy blacksteel sword - itemid = 682, - type = "deequip", - slot = "hand", - }, - { - -- icy mystic blade - itemid = 681, - type = "equip", - slot = "hand", - }, - { - -- icy mystic blade - itemid = 681, - type = "deequip", - slot = "hand", - }, - { - -- icy relic sword - itemid = 680, - type = "equip", - slot = "hand", - }, - { - -- icy relic sword - itemid = 680, - type = "deequip", - slot = "hand", - }, - { - -- icy spike sword - itemid = 679, - type = "equip", - slot = "hand", - }, - { - -- icy spike sword - itemid = 679, - type = "deequip", - slot = "hand", - }, - { - -- fiery war hammer - itemid = 674, - type = "equip", - slot = "hand", - }, - { - -- fiery war hammer - itemid = 674, - type = "deequip", - slot = "hand", - }, - { - -- fiery orcish maul - itemid = 673, - type = "equip", - slot = "hand", - }, - { - -- fiery orcish maul - itemid = 673, - type = "deequip", - slot = "hand", - }, - { - -- fiery cranial basher - itemid = 672, - type = "equip", - slot = "hand", - }, - { - -- fiery cranial basher - itemid = 672, - type = "deequip", - slot = "hand", - }, - { - -- fiery crystal mace - itemid = 671, - type = "equip", - slot = "hand", - }, - { - -- fiery crystal mace - itemid = 671, - type = "deequip", - slot = "hand", - }, - { - -- fiery clerical mace - itemid = 670, - type = "equip", - slot = "hand", - }, - { - -- fiery clerical mace - itemid = 670, - type = "deequip", - slot = "hand", - }, - { - -- fiery war axe - itemid = 669, - type = "equip", - slot = "hand", - }, - { - -- fiery war axe - itemid = 669, - type = "deequip", - slot = "hand", - }, - { - -- fiery headchopper - itemid = 668, - type = "equip", - slot = "hand", - }, - { - -- fiery headchopper - itemid = 668, - type = "deequip", - slot = "hand", - }, - { - -- fiery heroic axe - itemid = 667, - type = "equip", - slot = "hand", - }, - { - -- fiery heroic axe - itemid = 667, - type = "deequip", - slot = "hand", - }, - { - -- fiery knight axe - itemid = 666, - type = "equip", - slot = "hand", - }, - { - -- fiery knight axe - itemid = 666, - type = "deequip", - slot = "hand", - }, - { - -- fiery barbarian axe - itemid = 665, - type = "equip", - slot = "hand", - }, - { - -- fiery barbarian axe - itemid = 665, - type = "deequip", - slot = "hand", - }, - { - -- fiery dragon slayer - itemid = 664, - type = "equip", - slot = "hand", - }, - { - -- fiery dragon slayer - itemid = 664, - type = "deequip", - slot = "hand", - }, - { - -- fiery blacksteel sword - itemid = 663, - type = "equip", - slot = "hand", - }, - { - -- fiery blacksteel sword - itemid = 663, - type = "deequip", - slot = "hand", - }, - { - -- fiery mystic blade - itemid = 662, - type = "equip", - slot = "hand", - }, - { - -- fiery mystic blade - itemid = 662, - type = "deequip", - slot = "hand", - }, - { - -- fiery relic sword - itemid = 661, - type = "equip", - slot = "hand", - }, - { - -- fiery relic sword - itemid = 661, - type = "deequip", - slot = "hand", - }, - { - -- fiery spike sword - itemid = 660, - type = "equip", - slot = "hand", - }, - { - -- fiery spike sword - itemid = 660, - type = "deequip", - slot = "hand", - }, - { - -- blue legs - itemid = 645, - type = "equip", - slot = "legs", - }, - { - -- blue legs - itemid = 645, - type = "deequip", - slot = "legs", - }, - { - -- suspicious signet ring - itemid = 406, - type = "equip", - slot = "ring", - }, - { - -- suspicious signet ring - itemid = 406, - type = "deequip", - slot = "ring", - }, - { - -- family signet ring - itemid = 349, - type = "equip", - slot = "ring", - }, - { - -- family signet ring - itemid = 349, - type = "deequip", - slot = "ring", - }, - { - -- mining helmet - itemid = 139, - type = "equip", - slot = "head", - }, - { - -- mining helmet - itemid = 139, - type = "deequip", - slot = "head", - }, - { - -- mammoth fur shorts - itemid = 7464, - type = "equip", - slot = "legs", - }, - { - -- mammoth fur shorts - itemid = 7464, - type = "deequip", - slot = "legs", - }, - { - -- mammoth fur cape - itemid = 7463, - type = "equip", - slot = "armor", - }, - { - -- mammoth fur cape - itemid = 7463, - type = "deequip", - slot = "armor", - }, - { - -- ragnir helmet - itemid = 7462, - type = "equip", - slot = "head", - }, - { - -- ragnir helmet - itemid = 7462, - type = "deequip", - slot = "head", - }, - { - -- krimhorn helmet - itemid = 7461, - type = "equip", - slot = "head", - }, - { - -- krimhorn helmet - itemid = 7461, - type = "deequip", - slot = "head", - }, - { - -- norse shield - itemid = 7460, - type = "equip", - slot = "shield", - }, - { - -- norse shield - itemid = 7460, - type = "deequip", - slot = "shield", - }, - { - -- pair of earmuffs - itemid = 7459, - type = "equip", - slot = "head", - }, - { - -- pair of earmuffs - itemid = 7459, - type = "deequip", - slot = "head", - }, - { - -- fur cap - itemid = 7458, - type = "equip", - slot = "head", - }, - { - -- fur cap - itemid = 7458, - type = "deequip", - slot = "head", - }, - { - -- fur boots - itemid = 7457, - type = "equip", - slot = "feet", - }, - { - -- fur boots - itemid = 7457, - type = "deequip", - slot = "feet", - }, - { - -- noble axe - itemid = 7456, - type = "equip", - slot = "hand", - }, - { - -- noble axe - itemid = 7456, - type = "deequip", - slot = "hand", - }, - { - -- mythril axe - itemid = 7455, - type = "equip", - slot = "hand", - }, - { - -- mythril axe - itemid = 7455, - type = "deequip", - slot = "hand", - }, - { - -- glorious axe - itemid = 7454, - type = "equip", - slot = "hand", - }, - { - -- glorious axe - itemid = 7454, - type = "deequip", - slot = "hand", - }, - { - -- executioner - itemid = 7453, - type = "equip", - slot = "hand", - }, - { - -- executioner - itemid = 7453, - type = "deequip", - slot = "hand", - }, - { - -- spiked squelcher - itemid = 7452, - type = "equip", - slot = "hand", - }, - { - -- spiked squelcher - itemid = 7452, - type = "deequip", - slot = "hand", - }, - { - -- shadow sceptre - itemid = 7451, - type = "equip", - slot = "hand", - }, - { - -- shadow sceptre - itemid = 7451, - type = "deequip", - slot = "hand", - }, - { - -- hammer of prophecy - itemid = 7450, - type = "equip", - slot = "hand", - }, - { - -- hammer of prophecy - itemid = 7450, - type = "deequip", - slot = "hand", - }, - { - -- crystal sword - itemid = 7449, - type = "equip", - slot = "hand", - }, - { - -- crystal sword - itemid = 7449, - type = "deequip", - slot = "hand", - }, - { - -- elvish bow - itemid = 7438, - type = "equip", - slot = "hand", - }, - { - -- elvish bow - itemid = 7438, - type = "deequip", - slot = "hand", - }, - { - -- sapphire hammer - itemid = 7437, - type = "equip", - slot = "hand", - }, - { - -- sapphire hammer - itemid = 7437, - type = "deequip", - slot = "hand", - }, - { - -- angelic axe - itemid = 7436, - type = "equip", - slot = "hand", - }, - { - -- angelic axe - itemid = 7436, - type = "deequip", - slot = "hand", - }, - { - -- impaler - itemid = 7435, - type = "equip", - slot = "hand", - }, - { - -- impaler - itemid = 7435, - type = "deequip", - slot = "hand", - }, - { - -- royal axe - itemid = 7434, - type = "equip", - slot = "hand", - }, - { - -- royal axe - itemid = 7434, - type = "deequip", - slot = "hand", - }, - { - -- ravenwing - itemid = 7433, - type = "equip", - slot = "hand", - }, - { - -- ravenwing - itemid = 7433, - type = "deequip", - slot = "hand", - }, - { - -- furry club - itemid = 7432, - type = "equip", - slot = "hand", - }, - { - -- furry club - itemid = 7432, - type = "deequip", - slot = "hand", - }, - { - -- demonbone - itemid = 7431, - type = "equip", - slot = "hand", - }, - { - -- demonbone - itemid = 7431, - type = "deequip", - slot = "hand", - }, - { - -- dragonbone staff - itemid = 7430, - type = "equip", - slot = "hand", - }, - { - -- dragonbone staff - itemid = 7430, - type = "deequip", - slot = "hand", - }, - { - -- blessed sceptre - itemid = 7429, - type = "equip", - slot = "hand", - }, - { - -- blessed sceptre - itemid = 7429, - type = "deequip", - slot = "hand", - }, - { - -- bonebreaker - itemid = 7428, - type = "equip", - slot = "hand", - }, - { - -- bonebreaker - itemid = 7428, - type = "deequip", - slot = "hand", - }, - { - -- chaos mace - itemid = 7427, - type = "equip", - slot = "hand", - }, - { - -- chaos mace - itemid = 7427, - type = "deequip", - slot = "hand", - }, - { - -- amber staff - itemid = 7426, - type = "equip", - slot = "hand", - }, - { - -- amber staff - itemid = 7426, - type = "deequip", - slot = "hand", - }, - { - -- taurus mace - itemid = 7425, - type = "equip", - slot = "hand", - }, - { - -- taurus mace - itemid = 7425, - type = "deequip", - slot = "hand", - }, - { - -- lunar staff - itemid = 7424, - type = "equip", - slot = "hand", - }, - { - -- lunar staff - itemid = 7424, - type = "deequip", - slot = "hand", - }, - { - -- skullcrusher - itemid = 7423, - type = "equip", - slot = "hand", - }, - { - -- skullcrusher - itemid = 7423, - type = "deequip", - slot = "hand", - }, - { - -- jade hammer - itemid = 7422, - type = "equip", - slot = "hand", - }, - { - -- jade hammer - itemid = 7422, - type = "deequip", - slot = "hand", - }, - { - -- onyx flail - itemid = 7421, - type = "equip", - slot = "hand", - }, - { - -- onyx flail - itemid = 7421, - type = "deequip", - slot = "hand", - }, - { - -- reaper's axe - itemid = 7420, - type = "equip", - slot = "hand", - }, - { - -- reaper's axe - itemid = 7420, - type = "deequip", - slot = "hand", - }, - { - -- dreaded cleaver - itemid = 7419, - type = "equip", - slot = "hand", - }, - { - -- dreaded cleaver - itemid = 7419, - type = "deequip", - slot = "hand", - }, - { - -- nightmare blade - itemid = 7418, - type = "equip", - slot = "hand", - }, - { - -- nightmare blade - itemid = 7418, - type = "deequip", - slot = "hand", - }, - { - -- runed sword - itemid = 7417, - type = "equip", - slot = "hand", - }, - { - -- runed sword - itemid = 7417, - type = "deequip", - slot = "hand", - }, - { - -- bloody edge - itemid = 7416, - type = "equip", - slot = "hand", - }, - { - -- bloody edge - itemid = 7416, - type = "deequip", - slot = "hand", - }, - { - -- cranial basher - itemid = 7415, - type = "equip", - slot = "hand", - }, - { - -- cranial basher - itemid = 7415, - type = "deequip", - slot = "hand", - }, - { - -- abyss hammer - itemid = 7414, - type = "equip", - slot = "hand", - }, - { - -- abyss hammer - itemid = 7414, - type = "deequip", - slot = "hand", - }, - { - -- titan axe - itemid = 7413, - type = "equip", - slot = "hand", - }, - { - -- titan axe - itemid = 7413, - type = "deequip", - slot = "hand", - }, - { - -- butcher's axe - itemid = 7412, - type = "equip", - slot = "hand", - }, - { - -- butcher's axe - itemid = 7412, - type = "deequip", - slot = "hand", - }, - { - -- ornamented axe - itemid = 7411, - type = "equip", - slot = "hand", - }, - { - -- ornamented axe - itemid = 7411, - type = "deequip", - slot = "hand", - }, - { - -- queen's sceptre - itemid = 7410, - type = "equip", - slot = "hand", - }, - { - -- queen's sceptre - itemid = 7410, - type = "deequip", - slot = "hand", - }, - { - -- northern star - itemid = 7409, - type = "equip", - slot = "hand", - }, - { - -- northern star - itemid = 7409, - type = "deequip", - slot = "hand", - }, - { - -- wyvern fang - itemid = 7408, - type = "equip", - slot = "hand", - }, - { - -- wyvern fang - itemid = 7408, - type = "deequip", - slot = "hand", - }, - { - -- haunted blade - itemid = 7407, - type = "equip", - slot = "hand", - }, - { - -- haunted blade - itemid = 7407, - type = "deequip", - slot = "hand", - }, - { - -- blacksteel sword - itemid = 7406, - type = "equip", - slot = "hand", - }, - { - -- blacksteel sword - itemid = 7406, - type = "deequip", - slot = "hand", - }, - { - -- havoc blade - itemid = 7405, - type = "equip", - slot = "hand", - }, - { - -- havoc blade - itemid = 7405, - type = "deequip", - slot = "hand", - }, - { - -- assassin dagger - itemid = 7404, - type = "equip", - slot = "hand", - }, - { - -- assassin dagger - itemid = 7404, - type = "deequip", - slot = "hand", - }, - { - -- berserker - itemid = 7403, - type = "equip", - slot = "hand", - }, - { - -- berserker - itemid = 7403, - type = "deequip", - slot = "hand", - }, - { - -- dragon slayer - itemid = 7402, - type = "equip", - slot = "hand", - }, - { - -- dragon slayer - itemid = 7402, - type = "deequip", - slot = "hand", - }, - { - -- orcish maul - itemid = 7392, - type = "equip", - slot = "hand", - }, - { - -- orcish maul - itemid = 7392, - type = "deequip", - slot = "hand", - }, - { - -- thaian sword - itemid = 7391, - type = "equip", - slot = "hand", - }, - { - -- thaian sword - itemid = 7391, - type = "deequip", - slot = "hand", - }, - { - -- the justice seeker - itemid = 7390, - type = "equip", - slot = "hand", - }, - { - -- the justice seeker - itemid = 7390, - type = "deequip", - slot = "hand", - }, - { - -- heroic axe - itemid = 7389, - type = "equip", - slot = "hand", - }, - { - -- heroic axe - itemid = 7389, - type = "deequip", - slot = "hand", - }, - { - -- vile axe - itemid = 7388, - type = "equip", - slot = "hand", - }, - { - -- vile axe - itemid = 7388, - type = "deequip", - slot = "hand", - }, - { - -- diamond sceptre - itemid = 7387, - type = "equip", - slot = "hand", - }, - { - -- diamond sceptre - itemid = 7387, - type = "deequip", - slot = "hand", - }, - { - -- mercenary sword - itemid = 7386, - type = "equip", - slot = "hand", - }, - { - -- mercenary sword - itemid = 7386, - type = "deequip", - slot = "hand", - }, - { - -- crimson sword - itemid = 7385, - type = "equip", - slot = "hand", - }, - { - -- crimson sword - itemid = 7385, - type = "deequip", - slot = "hand", - }, - { - -- mystic blade - itemid = 7384, - type = "equip", - slot = "hand", - }, - { - -- mystic blade - itemid = 7384, - type = "deequip", - slot = "hand", - }, - { - -- relic sword - itemid = 7383, - type = "equip", - slot = "hand", - }, - { - -- relic sword - itemid = 7383, - type = "deequip", - slot = "hand", - }, - { - -- demonrage sword - itemid = 7382, - type = "equip", - slot = "hand", - }, - { - -- demonrage sword - itemid = 7382, - type = "deequip", - slot = "hand", - }, - { - -- mammoth whopper - itemid = 7381, - type = "equip", - slot = "hand", - }, - { - -- mammoth whopper - itemid = 7381, - type = "deequip", - slot = "hand", - }, - { - -- headchopper - itemid = 7380, - type = "equip", - slot = "hand", - }, - { - -- headchopper - itemid = 7380, - type = "deequip", - slot = "hand", - }, - { - -- brutetamer's staff - itemid = 7379, - type = "equip", - slot = "hand", - }, - { - -- brutetamer's staff - itemid = 7379, - type = "deequip", - slot = "hand", - }, - { - -- royal spear - itemid = 7378, - type = "equip", - slot = "hand", - }, - { - -- royal spear - itemid = 7378, - type = "deequip", - slot = "hand", - }, - { - -- assassin star - itemid = 7368, - type = "equip", - slot = "hand", - }, - { - -- assassin star - itemid = 7368, - type = "deequip", - slot = "hand", - }, - { - -- enchanted spear - itemid = 7367, - type = "equip", - slot = "hand", - }, - { - -- enchanted spear - itemid = 7367, - type = "deequip", - slot = "hand", - }, - { - -- onyx arrow - itemid = 7365, - type = "equip", - slot = "ammo", - }, - { - -- onyx arrow - itemid = 7365, - type = "deequip", - slot = "ammo", - }, - { - -- sniper arrow - itemid = 7364, - type = "equip", - slot = "ammo", - }, - { - -- sniper arrow - itemid = 7364, - type = "deequip", - slot = "ammo", - }, - { - -- piercing bolt - itemid = 7363, - type = "equip", - slot = "ammo", - }, - { - -- piercing bolt - itemid = 7363, - type = "deequip", - slot = "ammo", - }, - { - -- flame of life - itemid = 7360, - type = "additem", - }, - { - -- flame of life - itemid = 7359, - type = "stepin", - }, - { - -- fur bag - itemid = 7343, - type = "equip", - slot = "backpack", - }, - { - -- fur bag - itemid = 7343, - type = "deequip", - slot = "backpack", - }, - { - -- fur backpack - itemid = 7342, - type = "equip", - slot = "backpack", - }, - { - -- fur backpack - itemid = 7342, - type = "deequip", - slot = "backpack", - }, - { - -- party hat - itemid = 6578, - type = "equip", - slot = "head", - }, - { - -- party hat - itemid = 6578, - type = "deequip", - slot = "head", - }, - { - -- ruthless axe - itemid = 6553, - type = "equip", - slot = "hand", - }, - { - -- ruthless axe - itemid = 6553, - type = "deequip", - slot = "hand", - }, - { - -- santa hat - itemid = 6531, - type = "equip", - slot = "head", - }, - { - -- santa hat - itemid = 6531, - type = "deequip", - slot = "head", - }, - { - -- infernal bolt - itemid = 6528, - type = "equip", - slot = "ammo", - }, - { - -- infernal bolt - itemid = 6528, - type = "deequip", - slot = "ammo", - }, - { - -- the avenger - itemid = 6527, - type = "equip", - slot = "hand", - }, - { - -- the avenger - itemid = 6527, - type = "deequip", - slot = "hand", - }, - { - -- necromancer shield - itemid = 6432, - type = "equip", - slot = "shield", - }, - { - -- necromancer shield - itemid = 6432, - type = "deequip", - slot = "shield", - }, - { - -- nightmare shield - itemid = 6390, - type = "equip", - slot = "shield", - }, - { - -- nightmare shield - itemid = 6390, - type = "deequip", - slot = "shield", - }, - { - -- death ring - itemid = 6300, - type = "equip", - slot = "ring", - }, - { - -- death ring - itemid = 6300, - type = "deequip", - slot = "ring", - }, - { - -- death ring - itemid = 6299, - type = "equip", - slot = "ring", - }, - { - -- death ring - itemid = 6299, - type = "deequip", - slot = "ring", - }, - { - -- pair of soft boots - itemid = 6529, - type = "equip", - slot = "feet", - level = 10, - }, - { - -- pair of soft boots - itemid = 6529, - type = "deequip", - slot = "feet", - level = 10, - }, - { - -- tortoise shield - itemid = 6131, - type = "equip", - slot = "shield", - }, - { - -- tortoise shield - itemid = 6131, - type = "deequip", - slot = "shield", - }, - { - -- Dragha's spellbook - itemid = 6120, - type = "equip", - slot = "shield", - }, - { - -- Dragha's spellbook - itemid = 6120, - type = "deequip", - slot = "shield", - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = "equip", - slot = "hand", - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = "deequip", - slot = "hand", - }, - { - -- pirate hat - itemid = 6096, - type = "equip", - slot = "head", - }, - { - -- pirate hat - itemid = 6096, - type = "deequip", - slot = "head", - }, - { - -- pirate shirt - itemid = 6095, - type = "equip", - slot = "armor", - }, - { - -- pirate shirt - itemid = 6095, - type = "deequip", - slot = "armor", - }, - { - -- beach bag - itemid = 5950, - type = "equip", - slot = "backpack", - }, - { - -- beach bag - itemid = 5950, - type = "deequip", - slot = "backpack", - }, - { - -- beach backpack - itemid = 5949, - type = "equip", - slot = "backpack", - }, - { - -- beach backpack - itemid = 5949, - type = "deequip", - slot = "backpack", - }, - { - -- pirate bag - itemid = 5927, - type = "equip", - slot = "backpack", - }, - { - -- pirate bag - itemid = 5927, - type = "deequip", - slot = "backpack", - }, - { - -- pirate backpack - itemid = 5926, - type = "equip", - slot = "backpack", - }, - { - -- pirate backpack - itemid = 5926, - type = "deequip", - slot = "backpack", - }, - { - -- pirate knee breeches - itemid = 5918, - type = "equip", - slot = "legs", - }, - { - -- pirate knee breeches - itemid = 5918, - type = "deequip", - slot = "legs", - }, - { - -- bandana - itemid = 5917, - type = "equip", - slot = "head", - }, - { - -- bandana - itemid = 5917, - type = "deequip", - slot = "head", - }, - { - -- Ferumbras' hat - itemid = 5903, - type = "equip", - slot = "head", - }, - { - -- Ferumbras' hat - itemid = 5903, - type = "deequip", - slot = "head", - }, - { - -- arbalest - itemid = 5803, - type = "equip", - slot = "hand", - }, - { - -- arbalest - itemid = 5803, - type = "deequip", - slot = "hand", - }, - { - -- jewelled backpack - itemid = 5801, - type = "equip", - slot = "backpack", - }, - { - -- jewelled backpack - itemid = 5801, - type = "deequip", - slot = "backpack", - }, - { - -- skull helmet - itemid = 5741, - type = "equip", - slot = "head", - }, - { - -- skull helmet - itemid = 5741, - type = "deequip", - slot = "head", - }, - { - -- pirate boots - itemid = 5461, - type = "equip", - slot = "feet", - }, - { - -- pirate boots - itemid = 5461, - type = "deequip", - slot = "feet", - }, - { - -- helmet of the deep - itemid = 5460, - type = "equip", - slot = "head", - }, - { - -- helmet of the deep - itemid = 5460, - type = "deequip", - slot = "head", - }, - { - -- spectral dress - itemid = 4836, - type = "equip", - slot = "armor", - }, - { - -- spectral dress - itemid = 4836, - type = "deequip", - slot = "armor", - }, - { - -- bast skirt - itemid = 3560, - type = "equip", - slot = "legs", - }, - { - -- bast skirt - itemid = 3560, - type = "deequip", - slot = "legs", - }, - { - -- crocodile boots - itemid = 3556, - type = "equip", - slot = "feet", - }, - { - -- crocodile boots - itemid = 3556, - type = "deequip", - slot = "feet", - }, - { - -- salamander shield - itemid = 3445, - type = "equip", - slot = "shield", - }, - { - -- salamander shield - itemid = 3445, - type = "deequip", - slot = "shield", - }, - { - -- sentinel shield - itemid = 3444, - type = "equip", - slot = "shield", - }, - { - -- sentinel shield - itemid = 3444, - type = "deequip", - slot = "shield", - }, - { - -- tusk shield - itemid = 3443, - type = "equip", - slot = "shield", - }, - { - -- tusk shield - itemid = 3443, - type = "deequip", - slot = "shield", - }, - { - -- bonelord helmet - itemid = 3408, - type = "equip", - slot = "head", - }, - { - -- bonelord helmet - itemid = 3408, - type = "deequip", - slot = "head", - }, - { - -- charmer's tiara - itemid = 3407, - type = "equip", - slot = "head", - }, - { - -- charmer's tiara - itemid = 3407, - type = "deequip", - slot = "head", - }, - { - -- feather headdress - itemid = 3406, - type = "equip", - slot = "head", - }, - { - -- feather headdress - itemid = 3406, - type = "deequip", - slot = "head", - }, - { - -- horseman helmet - itemid = 3405, - type = "equip", - slot = "head", - }, - { - -- horseman helmet - itemid = 3405, - type = "deequip", - slot = "head", - }, - { - -- leopard armor - itemid = 3404, - type = "equip", - slot = "armor", - }, - { - -- leopard armor - itemid = 3404, - type = "deequip", - slot = "armor", - }, - { - -- tribal mask - itemid = 3403, - type = "equip", - slot = "head", - }, - { - -- tribal mask - itemid = 3403, - type = "deequip", - slot = "head", - }, - { - -- banana staff - itemid = 3348, - type = "equip", - slot = "hand", - }, - { - -- banana staff - itemid = 3348, - type = "deequip", - slot = "hand", - }, - { - -- hunting spear - itemid = 3347, - type = "equip", - slot = "hand", - }, - { - -- hunting spear - itemid = 3347, - type = "deequip", - slot = "hand", - }, - { - -- ripper lance - itemid = 3346, - type = "equip", - slot = "hand", - }, - { - -- ripper lance - itemid = 3346, - type = "deequip", - slot = "hand", - }, - { - -- templar scytheblade - itemid = 3345, - type = "equip", - slot = "hand", - }, - { - -- templar scytheblade - itemid = 3345, - type = "deequip", - slot = "hand", - }, - { - -- beastslayer axe - itemid = 3344, - type = "equip", - slot = "hand", - }, - { - -- beastslayer axe - itemid = 3344, - type = "deequip", - slot = "hand", - }, - { - -- lich staff - itemid = 3343, - type = "equip", - slot = "hand", - }, - { - -- lich staff - itemid = 3343, - type = "deequip", - slot = "hand", - }, - { - -- old and used backpack - itemid = 3244, - type = "equip", - slot = "backpack", - }, - { - -- old and used backpack - itemid = 3244, - type = "deequip", - slot = "backpack", - }, - { - -- camouflage backpack - itemid = 2872, - type = "equip", - slot = "backpack", - }, - { - -- camouflage backpack - itemid = 2872, - type = "deequip", - slot = "backpack", - }, - { - -- camouflage bag - itemid = 2864, - type = "equip", - slot = "backpack", - }, - { - -- camouflage bag - itemid = 2864, - type = "deequip", - slot = "backpack", - }, - { - -- post officer's hat - itemid = 3576, - type = "equip", - slot = "head", - }, - { - -- post officer's hat - itemid = 3576, - type = "deequip", - slot = "head", - }, - { - -- wood cape - itemid = 3575, - type = "equip", - slot = "head", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- wood cape - itemid = 3575, - type = "deequip", - slot = "head", - }, - { - -- mystic turban - itemid = 3574, - type = "equip", - slot = "head", - }, - { - -- mystic turban - itemid = 3574, - type = "deequip", - slot = "head", - }, - { - -- magician hat - itemid = 3573, - type = "equip", - slot = "head", - }, - { - -- magician hat - itemid = 3573, - type = "deequip", - slot = "head", - }, - { - -- scarf - itemid = 3572, - type = "equip", - slot = "necklace", - }, - { - -- scarf - itemid = 3572, - type = "deequip", - slot = "necklace", - }, - { - -- ranger's cloak - itemid = 3571, - type = "equip", - slot = "armor", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ranger's cloak - itemid = 3571, - type = "deequip", - slot = "armor", - }, - { - -- ball gown - itemid = 3570, - type = "equip", - slot = "armor", - }, - { - -- ball gown - itemid = 3570, - type = "deequip", - slot = "armor", - }, - { - -- white dress - itemid = 3569, - type = "equip", - slot = "armor", - }, - { - -- white dress - itemid = 3569, - type = "deequip", - slot = "armor", - }, - { - -- simple dress - itemid = 3568, - type = "equip", - slot = "armor", - }, - { - -- simple dress - itemid = 3568, - type = "deequip", - slot = "armor", - }, - { - -- blue robe - itemid = 3567, - type = "equip", - slot = "armor", - }, - { - -- blue robe - itemid = 3567, - type = "deequip", - slot = "armor", - }, - { - -- red robe - itemid = 3566, - type = "equip", - slot = "armor", - }, - { - -- red robe - itemid = 3566, - type = "deequip", - slot = "armor", - }, - { - -- cape - itemid = 3565, - type = "equip", - slot = "armor", - }, - { - -- cape - itemid = 3565, - type = "deequip", - slot = "armor", - }, - { - -- red tunic - itemid = 3564, - type = "equip", - slot = "armor", - }, - { - -- red tunic - itemid = 3564, - type = "deequip", - slot = "armor", - }, - { - -- green tunic - itemid = 3563, - type = "equip", - slot = "armor", - }, - { - -- green tunic - itemid = 3563, - type = "deequip", - slot = "armor", - }, - { - -- coat - itemid = 3562, - type = "equip", - slot = "armor", - }, - { - -- coat - itemid = 3562, - type = "deequip", - slot = "armor", - }, - { - -- jacket - itemid = 3561, - type = "equip", - slot = "armor", - }, - { - -- jacket - itemid = 3561, - type = "deequip", - slot = "armor", - }, - { - -- leather legs - itemid = 3559, - type = "equip", - slot = "legs", - }, - { - -- leather legs - itemid = 3559, - type = "deequip", - slot = "legs", - }, - { - -- chain legs - itemid = 3558, - type = "equip", - slot = "legs", - }, - { - -- chain legs - itemid = 3558, - type = "deequip", - slot = "legs", - }, - { - -- plate legs - itemid = 3557, - type = "equip", - slot = "legs", - }, - { - -- plate legs - itemid = 3557, - type = "deequip", - slot = "legs", - }, - { - -- golden boots - itemid = 3555, - type = "equip", - slot = "feet", - }, - { - -- golden boots - itemid = 3555, - type = "deequip", - slot = "feet", - }, - { - -- steel boots - itemid = 3554, - type = "equip", - slot = "feet", - }, - { - -- steel boots - itemid = 3554, - type = "deequip", - slot = "feet", - }, - { - -- bunnyslippers - itemid = 3553, - type = "equip", - slot = "feet", - }, - { - -- bunnyslippers - itemid = 3553, - type = "deequip", - slot = "feet", - }, - { - -- leather boots - itemid = 3552, - type = "equip", - slot = "feet", - }, - { - -- leather boots - itemid = 3552, - type = "deequip", - slot = "feet", - }, - { - -- sandals - itemid = 3551, - type = "equip", - slot = "feet", - }, - { - -- sandals - itemid = 3551, - type = "deequip", - slot = "feet", - }, - { - -- patched boots - itemid = 3550, - type = "equip", - slot = "feet", - }, - { - -- patched boots - itemid = 3550, - type = "deequip", - slot = "feet", - }, - { - -- pair of soft boots - itemid = 3549, - type = "equip", - slot = "feet", - level = 10, - }, - { - -- pair of soft boots - itemid = 3549, - type = "deequip", - slot = "feet", - level = 10, - }, - { - -- scythe - itemid = 3453, - type = "equip", - slot = "hand", - }, - { - -- scythe - itemid = 3453, - type = "deequip", - slot = "hand", - }, - { - -- power bolt - itemid = 3450, - type = "equip", - slot = "ammo", - }, - { - -- power bolt - itemid = 3450, - type = "deequip", - slot = "ammo", - }, - { - -- arrow - itemid = 3447, - type = "equip", - slot = "ammo", - }, - { - -- arrow - itemid = 3447, - type = "deequip", - slot = "ammo", - }, - { - -- bolt - itemid = 3446, - type = "equip", - slot = "ammo", - }, - { - -- bolt - itemid = 3446, - type = "deequip", - slot = "ammo", - }, - { - -- tempest shield - itemid = 3442, - type = "equip", - slot = "shield", - }, - { - -- tempest shield - itemid = 3442, - type = "deequip", - slot = "shield", - }, - { - -- bone shield - itemid = 3441, - type = "equip", - slot = "shield", - }, - { - -- bone shield - itemid = 3441, - type = "deequip", - slot = "shield", - }, - { - -- scarab shield - itemid = 3440, - type = "equip", - slot = "shield", - }, - { - -- scarab shield - itemid = 3440, - type = "deequip", - slot = "shield", - }, - { - -- phoenix shield - itemid = 3439, - type = "equip", - slot = "shield", - }, - { - -- phoenix shield - itemid = 3439, - type = "deequip", - slot = "shield", - }, - { - -- eagle shield - itemid = 3438, - type = "equip", - slot = "shield", - }, - { - -- eagle shield - itemid = 3438, - type = "deequip", - slot = "shield", - }, - { - -- amazon shield - itemid = 3437, - type = "equip", - slot = "shield", - }, - { - -- amazon shield - itemid = 3437, - type = "deequip", - slot = "shield", - }, - { - -- medusa shield - itemid = 3436, - type = "equip", - slot = "shield", - }, - { - -- medusa shield - itemid = 3436, - type = "deequip", - slot = "shield", - }, - { - -- castle shield - itemid = 3435, - type = "equip", - slot = "shield", - }, - { - -- castle shield - itemid = 3435, - type = "deequip", - slot = "shield", - }, - { - -- vampire shield - itemid = 3434, - type = "equip", - slot = "shield", - }, - { - -- vampire shield - itemid = 3434, - type = "deequip", - slot = "shield", - }, - { - -- griffin shield - itemid = 3433, - type = "equip", - slot = "shield", - }, - { - -- griffin shield - itemid = 3433, - type = "deequip", - slot = "shield", - }, - { - -- ancient shield - itemid = 3432, - type = "equip", - slot = "shield", - }, - { - -- ancient shield - itemid = 3432, - type = "deequip", - slot = "shield", - }, - { - -- viking shield - itemid = 3431, - type = "equip", - slot = "shield", - }, - { - -- viking shield - itemid = 3431, - type = "deequip", - slot = "shield", - }, - { - -- copper shield - itemid = 3430, - type = "equip", - slot = "shield", - }, - { - -- copper shield - itemid = 3430, - type = "deequip", - slot = "shield", - }, - { - -- black shield - itemid = 3429, - type = "equip", - slot = "shield", - }, - { - -- black shield - itemid = 3429, - type = "deequip", - slot = "shield", - }, - { - -- tower shield - itemid = 3428, - type = "equip", - slot = "shield", - }, - { - -- tower shield - itemid = 3428, - type = "deequip", - slot = "shield", - }, - { - -- rose shield - itemid = 3427, - type = "equip", - slot = "shield", - }, - { - -- rose shield - itemid = 3427, - type = "deequip", - slot = "shield", - }, - { - -- studded shield - itemid = 3426, - type = "equip", - slot = "shield", - }, - { - -- studded shield - itemid = 3426, - type = "deequip", - slot = "shield", - }, - { - -- dwarven shield - itemid = 3425, - type = "equip", - slot = "shield", - }, - { - -- dwarven shield - itemid = 3425, - type = "deequip", - slot = "shield", - }, - { - -- ornamented shield - itemid = 3424, - type = "equip", - slot = "shield", - }, - { - -- ornamented shield - itemid = 3424, - type = "deequip", - slot = "shield", - }, - { - -- blessed shield - itemid = 3423, - type = "equip", - slot = "shield", - }, - { - -- blessed shield - itemid = 3423, - type = "deequip", - slot = "shield", - }, - { - -- great shield - itemid = 3422, - type = "equip", - slot = "shield", - }, - { - -- great shield - itemid = 3422, - type = "deequip", - slot = "shield", - }, - { - -- dark shield - itemid = 3421, - type = "equip", - slot = "shield", - }, - { - -- dark shield - itemid = 3421, - type = "deequip", - slot = "shield", - }, - { - -- demon shield - itemid = 3420, - type = "equip", - slot = "shield", - }, - { - -- demon shield - itemid = 3420, - type = "deequip", - slot = "shield", - }, - { - -- crown shield - itemid = 3419, - type = "equip", - slot = "shield", - }, - { - -- crown shield - itemid = 3419, - type = "deequip", - slot = "shield", - }, - { - -- bonelord shield - itemid = 3418, - type = "equip", - slot = "shield", - }, - { - -- bonelord shield - itemid = 3418, - type = "deequip", - slot = "shield", - }, - { - -- shield of honour - itemid = 3417, - type = "equip", - slot = "shield", - }, - { - -- shield of honour - itemid = 3417, - type = "deequip", - slot = "shield", - }, - { - -- dragon shield - itemid = 3416, - type = "equip", - slot = "shield", - }, - { - -- dragon shield - itemid = 3416, - type = "deequip", - slot = "shield", - }, - { - -- guardian shield - itemid = 3415, - type = "equip", - slot = "shield", - }, - { - -- guardian shield - itemid = 3415, - type = "deequip", - slot = "shield", - }, - { - -- mastermind shield - itemid = 3414, - type = "equip", - slot = "shield", - }, - { - -- mastermind shield - itemid = 3414, - type = "deequip", - slot = "shield", - }, - { - -- battle shield - itemid = 3413, - type = "equip", - slot = "shield", - }, - { - -- battle shield - itemid = 3413, - type = "deequip", - slot = "shield", - }, - { - -- wooden shield - itemid = 3412, - type = "equip", - slot = "shield", - }, - { - -- wooden shield - itemid = 3412, - type = "deequip", - slot = "shield", - }, - { - -- brass shield - itemid = 3411, - type = "equip", - slot = "shield", - }, - { - -- brass shield - itemid = 3411, - type = "deequip", - slot = "shield", - }, - { - -- plate shield - itemid = 3410, - type = "equip", - slot = "shield", - }, - { - -- plate shield - itemid = 3410, - type = "deequip", - slot = "shield", - }, - { - -- steel shield - itemid = 3409, - type = "equip", - slot = "shield", - }, - { - -- steel shield - itemid = 3409, - type = "deequip", - slot = "shield", - }, - { - -- native armor - itemid = 3402, - type = "equip", - slot = "armor", - }, - { - -- native armor - itemid = 3402, - type = "deequip", - slot = "armor", - }, - { - -- elven legs - itemid = 3401, - type = "equip", - slot = "legs", - }, - { - -- elven legs - itemid = 3401, - type = "deequip", - slot = "legs", - }, - { - -- dragon scale helmet - itemid = 3400, - type = "equip", - slot = "head", - }, - { - -- dragon scale helmet - itemid = 3400, - type = "deequip", - slot = "head", - }, - { - -- elven mail - itemid = 3399, - type = "equip", - slot = "armor", - }, - { - -- elven mail - itemid = 3399, - type = "deequip", - slot = "armor", - }, - { - -- dwarven legs - itemid = 3398, - type = "equip", - slot = "legs", - }, - { - -- dwarven legs - itemid = 3398, - type = "deequip", - slot = "legs", - }, - { - -- dwarven armor - itemid = 3397, - type = "equip", - slot = "armor", - }, - { - -- dwarven armor - itemid = 3397, - type = "deequip", - slot = "armor", - }, - { - -- dwarven helmet - itemid = 3396, - type = "equip", - slot = "head", - }, - { - -- dwarven helmet - itemid = 3396, - type = "deequip", - slot = "head", - }, - { - -- ceremonial mask - itemid = 3395, - type = "equip", - slot = "head", - }, - { - -- ceremonial mask - itemid = 3395, - type = "deequip", - slot = "head", - }, - { - -- amazon armor - itemid = 3394, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- amazon armor - itemid = 3394, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- amazon helmet - itemid = 3393, - type = "equip", - slot = "head", - }, - { - -- amazon helmet - itemid = 3393, - type = "deequip", - slot = "head", - }, - { - -- royal helmet - itemid = 3392, - type = "equip", - slot = "head", - }, - { - -- royal helmet - itemid = 3392, - type = "deequip", - slot = "head", - }, - { - -- crusader helmet - itemid = 3391, - type = "equip", - slot = "head", - }, - { - -- crusader helmet - itemid = 3391, - type = "deequip", - slot = "head", - }, - { - -- horned helmet - itemid = 3390, - type = "equip", - slot = "head", - }, - { - -- horned helmet - itemid = 3390, - type = "deequip", - slot = "head", - }, - { - -- demon legs - itemid = 3389, - type = "equip", - slot = "legs", - }, - { - -- demon legs - itemid = 3389, - type = "deequip", - slot = "legs", - }, - { - -- demon armor - itemid = 3388, - type = "equip", - slot = "armor", - }, - { - -- demon armor - itemid = 3388, - type = "deequip", - slot = "armor", - }, - { - -- demon helmet - itemid = 3387, - type = "equip", - slot = "head", - }, - { - -- demon helmet - itemid = 3387, - type = "deequip", - slot = "head", - }, - { - -- dragon scale mail - itemid = 3386, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- dragon scale mail - itemid = 3386, - type = "deequip", - slot = "armor", - }, - { - -- crown helmet - itemid = 3385, - type = "equip", - slot = "head", - }, - { - -- crown helmet - itemid = 3385, - type = "deequip", - slot = "head", - }, - { - -- dark helmet - itemid = 3384, - type = "equip", - slot = "head", - }, - { - -- dark helmet - itemid = 3384, - type = "deequip", - slot = "head", - }, - { - -- dark armor - itemid = 3383, - type = "equip", - slot = "armor", - }, - { - -- dark armor - itemid = 3383, - type = "deequip", - slot = "armor", - }, - { - -- crown legs - itemid = 3382, - type = "equip", - slot = "legs", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crown legs - itemid = 3382, - type = "deequip", - slot = "legs", - }, - { - -- crown armor - itemid = 3381, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crown armor - itemid = 3381, - type = "deequip", - slot = "armor", - }, - { - -- noble armor - itemid = 3380, - type = "equip", - slot = "armor", - }, - { - -- noble armor - itemid = 3380, - type = "deequip", - slot = "armor", - }, - { - -- doublet - itemid = 3379, - type = "equip", - slot = "armor", - }, - { - -- doublet - itemid = 3379, - type = "deequip", - slot = "armor", - }, - { - -- studded armor - itemid = 3378, - type = "equip", - slot = "armor", - }, - { - -- studded armor - itemid = 3378, - type = "deequip", - slot = "armor", - }, - { - -- scale armor - itemid = 3377, - type = "equip", - slot = "armor", - }, - { - -- scale armor - itemid = 3377, - type = "deequip", - slot = "armor", - }, - { - -- studded helmet - itemid = 3376, - type = "equip", - slot = "head", - }, - { - -- studded helmet - itemid = 3376, - type = "deequip", - slot = "head", - }, - { - -- soldier helmet - itemid = 3375, - type = "equip", - slot = "head", - }, - { - -- soldier helmet - itemid = 3375, - type = "deequip", - slot = "head", - }, - { - -- legion helmet - itemid = 3374, - type = "equip", - slot = "head", - }, - { - -- legion helmet - itemid = 3374, - type = "deequip", - slot = "head", - }, - { - -- strange helmet - itemid = 3373, - type = "equip", - slot = "head", - }, - { - -- strange helmet - itemid = 3373, - type = "deequip", - slot = "head", - }, - { - -- brass legs - itemid = 3372, - type = "equip", - slot = "legs", - }, - { - -- brass legs - itemid = 3372, - type = "deequip", - slot = "legs", - }, - { - -- knight legs - itemid = 3371, - type = "equip", - slot = "legs", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- knight legs - itemid = 3371, - type = "deequip", - slot = "legs", - }, - { - -- knight armor - itemid = 3370, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- knight armor - itemid = 3370, - type = "deequip", - slot = "armor", - }, - { - -- warrior helmet - itemid = 3369, - type = "equip", - slot = "head", - }, - { - -- warrior helmet - itemid = 3369, - type = "deequip", - slot = "head", - }, - { - -- winged helmet - itemid = 3368, - type = "equip", - slot = "head", - }, - { - -- winged helmet - itemid = 3368, - type = "deequip", - slot = "head", - }, - { - -- viking helmet - itemid = 3367, - type = "equip", - slot = "head", - }, - { - -- viking helmet - itemid = 3367, - type = "deequip", - slot = "head", - }, - { - -- magic plate armor - itemid = 3366, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- magic plate armor - itemid = 3366, - type = "deequip", - slot = "armor", - }, - { - -- golden helmet - itemid = 3365, - type = "equip", - slot = "head", - }, - { - -- golden helmet - itemid = 3365, - type = "deequip", - slot = "head", - }, - { - -- golden legs - itemid = 3364, - type = "equip", - slot = "legs", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- golden legs - itemid = 3364, - type = "deequip", - slot = "legs", - }, - { - -- dragon scale legs - itemid = 3363, - type = "equip", - slot = "legs", - }, - { - -- dragon scale legs - itemid = 3363, - type = "deequip", - slot = "legs", - }, - { - -- studded legs - itemid = 3362, - type = "equip", - slot = "legs", - }, - { - -- studded legs - itemid = 3362, - type = "deequip", - slot = "legs", - }, - { - -- leather armor - itemid = 3361, - type = "equip", - slot = "armor", - }, - { - -- leather armor - itemid = 3361, - type = "deequip", - slot = "armor", - }, - { - -- golden armor - itemid = 3360, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- golden armor - itemid = 3360, - type = "deequip", - slot = "armor", - }, - { - -- brass armor - itemid = 3359, - type = "equip", - slot = "armor", - }, - { - -- brass armor - itemid = 3359, - type = "deequip", - slot = "armor", - }, - { - -- chain armor - itemid = 3358, - type = "equip", - slot = "armor", - }, - { - -- chain armor - itemid = 3358, - type = "deequip", - slot = "armor", - }, - { - -- plate armor - itemid = 3357, - type = "equip", - slot = "armor", - }, - { - -- plate armor - itemid = 3357, - type = "deequip", - slot = "armor", - }, - { - -- devil helmet - itemid = 3356, - type = "equip", - slot = "head", - }, - { - -- devil helmet - itemid = 3356, - type = "deequip", - slot = "head", - }, - { - -- leather helmet - itemid = 3355, - type = "equip", - slot = "head", - }, - { - -- leather helmet - itemid = 3355, - type = "deequip", - slot = "head", - }, - { - -- brass helmet - itemid = 3354, - type = "equip", - slot = "head", - }, - { - -- brass helmet - itemid = 3354, - type = "deequip", - slot = "head", - }, - { - -- iron helmet - itemid = 3353, - type = "equip", - slot = "head", - }, - { - -- iron helmet - itemid = 3353, - type = "deequip", - slot = "head", - }, - { - -- chain helmet - itemid = 3352, - type = "equip", - slot = "head", - }, - { - -- chain helmet - itemid = 3352, - type = "deequip", - slot = "head", - }, - { - -- steel helmet - itemid = 3351, - type = "equip", - slot = "head", - }, - { - -- steel helmet - itemid = 3351, - type = "deequip", - slot = "head", - }, - { - -- bow - itemid = 3350, - type = "equip", - slot = "hand", - }, - { - -- bow - itemid = 3350, - type = "deequip", - slot = "hand", - }, - { - -- crossbow - itemid = 3349, - type = "equip", - slot = "hand", - }, - { - -- crossbow - itemid = 3349, - type = "deequip", - slot = "hand", - }, - { - -- war axe - itemid = 3342, - type = "equip", - slot = "hand", - }, - { - -- war axe - itemid = 3342, - type = "deequip", - slot = "hand", - }, - { - -- arcane staff - itemid = 3341, - type = "equip", - slot = "hand", - }, - { - -- arcane staff - itemid = 3341, - type = "deequip", - slot = "hand", - }, - { - -- heavy mace - itemid = 3340, - type = "equip", - slot = "hand", - }, - { - -- heavy mace - itemid = 3340, - type = "deequip", - slot = "hand", - }, - { - -- djinn blade - itemid = 3339, - type = "equip", - slot = "hand", - }, - { - -- djinn blade - itemid = 3339, - type = "deequip", - slot = "hand", - }, - { - -- bone sword - itemid = 3338, - type = "equip", - slot = "hand", - }, - { - -- bone sword - itemid = 3338, - type = "deequip", - slot = "hand", - }, - { - -- bone club - itemid = 3337, - type = "equip", - slot = "hand", - }, - { - -- bone club - itemid = 3337, - type = "deequip", - slot = "hand", - }, - { - -- studded club - itemid = 3336, - type = "equip", - slot = "hand", - }, - { - -- studded club - itemid = 3336, - type = "deequip", - slot = "hand", - }, - { - -- twin axe - itemid = 3335, - type = "equip", - slot = "hand", - }, - { - -- twin axe - itemid = 3335, - type = "deequip", - slot = "hand", - }, - { - -- pharaoh sword - itemid = 3334, - type = "equip", - slot = "hand", - }, - { - -- pharaoh sword - itemid = 3334, - type = "deequip", - slot = "hand", - }, - { - -- crystal mace - itemid = 3333, - type = "equip", - slot = "hand", - }, - { - -- crystal mace - itemid = 3333, - type = "deequip", - slot = "hand", - }, - { - -- hammer of wrath - itemid = 3332, - type = "equip", - slot = "hand", - }, - { - -- hammer of wrath - itemid = 3332, - type = "deequip", - slot = "hand", - }, - { - -- ravager's axe - itemid = 3331, - type = "equip", - slot = "hand", - }, - { - -- ravager's axe - itemid = 3331, - type = "deequip", - slot = "hand", - }, - { - -- heavy machete - itemid = 3330, - type = "equip", - slot = "hand", - }, - { - -- heavy machete - itemid = 3330, - type = "deequip", - slot = "hand", - }, - { - -- daramian axe - itemid = 3329, - type = "equip", - slot = "hand", - }, - { - -- daramian axe - itemid = 3329, - type = "deequip", - slot = "hand", - }, - { - -- daramian waraxe - itemid = 3328, - type = "equip", - slot = "hand", - }, - { - -- daramian waraxe - itemid = 3328, - type = "deequip", - slot = "hand", - }, - { - -- daramian mace - itemid = 3327, - type = "equip", - slot = "hand", - }, - { - -- daramian mace - itemid = 3327, - type = "deequip", - slot = "hand", - }, - { - -- epee - itemid = 3326, - type = "equip", - slot = "hand", - }, - { - -- epee - itemid = 3326, - type = "deequip", - slot = "hand", - }, - { - -- light mace - itemid = 3325, - type = "equip", - slot = "hand", - }, - { - -- light mace - itemid = 3325, - type = "deequip", - slot = "hand", - }, - { - -- skull staff - itemid = 3324, - type = "equip", - slot = "hand", - }, - { - -- skull staff - itemid = 3324, - type = "deequip", - slot = "hand", - }, - { - -- dwarven axe - itemid = 3323, - type = "equip", - slot = "hand", - }, - { - -- dwarven axe - itemid = 3323, - type = "deequip", - slot = "hand", - }, - { - -- dragon hammer - itemid = 3322, - type = "equip", - slot = "hand", - }, - { - -- dragon hammer - itemid = 3322, - type = "deequip", - slot = "hand", - }, - { - -- enchanted staff - itemid = 3321, - type = "equip", - slot = "hand", - }, - { - -- enchanted staff - itemid = 3321, - type = "deequip", - slot = "hand", - }, - { - -- fire axe - itemid = 3320, - type = "equip", - slot = "hand", - }, - { - -- fire axe - itemid = 3320, - type = "deequip", - slot = "hand", - }, - { - -- stonecutter axe - itemid = 3319, - type = "equip", - slot = "hand", - }, - { - -- stonecutter axe - itemid = 3319, - type = "deequip", - slot = "hand", - }, - { - -- knight axe - itemid = 3318, - type = "equip", - slot = "hand", - }, - { - -- knight axe - itemid = 3318, - type = "deequip", - slot = "hand", - }, - { - -- barbarian axe - itemid = 3317, - type = "equip", - slot = "hand", - }, - { - -- barbarian axe - itemid = 3317, - type = "deequip", - slot = "hand", - }, - { - -- orcish axe - itemid = 3316, - type = "equip", - slot = "hand", - }, - { - -- orcish axe - itemid = 3316, - type = "deequip", - slot = "hand", - }, - { - -- guardian halberd - itemid = 3315, - type = "equip", - slot = "hand", - }, - { - -- guardian halberd - itemid = 3315, - type = "deequip", - slot = "hand", - }, - { - -- naginata - itemid = 3314, - type = "equip", - slot = "hand", - }, - { - -- naginata - itemid = 3314, - type = "deequip", - slot = "hand", - }, - { - -- obsidian lance - itemid = 3313, - type = "equip", - slot = "hand", - }, - { - -- obsidian lance - itemid = 3313, - type = "deequip", - slot = "hand", - }, - { - -- silver mace - itemid = 3312, - type = "equip", - slot = "hand", - }, - { - -- silver mace - itemid = 3312, - type = "deequip", - slot = "hand", - }, - { - -- clerical mace - itemid = 3311, - type = "equip", - slot = "hand", - }, - { - -- clerical mace - itemid = 3311, - type = "deequip", - slot = "hand", - }, - { - -- iron hammer - itemid = 3310, - type = "equip", - slot = "hand", - }, - { - -- iron hammer - itemid = 3310, - type = "deequip", - slot = "hand", - }, - { - -- thunder hammer - itemid = 3309, - type = "equip", - slot = "hand", - }, - { - -- thunder hammer - itemid = 3309, - type = "deequip", - slot = "hand", - }, - { - -- machete - itemid = 3308, - type = "equip", - slot = "hand", - }, - { - -- machete - itemid = 3308, - type = "deequip", - slot = "hand", - }, - { - -- scimitar - itemid = 3307, - type = "equip", - slot = "hand", - }, - { - -- scimitar - itemid = 3307, - type = "deequip", - slot = "hand", - }, - { - -- golden sickle - itemid = 3306, - type = "equip", - slot = "hand", - }, - { - -- golden sickle - itemid = 3306, - type = "deequip", - slot = "hand", - }, - { - -- battle hammer - itemid = 3305, - type = "equip", - slot = "hand", - }, - { - -- battle hammer - itemid = 3305, - type = "deequip", - slot = "hand", - }, - { - -- crowbar - itemid = 3304, - type = "equip", - slot = "hand", - }, - { - -- crowbar - itemid = 3304, - type = "deequip", - slot = "hand", - }, - { - -- great axe - itemid = 3303, - type = "equip", - slot = "hand", - }, - { - -- great axe - itemid = 3303, - type = "deequip", - slot = "hand", - }, - { - -- dragon lance - itemid = 3302, - type = "equip", - slot = "hand", - }, - { - -- dragon lance - itemid = 3302, - type = "deequip", - slot = "hand", - }, - { - -- broadsword - itemid = 3301, - type = "equip", - slot = "hand", - }, - { - -- broadsword - itemid = 3301, - type = "deequip", - slot = "hand", - }, - { - -- katana - itemid = 3300, - type = "equip", - slot = "hand", - }, - { - -- katana - itemid = 3300, - type = "deequip", - slot = "hand", - }, - { - -- poison dagger - itemid = 3299, - type = "equip", - slot = "hand", - }, - { - -- poison dagger - itemid = 3299, - type = "deequip", - slot = "hand", - }, - { - -- throwing knife - itemid = 3298, - type = "equip", - slot = "hand", - }, - { - -- throwing knife - itemid = 3298, - type = "deequip", - slot = "hand", - }, - { - -- serpent sword - itemid = 3297, - type = "equip", - slot = "hand", - }, - { - -- serpent sword - itemid = 3297, - type = "deequip", - slot = "hand", - }, - { - -- warlord sword - itemid = 3296, - type = "equip", - slot = "hand", - }, - { - -- warlord sword - itemid = 3296, - type = "deequip", - slot = "hand", - }, - { - -- bright sword - itemid = 3295, - type = "equip", - slot = "hand", - }, - { - -- bright sword - itemid = 3295, - type = "deequip", - slot = "hand", - }, - { - -- short sword - itemid = 3294, - type = "equip", - slot = "hand", - }, - { - -- short sword - itemid = 3294, - type = "deequip", - slot = "hand", - }, - { - -- sickle - itemid = 3293, - type = "equip", - slot = "hand", - }, - { - -- sickle - itemid = 3293, - type = "deequip", - slot = "hand", - }, - { - -- combat knife - itemid = 3292, - type = "equip", - slot = "hand", - }, - { - -- combat knife - itemid = 3292, - type = "deequip", - slot = "hand", - }, - { - -- knife - itemid = 3291, - type = "equip", - slot = "hand", - }, - { - -- knife - itemid = 3291, - type = "deequip", - slot = "hand", - }, - { - -- silver dagger - itemid = 3290, - type = "equip", - slot = "hand", - }, - { - -- silver dagger - itemid = 3290, - type = "deequip", - slot = "hand", - }, - { - -- staff - itemid = 3289, - type = "equip", - slot = "hand", - }, - { - -- staff - itemid = 3289, - type = "deequip", - slot = "hand", - }, - { - -- magic sword - itemid = 3288, - type = "equip", - slot = "hand", - }, - { - -- magic sword - itemid = 3288, - type = "deequip", - slot = "hand", - }, - { - -- throwing star - itemid = 3287, - type = "equip", - slot = "hand", - }, - { - -- throwing star - itemid = 3287, - type = "deequip", - slot = "hand", - }, - { - -- mace - itemid = 3286, - type = "equip", - slot = "hand", - }, - { - -- mace - itemid = 3286, - type = "deequip", - slot = "hand", - }, - { - -- longsword - itemid = 3285, - type = "equip", - slot = "hand", - }, - { - -- longsword - itemid = 3285, - type = "deequip", - slot = "hand", - }, - { - -- ice rapier - itemid = 3284, - type = "equip", - slot = "hand", - }, - { - -- ice rapier - itemid = 3284, - type = "deequip", - slot = "hand", - }, - { - -- carlin sword - itemid = 3283, - type = "equip", - slot = "hand", - }, - { - -- carlin sword - itemid = 3283, - type = "deequip", - slot = "hand", - }, - { - -- morning star - itemid = 3282, - type = "equip", - slot = "hand", - }, - { - -- morning star - itemid = 3282, - type = "deequip", - slot = "hand", - }, - { - -- giant sword - itemid = 3281, - type = "equip", - slot = "hand", - }, - { - -- giant sword - itemid = 3281, - type = "deequip", - slot = "hand", - }, - { - -- fire sword - itemid = 3280, - type = "equip", - slot = "hand", - }, - { - -- fire sword - itemid = 3280, - type = "deequip", - slot = "hand", - }, - { - -- war hammer - itemid = 3279, - type = "equip", - slot = "hand", - }, - { - -- war hammer - itemid = 3279, - type = "deequip", - slot = "hand", - }, - { - -- magic longsword - itemid = 3278, - type = "equip", - slot = "hand", - }, - { - -- magic longsword - itemid = 3278, - type = "deequip", - slot = "hand", - }, - { - -- spear - itemid = 3277, - type = "equip", - slot = "hand", - }, - { - -- spear - itemid = 3277, - type = "deequip", - slot = "hand", - }, - { - -- hatchet - itemid = 3276, - type = "equip", - slot = "hand", - }, - { - -- hatchet - itemid = 3276, - type = "deequip", - slot = "hand", - }, - { - -- double axe - itemid = 3275, - type = "equip", - slot = "hand", - }, - { - -- double axe - itemid = 3275, - type = "deequip", - slot = "hand", - }, - { - -- axe - itemid = 3274, - type = "equip", - slot = "hand", - }, - { - -- axe - itemid = 3274, - type = "deequip", - slot = "hand", - }, - { - -- sabre - itemid = 3273, - type = "equip", - slot = "hand", - }, - { - -- sabre - itemid = 3273, - type = "deequip", - slot = "hand", - }, - { - -- rapier - itemid = 3272, - type = "equip", - slot = "hand", - }, - { - -- rapier - itemid = 3272, - type = "deequip", - slot = "hand", - }, - { - -- spike sword - itemid = 3271, - type = "equip", - slot = "hand", - }, - { - -- spike sword - itemid = 3271, - type = "deequip", - slot = "hand", - }, - { - -- club - itemid = 3270, - type = "equip", - slot = "hand", - }, - { - -- club - itemid = 3270, - type = "deequip", - slot = "hand", - }, - { - -- halberd - itemid = 3269, - type = "equip", - slot = "hand", - }, - { - -- halberd - itemid = 3269, - type = "deequip", - slot = "hand", - }, - { - -- hand axe - itemid = 3268, - type = "equip", - slot = "hand", - }, - { - -- hand axe - itemid = 3268, - type = "deequip", - slot = "hand", - }, - { - -- dagger - itemid = 3267, - type = "equip", - slot = "hand", - }, - { - -- dagger - itemid = 3267, - type = "deequip", - slot = "hand", - }, - { - -- battle axe - itemid = 3266, - type = "equip", - slot = "hand", - }, - { - -- battle axe - itemid = 3266, - type = "deequip", - slot = "hand", - }, - { - -- two handed sword - itemid = 3265, - type = "equip", - slot = "hand", - }, - { - -- two handed sword - itemid = 3265, - type = "deequip", - slot = "hand", - }, - { - -- sword - itemid = 3264, - type = "equip", - slot = "hand", - }, - { - -- sword - itemid = 3264, - type = "deequip", - slot = "hand", - }, - { - -- backpack of holding - itemid = 3253, - type = "equip", - slot = "backpack", - }, - { - -- backpack of holding - itemid = 3253, - type = "deequip", - slot = "backpack", - }, - { - -- boots of waterwalking - itemid = 3246, - type = "equip", - slot = "feet", - }, - { - -- boots of waterwalking - itemid = 3246, - type = "deequip", - slot = "feet", - }, - { - -- ring of wishes - itemid = 3245, - type = "equip", - slot = "ring", - }, - { - -- ring of wishes - itemid = 3245, - type = "deequip", - slot = "ring", - }, - { - -- helmet of the ancients - itemid = 3230, - type = "equip", - slot = "head", - }, - { - -- helmet of the ancients - itemid = 3230, - type = "deequip", - slot = "head", - }, - { - -- helmet of the ancients - itemid = 3229, - type = "equip", - slot = "head", - }, - { - -- helmet of the ancients - itemid = 3229, - type = "deequip", - slot = "head", - }, - { - -- damaged helmet - itemid = 3226, - type = "equip", - slot = "head", - }, - { - -- damaged helmet - itemid = 3226, - type = "deequip", - slot = "head", - }, - { - -- hat of the mad - itemid = 3210, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- hat of the mad - itemid = 3210, - type = "deequip", - slot = "head", - }, - { - -- giant smithhammer - itemid = 12510, - type = "equip", - slot = "hand", - }, - { - -- giant smithhammer - itemid = 12510, - type = "deequip", - slot = "hand", - }, - { - -- paw amulet - itemid = 3102, - type = "equip", - slot = "necklace", - }, - { - -- paw amulet - itemid = 3102, - type = "deequip", - slot = "necklace", - }, - { - -- ring of healing - itemid = 3100, - type = "equip", - slot = "ring", - }, - { - -- ring of healing - itemid = 3100, - type = "deequip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3099, - type = "equip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3099, - type = "deequip", - slot = "ring", - }, - { - -- ring of healing - itemid = 3098, - type = "equip", - slot = "ring", - }, - { - -- ring of healing - itemid = 3098, - type = "deequip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3097, - type = "equip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3097, - type = "deequip", - slot = "ring", - }, - { - -- club ring - itemid = 3096, - type = "equip", - slot = "ring", - }, - { - -- club ring - itemid = 3096, - type = "deequip", - slot = "ring", - }, - { - -- axe ring - itemid = 3095, - type = "equip", - slot = "ring", - }, - { - -- axe ring - itemid = 3095, - type = "deequip", - slot = "ring", - }, - { - -- sword ring - itemid = 3094, - type = "equip", - slot = "ring", - }, - { - -- sword ring - itemid = 3094, - type = "deequip", - slot = "ring", - }, - { - -- club ring - itemid = 3093, - type = "equip", - slot = "ring", - }, - { - -- club ring - itemid = 3093, - type = "deequip", - slot = "ring", - }, - { - -- axe ring - itemid = 3092, - type = "equip", - slot = "ring", - }, - { - -- axe ring - itemid = 3092, - type = "deequip", - slot = "ring", - }, - { - -- sword ring - itemid = 3091, - type = "equip", - slot = "ring", - }, - { - -- sword ring - itemid = 3091, - type = "deequip", - slot = "ring", - }, - { - -- time ring - itemid = 3090, - type = "equip", - slot = "ring", - }, - { - -- time ring - itemid = 3090, - type = "deequip", - slot = "ring", - }, - { - -- life ring - itemid = 3089, - type = "equip", - slot = "ring", - }, - { - -- life ring - itemid = 3089, - type = "deequip", - slot = "ring", - }, - { - -- energy ring - itemid = 3088, - type = "equip", - slot = "ring", - }, - { - -- energy ring - itemid = 3088, - type = "deequip", - slot = "ring", - }, - { - -- power ring - itemid = 3087, - type = "equip", - slot = "ring", - }, - { - -- power ring - itemid = 3087, - type = "deequip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3086, - type = "equip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3086, - type = "deequip", - slot = "ring", - }, - { - -- dragon necklace - itemid = 3085, - type = "equip", - slot = "necklace", - }, - { - -- dragon necklace - itemid = 3085, - type = "deequip", - slot = "necklace", - }, - { - -- protection amulet - itemid = 3084, - type = "equip", - slot = "necklace", - }, - { - -- protection amulet - itemid = 3084, - type = "deequip", - slot = "necklace", - }, - { - -- garlic necklace - itemid = 3083, - type = "equip", - slot = "necklace", - }, - { - -- garlic necklace - itemid = 3083, - type = "deequip", - slot = "necklace", - }, - { - -- elven amulet - itemid = 3082, - type = "equip", - slot = "necklace", - }, - { - -- elven amulet - itemid = 3082, - type = "deequip", - slot = "necklace", - }, - { - -- stone skin amulet - itemid = 3081, - type = "equip", - slot = "necklace", - }, - { - -- stone skin amulet - itemid = 3081, - type = "deequip", - slot = "necklace", - }, - { - -- amulet of life - itemid = 3080, - type = "equip", - slot = "necklace", - }, - { - -- amulet of life - itemid = 3080, - type = "deequip", - slot = "necklace", - }, - { - -- boots of haste - itemid = 3079, - type = "equip", - slot = "feet", - }, - { - -- boots of haste - itemid = 3079, - type = "deequip", - slot = "feet", - }, - { - -- wand of dragonbreath - itemid = 3075, - type = "equip", - slot = "hand", - level = 13, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of dragonbreath - itemid = 3075, - type = "deequip", - slot = "hand", - level = 13, - }, - { - -- wand of vortex - itemid = 3074, - type = "equip", - slot = "hand", - level = 6, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of vortex - itemid = 3074, - type = "deequip", - slot = "hand", - level = 6, - }, - { - -- wand of cosmic energy - itemid = 3073, - type = "equip", - slot = "hand", - level = 26, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of cosmic energy - itemid = 3073, - type = "deequip", - slot = "hand", - level = 26, - }, - { - -- wand of decay - itemid = 3072, - type = "equip", - slot = "hand", - level = 19, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of decay - itemid = 3072, - type = "deequip", - slot = "hand", - level = 19, - }, - { - -- wand of inferno - itemid = 3071, - type = "equip", - slot = "hand", - level = 33, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of inferno - itemid = 3071, - type = "deequip", - slot = "hand", - level = 33, - }, - { - -- moonlight rod - itemid = 3070, - type = "equip", - slot = "hand", - level = 13, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- moonlight rod - itemid = 3070, - type = "deequip", - slot = "hand", - level = 13, - }, - { - -- necrotic rod - itemid = 3069, - type = "equip", - slot = "hand", - level = 19, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- necrotic rod - itemid = 3069, - type = "deequip", - slot = "hand", - level = 19, - }, - { - -- hailstorm rod - itemid = 3067, - type = "equip", - slot = "hand", - level = 33, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- hailstorm rod - itemid = 3067, - type = "deequip", - slot = "hand", - level = 33, - }, - { - -- snakebit rod - itemid = 3066, - type = "equip", - slot = "hand", - level = 6, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- snakebit rod - itemid = 3066, - type = "deequip", - slot = "hand", - level = 6, - }, - { - -- terra rod - itemid = 3065, - type = "equip", - slot = "hand", - level = 26, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- terra rod - itemid = 3065, - type = "deequip", - slot = "hand", - level = 26, - }, - { - -- gold ring - itemid = 3063, - type = "equip", - slot = "ring", - }, - { - -- gold ring - itemid = 3063, - type = "deequip", - slot = "ring", - }, - { - -- spellbook - itemid = 3059, - type = "equip", - slot = "shield", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook - itemid = 3059, - type = "deequip", - slot = "shield", - }, - { - -- amulet of loss - itemid = 3057, - type = "equip", - slot = "necklace", - }, - { - -- amulet of loss - itemid = 3057, - type = "deequip", - slot = "necklace", - }, - { - -- bronze amulet - itemid = 3056, - type = "equip", - slot = "necklace", - }, - { - -- bronze amulet - itemid = 3056, - type = "deequip", - slot = "necklace", - }, - { - -- platinum amulet - itemid = 3055, - type = "equip", - slot = "necklace", - }, - { - -- platinum amulet - itemid = 3055, - type = "deequip", - slot = "necklace", - }, - { - -- silver amulet - itemid = 3054, - type = "equip", - slot = "necklace", - }, - { - -- silver amulet - itemid = 3054, - type = "deequip", - slot = "necklace", - }, - { - -- time ring - itemid = 3053, - type = "equip", - slot = "ring", - }, - { - -- time ring - itemid = 3053, - type = "deequip", - slot = "ring", - }, - { - -- life ring - itemid = 3052, - type = "equip", - slot = "ring", - }, - { - -- life ring - itemid = 3052, - type = "deequip", - slot = "ring", - }, - { - -- energy ring - itemid = 3051, - type = "equip", - slot = "ring", - }, - { - -- energy ring - itemid = 3051, - type = "deequip", - slot = "ring", - }, - { - -- power ring - itemid = 3050, - type = "equip", - slot = "ring", - }, - { - -- power ring - itemid = 3050, - type = "deequip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3049, - type = "equip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3049, - type = "deequip", - slot = "ring", - }, - { - -- might ring - itemid = 3048, - type = "equip", - slot = "ring", - }, - { - -- might ring - itemid = 3048, - type = "deequip", - slot = "ring", - }, - { - -- strange talisman - itemid = 3045, - type = "equip", - slot = "necklace", - }, - { - -- strange talisman - itemid = 3045, - type = "deequip", - slot = "necklace", - }, - { - -- ancient amulet - itemid = 3025, - type = "equip", - slot = "necklace", - }, - { - -- ancient amulet - itemid = 3025, - type = "deequip", - slot = "necklace", - }, - { - -- ancient tiara - itemid = 3022, - type = "equip", - slot = "head", - }, - { - -- ancient tiara - itemid = 3022, - type = "deequip", - slot = "head", - }, - { - -- sapphire amulet - itemid = 3021, - type = "equip", - slot = "necklace", - }, - { - -- sapphire amulet - itemid = 3021, - type = "deequip", - slot = "necklace", - }, - { - -- demonbone amulet - itemid = 3019, - type = "equip", - slot = "necklace", - }, - { - -- demonbone amulet - itemid = 3019, - type = "deequip", - slot = "necklace", - }, - { - -- scarab amulet - itemid = 3018, - type = "equip", - slot = "necklace", - }, - { - -- scarab amulet - itemid = 3018, - type = "deequip", - slot = "necklace", - }, - { - -- ruby necklace - itemid = 3016, - type = "equip", - slot = "necklace", - }, - { - -- ruby necklace - itemid = 3016, - type = "deequip", - slot = "necklace", - }, - { - -- silver necklace - itemid = 3015, - type = "equip", - slot = "necklace", - }, - { - -- silver necklace - itemid = 3015, - type = "deequip", - slot = "necklace", - }, - { - -- star amulet - itemid = 3014, - type = "equip", - slot = "necklace", - }, - { - -- star amulet - itemid = 3014, - type = "deequip", - slot = "necklace", - }, - { - -- golden amulet - itemid = 3013, - type = "equip", - slot = "necklace", - }, - { - -- golden amulet - itemid = 3013, - type = "deequip", - slot = "necklace", - }, - { - -- wolf tooth chain - itemid = 3012, - type = "equip", - slot = "necklace", - }, - { - -- wolf tooth chain - itemid = 3012, - type = "deequip", - slot = "necklace", - }, - { - -- crown - itemid = 3011, - type = "equip", - slot = "head", - }, - { - -- crown - itemid = 3011, - type = "deequip", - slot = "head", - }, - { - -- bronze necklace - itemid = 3009, - type = "equip", - slot = "necklace", - }, - { - -- bronze necklace - itemid = 3009, - type = "deequip", - slot = "necklace", - }, - { - -- crystal necklace - itemid = 3008, - type = "equip", - slot = "necklace", - }, - { - -- crystal necklace - itemid = 3008, - type = "deequip", - slot = "necklace", - }, - { - -- crystal ring - itemid = 3007, - type = "equip", - slot = "ring", - }, - { - -- crystal ring - itemid = 3007, - type = "deequip", - slot = "ring", - }, - { - -- ring of the sky - itemid = 3006, - type = "equip", - slot = "ring", - }, - { - -- ring of the sky - itemid = 3006, - type = "deequip", - slot = "ring", - }, - { - -- wedding ring - itemid = 3004, - type = "equip", - slot = "ring", - }, - { - -- wedding ring - itemid = 3004, - type = "deequip", - slot = "ring", - }, - { - -- snowball - itemid = 2992, - type = "equip", - slot = "hand", - }, - { - -- snowball - itemid = 2992, - type = "deequip", - slot = "hand", - }, - { - -- golden backpack - itemid = 2871, - type = "equip", - slot = "backpack", - }, - { - -- golden backpack - itemid = 2871, - type = "deequip", - slot = "backpack", - }, - { - -- grey backpack - itemid = 2870, - type = "equip", - slot = "backpack", - }, - { - -- grey backpack - itemid = 2870, - type = "deequip", - slot = "backpack", - }, - { - -- blue backpack - itemid = 2869, - type = "equip", - slot = "backpack", - }, - { - -- blue backpack - itemid = 2869, - type = "deequip", - slot = "backpack", - }, - { - -- purple backpack - itemid = 2868, - type = "equip", - slot = "backpack", - }, - { - -- purple backpack - itemid = 2868, - type = "deequip", - slot = "backpack", - }, - { - -- red backpack - itemid = 2867, - type = "equip", - slot = "backpack", - }, - { - -- red backpack - itemid = 2867, - type = "deequip", - slot = "backpack", - }, - { - -- yellow backpack - itemid = 2866, - type = "equip", - slot = "backpack", - }, - { - -- yellow backpack - itemid = 2866, - type = "deequip", - slot = "backpack", - }, - { - -- green backpack - itemid = 2865, - type = "equip", - slot = "backpack", - }, - { - -- green backpack - itemid = 2865, - type = "deequip", - slot = "backpack", - }, - { - -- golden bag - itemid = 2863, - type = "equip", - slot = "backpack", - }, - { - -- golden bag - itemid = 2863, - type = "deequip", - slot = "backpack", - }, - { - -- grey bag - itemid = 2862, - type = "equip", - slot = "backpack", - }, - { - -- grey bag - itemid = 2862, - type = "deequip", - slot = "backpack", - }, - { - -- blue bag - itemid = 2861, - type = "equip", - slot = "backpack", - }, - { - -- blue bag - itemid = 2861, - type = "deequip", - slot = "backpack", - }, - { - -- purple bag - itemid = 2860, - type = "equip", - slot = "backpack", - }, - { - -- purple bag - itemid = 2860, - type = "deequip", - slot = "backpack", - }, - { - -- red bag - itemid = 2859, - type = "equip", - slot = "backpack", - }, - { - -- red bag - itemid = 2859, - type = "deequip", - slot = "backpack", - }, - { - -- yellow bag - itemid = 2858, - type = "equip", - slot = "backpack", - }, - { - -- yellow bag - itemid = 2858, - type = "deequip", - slot = "backpack", - }, - { - -- green bag - itemid = 2857, - type = "equip", - slot = "backpack", - }, - { - -- green bag - itemid = 2857, - type = "deequip", - slot = "backpack", - }, - { - -- backpack - itemid = 2854, - type = "equip", - slot = "backpack", - }, - { - -- backpack - itemid = 2854, - type = "deequip", - slot = "backpack", - }, - { - -- bag - itemid = 2853, - type = "equip", - slot = "backpack", - }, - { - -- bag - itemid = 2853, - type = "deequip", - slot = "backpack", - }, - { - -- searing fire - itemid = 2138, - type = "stepin", - }, - { - -- searing fire - itemid = 2138, - type = "additem", - }, - { - -- searing fire - itemid = 2137, - type = "stepin", - }, - { - -- searing fire - itemid = 2137, - type = "additem", - }, - { - -- smoke - itemid = 2136, - type = "stepin", - }, - { - -- smoke - itemid = 2136, - type = "additem", - }, - { - -- energy field - itemid = 2135, - type = "stepin", - }, - { - -- energy field - itemid = 2135, - type = "additem", - }, - { - -- poison gas - itemid = 2134, - type = "stepin", - }, - { - -- poison gas - itemid = 2134, - type = "additem", - }, - { - -- fire field - itemid = 2133, - type = "stepin", - }, - { - -- fire field - itemid = 2133, - type = "additem", - }, - { - -- fire field - itemid = 2132, - type = "stepin", - }, - { - -- fire field - itemid = 2132, - type = "additem", - }, - { - -- fire field - itemid = 21465, - type = "stepin", - }, - { - -- fire field - itemid = 21465, - type = "additem", - }, - { - -- rush wood - itemid = 2130, - type = "stepin", - }, - { - -- rush wood - itemid = 2130, - type = "additem", - }, - { - -- magic wall - itemid = 2129, - type = "stepin", - }, - { - -- magic wall - itemid = 2129, - type = "additem", - }, - { - -- magic wall - itemid = 2128, - type = "stepin", - }, - { - -- magic wall - itemid = 2128, - type = "additem", - }, - { - -- poison field - itemid = 2121, - type = "stepin", - }, - { - -- poison field - itemid = 2121, - type = "additem", - }, - { - -- energy field - itemid = 2126, - type = "stepin", - }, - { - -- energy field - itemid = 2126, - type = "additem", - }, - { - -- fire field - itemid = 2125, - type = "stepin", - }, - { - -- fire field - itemid = 2125, - type = "additem", - }, - { - -- fire field - itemid = 2124, - type = "stepin", - }, - { - -- fire field - itemid = 2124, - type = "additem", - }, - { - -- fire field - itemid = 2123, - type = "stepin", - }, - { - -- fire field - itemid = 2123, - type = "additem", - }, - { - -- energy field - itemid = 2122, - type = "stepin", - }, - { - -- energy field - itemid = 2122, - type = "additem", - }, - { - -- poison field - itemid = 105, - type = "stepin", - }, - { - -- poison field - itemid = 105, - type = "additem", - }, - { - -- fire field - itemid = 2120, - type = "stepin", - }, - { - -- fire field - itemid = 2120, - type = "additem", - }, - { - -- fire field - itemid = 2119, - type = "stepin", - }, - { - -- fire field - itemid = 2119, - type = "additem", - }, - { - -- fire field - itemid = 2118, - type = "stepin", - }, - { - -- fire field - itemid = 2118, - type = "additem", - }, - { - -- campfire - itemid = 2000, - type = "stepin", - }, - { - -- campfire - itemid = 2000, - type = "additem", - }, - { - -- campfire - itemid = 1999, - type = "stepin", - }, - { - -- campfire - itemid = 1999, - type = "additem", - }, - { - -- campfire - itemid = 1998, - type = "stepin", - }, - { - -- campfire - itemid = 1998, - type = "additem", - }, - { - -- small stone - itemid = 1781, - type = "equip", - slot = "hand", - }, - { - -- small stone - itemid = 1781, - type = "deequip", - slot = "hand", - }, -} - -for _, i in ipairs(items) do - local movement = MoveEvent() - movement:id(i.itemid) - - if i.type then - movement:type(i.type) - end - if i.slot then - movement:slot(i.slot) - end - if i.level then - movement:level(i.level) - end - if i.vocation then - for _, v in ipairs(i.vocation) do - movement:vocation(v[1], v[2] or false, v[3] or false) - end - end - movement:register() -end diff --git a/data-canary/scripts/weapons/unscripted_weapons.lua b/data-canary/scripts/weapons/unscripted_weapons.lua deleted file mode 100644 index 5f56e9c7a06..00000000000 --- a/data-canary/scripts/weapons/unscripted_weapons.lua +++ /dev/null @@ -1,5141 +0,0 @@ -local weapons = { - { - -- naga rod - itemId = 39163, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = { 90, 110 }, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- naga wand - itemId = 39162, - type = WEAPON_WAND, - wandType = "energy", - level = 250, - mana = 21, - damage = { 90, 120 }, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- naga crossbow - itemId = 39159, - type = WEAPON_DISTANCE, - level = 300, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- naga club - itemId = 39157, - type = WEAPON_CLUB, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga axe - itemId = 39156, - type = WEAPON_AXE, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga sword - itemId = 39155, - type = WEAPON_SWORD, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch rod - itemId = 36675, - type = WEAPON_WAND, - level = 250, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch rod - itemId = 36674, - type = WEAPON_WAND, - level = 250, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- gilded eldritch wand - itemId = 36669, - type = WEAPON_WAND, - level = 250, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch wand - itemId = 36668, - type = WEAPON_WAND, - level = 250, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- gilded eldritch bow - itemId = 36665, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch bow - itemId = 36664, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- gilded eldritch greataxe - itemId = 36662, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch greataxe - itemId = 36661, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch warmace - itemId = 36660, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch warmace - itemId = 36659, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch claymore - itemId = 36658, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch claymore - itemId = 36657, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spectral bolt (no decay) - itemId = 35902, - type = WEAPON_AMMO, - level = 150, - unproperly = true, - action = "removecount", - }, - { - -- jungle wand - itemId = 35522, - type = WEAPON_WAND, - wandType = "earth", - level = 150, - mana = 19, - damage = { 80, 100 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- jungle rod - itemId = 35521, - type = WEAPON_WAND, - wandType = "ice", - level = 150, - mana = 19, - damage = { 80, 100 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- jungle bow - itemId = 35518, - type = WEAPON_DISTANCE, - level = 150, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- throwing axe - itemId = 35515, - type = WEAPON_AXE, - level = 150, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- jungle flail - itemId = 35514, - type = WEAPON_CLUB, - level = 150, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion longsword - itemId = 34155, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion hammer - itemId = 34254, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion axe - itemId = 34253, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion wand - itemId = 34152, - type = WEAPON_WAND, - wandType = "ice", - level = 220, - mana = 21, - damage = { 89, 109 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- lion rod - itemId = 34151, - type = WEAPON_WAND, - wandType = "ice", - level = 270, - mana = 20, - damage = { 85, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- lion longbow - itemId = 34150, - type = WEAPON_DISTANCE, - level = 270, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulhexer rod - itemId = 34091, - type = WEAPON_WAND, - wandType = "ice", - level = 400, - mana = 21, - damage = { 98, 118 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soultainter wand - itemId = 34090, - type = WEAPON_WAND, - wandType = "death", - level = 400, - mana = 21, - damage = { 100, 120 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulpiercer crossbow - itemId = 34089, - type = WEAPON_DISTANCE, - level = 400, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulbleeder bow - itemId = 34088, - type = WEAPON_DISTANCE, - level = 400, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulmaimer club - itemId = 34087, - type = WEAPON_CLUB, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcrusher club - itemId = 34086, - type = WEAPON_CLUB, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- souleater axe - itemId = 34085, - type = WEAPON_AXE, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulbiter axe - itemId = 34084, - type = WEAPON_AXE, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulshredder sword - itemId = 34083, - type = WEAPON_SWORD, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcutter sword - itemId = 34082, - type = WEAPON_SWORD, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- phantasmal axe - itemid = 32616, - type = WEAPON_AXE, - level = 180, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- meat hammer - itemid = 32093, - type = WEAPON_CLUB, - }, - { - -- tagralt blade - itemid = 31614, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- bow of cataclysm - itemid = 31581, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mortal mace - itemid = 31580, - type = WEAPON_CLUB, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra rod - itemid = 30400, - type = WEAPON_WAND, - wandType = "earth", - level = 220, - mana = 21, - damage = { 70, 110 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- cobra wand - itemid = 30399, - type = WEAPON_WAND, - wandType = "energy", - level = 270, - mana = 22, - damage = { 94, 100 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- cobra sword - itemid = 30398, - type = WEAPON_SWORD, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra axe - itemid = 30396, - type = WEAPON_AXE, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra club - itemid = 30395, - type = WEAPON_CLUB, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra crossbow - itemid = 30393, - type = WEAPON_DISTANCE, - level = 220, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ice hatchet - itemid = 30283, - type = WEAPON_AXE, - }, - { - -- energized limb - itemid = 29425, - type = WEAPON_WAND, - wandType = "fire", - level = 180, - mana = 24, - damage = { 88, 108 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- winterblade - itemid = 29422, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- summerblade - itemid = 29421, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- resizer - itemid = 29419, - type = WEAPON_CLUB, - level = 230, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- living vine bow - itemid = 29417, - type = WEAPON_DISTANCE, - level = 220, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- golden axe - itemid = 29286, - type = WEAPON_AXE, - }, - { - -- wand of destruction test - itemid = 28479, - type = WEAPON_WAND, - }, - { - -- umbral master bow test - itemid = 28478, - type = WEAPON_DISTANCE, - }, - { - -- sorcerer test weapon - itemid = 28466, - type = WEAPON_WAND, - }, - { - -- bow of destruction test - itemid = 28465, - type = WEAPON_DISTANCE, - }, - { - -- test weapon for knights - itemid = 28464, - type = WEAPON_SWORD, - }, - { - -- sulphurous demonbone - itemid = 28832, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- unliving demonbone - itemid = 28831, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- energized demonbone - itemid = 28830, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- rotten demonbone - itemid = 28829, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- deepling fork - itemid = 28826, - type = WEAPON_WAND, - wandType = "ice", - level = 230, - mana = 23, - damage = { 80, 120 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = WEAPON_WAND, - wandType = "ice", - level = 180, - mana = 23, - damage = { 86, 98 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- falcon mace - itemid = 28725, - type = WEAPON_CLUB, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon battleaxe - itemid = 28724, - type = WEAPON_AXE, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon longsword - itemid = 28723, - type = WEAPON_SWORD, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon bow - itemid = 28718, - type = WEAPON_DISTANCE, - level = 300, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- falcon wand - itemid = 28717, - type = WEAPON_WAND, - wandType = "energy", - level = 300, - mana = 21, - damage = { 86, 102 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- falcon rod - itemid = 28716, - type = WEAPON_WAND, - wandType = "earth", - level = 300, - mana = 20, - damage = { 87, 101 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- gnome sword - itemid = 27651, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mallet handle - itemid = 27525, - type = WEAPON_CLUB, - }, - { - -- strange mallet - itemid = 27523, - type = WEAPON_CLUB, - }, - { - -- rod of destruction - itemid = 27458, - type = WEAPON_WAND, - wandType = "ice", - level = 200, - mana = 20, - damage = { 80, 110 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of destruction - itemid = 27457, - type = WEAPON_WAND, - wandType = "energy", - level = 200, - mana = 20, - damage = { 80, 110 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of destruction - itemid = 27456, - type = WEAPON_DISTANCE, - level = 200, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of destruction - itemid = 27455, - type = WEAPON_DISTANCE, - level = 200, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of destruction - itemid = 27454, - type = WEAPON_CLUB, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of destruction - itemid = 27453, - type = WEAPON_CLUB, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of destruction - itemid = 27452, - type = WEAPON_AXE, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of destruction - itemid = 27451, - type = WEAPON_AXE, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of destruction - itemid = 27450, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of destruction - itemid = 27449, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate carving hammer - itemid = 26061, - type = WEAPON_CLUB, - }, - { - -- valuable carving hammer - itemid = 26060, - type = WEAPON_CLUB, - }, - { - -- plain carving hammer - itemid = 26059, - type = WEAPON_CLUB, - }, - { - -- ornate carving mace - itemid = 26058, - type = WEAPON_CLUB, - }, - { - -- valuable carving mace - itemid = 26057, - type = WEAPON_CLUB, - }, - { - -- plain carving mace - itemid = 26056, - type = WEAPON_CLUB, - }, - { - -- ornate carving chopper - itemid = 26055, - type = WEAPON_AXE, - }, - { - -- valuable carving chopper - itemid = 26054, - type = WEAPON_AXE, - }, - { - -- plain carving chopper - itemid = 26053, - type = WEAPON_AXE, - }, - { - -- ornate carving axe - itemid = 26052, - type = WEAPON_AXE, - }, - { - -- valuable carving axe - itemid = 26051, - type = WEAPON_AXE, - }, - { - -- plain carving axe - itemid = 26050, - type = WEAPON_AXE, - }, - { - -- ornate carving slayer - itemid = 26049, - type = WEAPON_SWORD, - }, - { - -- valuable carving slayer - itemid = 26048, - type = WEAPON_SWORD, - }, - { - -- plain carving slayer - itemid = 26047, - type = WEAPON_SWORD, - }, - { - -- ornate carving blade - itemid = 26046, - type = WEAPON_SWORD, - }, - { - -- valuable carving blade - itemid = 26045, - type = WEAPON_SWORD, - }, - { - -- plain carving blade - itemid = 26044, - type = WEAPON_SWORD, - }, - { - -- ornate remedy hammer - itemid = 26031, - type = WEAPON_CLUB, - }, - { - -- valuable remedy hammer - itemid = 26030, - type = WEAPON_CLUB, - }, - { - -- plain remedy hammer - itemid = 26029, - type = WEAPON_CLUB, - }, - { - -- ornate remedy mace - itemid = 26028, - type = WEAPON_CLUB, - }, - { - -- valuable remedy mace - itemid = 26027, - type = WEAPON_CLUB, - }, - { - -- plain remedy mace - itemid = 26026, - type = WEAPON_CLUB, - }, - { - -- ornate remedy chopper - itemid = 26025, - type = WEAPON_AXE, - }, - { - -- valuable remedy chopper - itemid = 26024, - type = WEAPON_AXE, - }, - { - -- plain remedy chopper - itemid = 26023, - type = WEAPON_AXE, - }, - { - -- ornate remedy axe - itemid = 26022, - type = WEAPON_AXE, - }, - { - -- valuable remedy axe - itemid = 26021, - type = WEAPON_AXE, - }, - { - -- plain remedy axe - itemid = 26020, - type = WEAPON_AXE, - }, - { - -- ornate remedy slayer - itemid = 26019, - type = WEAPON_SWORD, - }, - { - -- valuable remedy slayer - itemid = 26018, - type = WEAPON_SWORD, - }, - { - -- plain remedy slayer - itemid = 26017, - type = WEAPON_SWORD, - }, - { - -- ornate remedy blade - itemid = 26016, - type = WEAPON_SWORD, - }, - { - -- valuable remedy blade - itemid = 26015, - type = WEAPON_SWORD, - }, - { - -- plain remedy blade - itemid = 26014, - type = WEAPON_SWORD, - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = WEAPON_CLUB, - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = WEAPON_CLUB, - }, - { - -- plain mayhem hammer - itemid = 25998, - type = WEAPON_CLUB, - }, - { - -- ornate mayhem mace - itemid = 25997, - type = WEAPON_CLUB, - }, - { - -- valuable mayhem mace - itemid = 25996, - type = WEAPON_CLUB, - }, - { - -- plain mayhem mace - itemid = 25995, - type = WEAPON_CLUB, - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = WEAPON_AXE, - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = WEAPON_AXE, - }, - { - -- plain mayhem chopper - itemid = 25992, - type = WEAPON_AXE, - }, - { - -- ornate mayhem axe - itemid = 25991, - type = WEAPON_AXE, - }, - { - -- valuable mayhem axe - itemid = 25990, - type = WEAPON_AXE, - }, - { - -- plain mayhem axe - itemid = 25989, - type = WEAPON_AXE, - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = WEAPON_SWORD, - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = WEAPON_SWORD, - }, - { - -- plain mayhem slayer - itemid = 25986, - type = WEAPON_SWORD, - }, - { - -- ornate mayhem blade - itemid = 25985, - type = WEAPON_SWORD, - }, - { - -- valuable mayhem blade - itemid = 25984, - type = WEAPON_SWORD, - }, - { - -- plain mayhem blade - itemid = 25983, - type = WEAPON_SWORD, - }, - { - -- energy war hammer replica - itemid = 25974, - type = WEAPON_CLUB, - }, - { - -- energy orcish maul replica - itemid = 25973, - type = WEAPON_CLUB, - }, - { - -- energy basher replica - itemid = 25972, - type = WEAPON_CLUB, - }, - { - -- energy crystal mace replica - itemid = 25971, - type = WEAPON_CLUB, - }, - { - -- energy clerical mace replica - itemid = 25970, - type = WEAPON_CLUB, - }, - { - -- energy war axe replica - itemid = 25969, - type = WEAPON_AXE, - }, - { - -- energy headchopper replica - itemid = 25968, - type = WEAPON_AXE, - }, - { - -- energy heroic axe replica - itemid = 25967, - type = WEAPON_AXE, - }, - { - -- energy knight axe replica - itemid = 25966, - type = WEAPON_AXE, - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = WEAPON_AXE, - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = WEAPON_SWORD, - }, - { - -- energy blacksteel replica - itemid = 25963, - type = WEAPON_SWORD, - }, - { - -- energy mystic blade replica - itemid = 25962, - type = WEAPON_SWORD, - }, - { - -- energy relic sword replica - itemid = 25961, - type = WEAPON_SWORD, - }, - { - -- energy spike sword replica - itemid = 25960, - type = WEAPON_SWORD, - }, - { - -- earth war hammer replica - itemid = 25959, - type = WEAPON_CLUB, - }, - { - -- earth orcish maul replica - itemid = 25958, - type = WEAPON_CLUB, - }, - { - -- earth basher replica - itemid = 25957, - type = WEAPON_CLUB, - }, - { - -- earth crystal mace replica - itemid = 25956, - type = WEAPON_CLUB, - }, - { - -- earth clerical mace replica - itemid = 25955, - type = WEAPON_CLUB, - }, - { - -- earth war axe replica - itemid = 25954, - type = WEAPON_AXE, - }, - { - -- earth headchopper replica - itemid = 25953, - type = WEAPON_AXE, - }, - { - -- earth heroic axe replica - itemid = 25952, - type = WEAPON_AXE, - }, - { - -- earth knight axe replica - itemid = 25951, - type = WEAPON_AXE, - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = WEAPON_AXE, - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = WEAPON_SWORD, - }, - { - -- earth blacksteel replica - itemid = 25948, - type = WEAPON_SWORD, - }, - { - -- earth mystic blade replica - itemid = 25947, - type = WEAPON_SWORD, - }, - { - -- earth relic sword replica - itemid = 25946, - type = WEAPON_SWORD, - }, - { - -- earth spike sword replica - itemid = 25945, - type = WEAPON_SWORD, - }, - { - -- icy war hammer replica - itemid = 25944, - type = WEAPON_CLUB, - }, - { - -- icy orcish maul replica - itemid = 25943, - type = WEAPON_CLUB, - }, - { - -- icy basher replica - itemid = 25942, - type = WEAPON_CLUB, - }, - { - -- icy crystal mace replica - itemid = 25941, - type = WEAPON_CLUB, - }, - { - -- icy clerical mace replica - itemid = 25940, - type = WEAPON_CLUB, - }, - { - -- icy war axe replica - itemid = 25939, - type = WEAPON_AXE, - }, - { - -- icy headchopper replica - itemid = 25938, - type = WEAPON_AXE, - }, - { - -- icy heroic axe replica - itemid = 25937, - type = WEAPON_AXE, - }, - { - -- icy knight axe replica - itemid = 25936, - type = WEAPON_AXE, - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = WEAPON_AXE, - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = WEAPON_SWORD, - }, - { - -- icy blacksteel replica - itemid = 25933, - type = WEAPON_SWORD, - }, - { - -- icy mystic blade replica - itemid = 25932, - type = WEAPON_SWORD, - }, - { - -- icy relic sword replica - itemid = 25931, - type = WEAPON_SWORD, - }, - { - -- icy spike sword replica - itemid = 25930, - type = WEAPON_SWORD, - }, - { - -- fiery war hammer replica - itemid = 25929, - type = WEAPON_CLUB, - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = WEAPON_CLUB, - }, - { - -- fiery basher replica - itemid = 25927, - type = WEAPON_CLUB, - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = WEAPON_CLUB, - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = WEAPON_CLUB, - }, - { - -- fiery war axe replica - itemid = 25924, - type = WEAPON_AXE, - }, - { - -- fiery headchopper replica - itemid = 25923, - type = WEAPON_AXE, - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = WEAPON_AXE, - }, - { - -- fiery knight axe replica - itemid = 25921, - type = WEAPON_AXE, - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = WEAPON_AXE, - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = WEAPON_SWORD, - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = WEAPON_SWORD, - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = WEAPON_SWORD, - }, - { - -- fiery relic sword replica - itemid = 25916, - type = WEAPON_SWORD, - }, - { - -- fiery spike sword replica - itemid = 25915, - type = WEAPON_SWORD, - }, - { - -- wand of darkness - itemid = 25760, - type = WEAPON_WAND, - wandType = "death", - level = 41, - mana = 15, - damage = { 80, 100 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- royal star - itemid = 25759, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - breakchance = 30, - }, - { - -- spectral bolt - itemid = 25758, - type = WEAPON_AMMO, - level = 150, - unproperly = true, - action = "removecount", - }, - { - -- leaf star - itemid = 25735, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - breakchance = 40, - }, - { - -- dream blossom staff - itemid = 25700, - type = WEAPON_WAND, - wandType = "energy", - level = 80, - mana = 18, - damage = { 63, 77 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- rod of carving - itemid = 23339, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of carving - itemid = 23335, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of carving - itemid = 23331, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of carving - itemid = 23327, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of carving - itemid = 23323, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of carving - itemid = 23319, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of carving - itemid = 23315, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of carving - itemid = 23311, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of carving - itemid = 23307, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of carving - itemid = 23303, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rod of remedy - itemid = 23299, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of remedy - itemid = 23295, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of remedy - itemid = 23291, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of remedy - itemid = 23287, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of remedy - itemid = 23283, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of remedy - itemid = 23279, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of remedy - itemid = 23275, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of remedy - itemid = 23271, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of remedy - itemid = 23267, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of remedy - itemid = 23263, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rod of mayhem - itemid = 23232, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of mayhem - itemid = 23231, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of mayhem - itemid = 23230, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of mayhem - itemid = 23229, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of mayhem - itemid = 23228, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of mayhem - itemid = 23227, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of mayhem - itemid = 23226, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of mayhem - itemid = 23225, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of mayhem - itemid = 23224, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of mayhem - itemid = 23223, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rift crossbow - itemid = 22867, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- rift bow - itemid = 22866, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 19, - damage = { 80, 110 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = WEAPON_WAND, - wandType = "energy", - level = 65, - mana = 17, - damage = { 65, 95 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- Ferumbras' staff - itemid = 22764, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - }, - { - -- maimer - itemid = 22762, - type = WEAPON_CLUB, - level = 150, - unproperly = true, - }, - { - -- Impaler of the igniter - itemid = 22760, - type = WEAPON_SWORD, - level = 150, - unproperly = true, - }, - { - -- plague bite - itemid = 22759, - type = WEAPON_AXE, - level = 150, - unproperly = true, - }, - { - -- rift lance - itemid = 22727, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- ogre sceptra - itemid = 22183, - type = WEAPON_WAND, - wandType = "earth", - level = 37, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- ogre choppa - itemid = 22172, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- ogre klubba - itemid = 22171, - type = WEAPON_AXE, - level = 50, - unproperly = true, - }, - { - -- simple arrow - itemid = 21470, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- the chiller - itemid = 21350, - type = WEAPON_WAND, - wandType = "ice", - level = 1, - mana = 1, - damage = { 4, 8 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- the scorcher - itemid = 21348, - type = WEAPON_WAND, - wandType = "fire", - level = 1, - mana = 1, - damage = { 4, 8 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- one hit wonder - itemid = 21219, - type = WEAPON_CLUB, - level = 70, - unproperly = true, - }, - { - -- glooth axe - itemid = 21180, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth blade - itemid = 21179, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth club - itemid = 21178, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cowtana - itemid = 21177, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - }, - { - -- execowtioner axe - itemid = 21176, - type = WEAPON_AXE, - level = 55, - unproperly = true, - }, - { - -- mino lance - itemid = 21174, - type = WEAPON_AXE, - level = 45, - unproperly = true, - }, - { - -- moohtant cudgel - itemid = 21173, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - }, - { - -- glooth whip - itemid = 21172, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- metal bat - itemid = 21171, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - }, - { - -- glooth spear - itemid = 21158, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - breakchance = 2, - }, - { - -- umbral master crossbow - itemid = 20087, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral crossbow - itemid = 20086, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crude umbral crossbow - itemid = 20085, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral master bow - itemid = 20084, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral bow - itemid = 20083, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crude umbral bow - itemid = 20082, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral master hammer - itemid = 20081, - type = WEAPON_CLUB, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral hammer - itemid = 20080, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral hammer - itemid = 20079, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master mace - itemid = 20078, - type = WEAPON_CLUB, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral mace - itemid = 20077, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral mace - itemid = 20076, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master chopper - itemid = 20075, - type = WEAPON_AXE, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral chopper - itemid = 20074, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- guardian halberd - itemid = 20073, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master axe - itemid = 20072, - type = WEAPON_AXE, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral axe - itemid = 20071, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral axe - itemid = 20070, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master slayer - itemid = 20069, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral slayer - itemid = 20068, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral slayer - itemid = 20067, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral masterblade - itemid = 20066, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral blade - itemid = 20065, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral blade - itemid = 20064, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icicle bow - itemid = 19362, - type = WEAPON_DISTANCE, - unproperly = true, - }, - { - -- triple bolt crossbow - itemid = 19356, - type = WEAPON_DISTANCE, - level = 70, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- spiky club - itemid = 17859, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- pair of iron fists - itemid = 17828, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- swampling club - itemid = 17824, - type = WEAPON_CLUB, - }, - { - -- life preserver - itemid = 17813, - type = WEAPON_CLUB, - level = 15, - unproperly = true, - }, - { - -- ratana - itemid = 17812, - type = WEAPON_SWORD, - level = 15, - unproperly = true, - }, - { - -- sorc and druid staff - itemid = 17111, - type = WEAPON_WAND, - wandType = "energy", - level = 1, - mana = 2, - damage = { 8, 18 }, - vocation = { - { "None", true }, - }, - }, - { - -- mean paladin spear - itemid = 17110, - type = WEAPON_DISTANCE, - breakchance = 3, - vocation = { - { "None", true }, - }, - }, - { - -- mean knight sword - itemid = 17109, - type = WEAPON_SWORD, - unproperly = true, - vocation = { - { "None", true }, - }, - }, - { - -- shiny blade - itemid = 16175, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - }, - { - -- mycological bow - itemid = 16164, - type = WEAPON_DISTANCE, - level = 105, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crystal crossbow - itemid = 16163, - type = WEAPON_DISTANCE, - level = 90, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mycological mace - itemid = 16162, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - }, - { - -- crystalline axe - itemid = 16161, - type = WEAPON_AXE, - level = 120, - unproperly = true, - }, - { - -- crystalline sword - itemid = 16160, - type = WEAPON_SWORD, - level = 62, - unproperly = true, - }, - { - -- envenomed arrow - itemid = 16143, - type = WEAPON_AMMO, - level = 70, - unproperly = true, - action = "removecount", - }, - { - -- drill bolt - itemid = 16142, - type = WEAPON_AMMO, - level = 70, - unproperly = true, - action = "removecount", - }, - { - -- prismatic bolt - itemid = 16141, - type = WEAPON_AMMO, - level = 90, - unproperly = true, - action = "removecount", - }, - { - -- glacial rod - itemid = 16118, - type = WEAPON_WAND, - wandType = "ice", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- muck rod - itemid = 16117, - type = WEAPON_WAND, - wandType = "earth", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of everblazing - itemid = 16115, - type = WEAPON_WAND, - wandType = "fire", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of defiance - itemid = 16096, - type = WEAPON_WAND, - wandType = "energy", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crystalline arrow - itemid = 15793, - type = WEAPON_AMMO, - level = 90, - unproperly = true, - action = "removecount", - }, - { - -- crystal bolt - itemid = 15792, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- thorn spitter - itemid = 14768, - type = WEAPON_DISTANCE, - level = 150, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- vortex bolt - itemid = 14252, - type = WEAPON_AMMO, - level = 40, - unproperly = true, - action = "removecount", - }, - { - -- tarsal arrow - itemid = 14251, - type = WEAPON_AMMO, - level = 30, - unproperly = true, - action = "removecount", - }, - { - -- deepling squelcher - itemid = 14250, - type = WEAPON_CLUB, - level = 48, - unproperly = true, - }, - { - -- ornate crossbow - itemid = 14247, - type = WEAPON_DISTANCE, - level = 50, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hive bow - itemid = 14246, - type = WEAPON_DISTANCE, - level = 85, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hive scythe - itemid = 14089, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- guardian axe - itemid = 14043, - type = WEAPON_AXE, - level = 50, - unproperly = true, - }, - { - -- warrior's axe - itemid = 14040, - type = WEAPON_AXE, - level = 40, - unproperly = true, - }, - { - -- ornate mace - itemid = 14001, - type = WEAPON_CLUB, - level = 90, - unproperly = true, - }, - { - -- deepling axe - itemid = 13991, - type = WEAPON_AXE, - level = 80, - unproperly = true, - }, - { - -- deepling staff - itemid = 13987, - type = WEAPON_CLUB, - level = 38, - unproperly = true, - }, - { - -- shimmer wand - itemid = 12741, - type = WEAPON_WAND, - wandType = "energy", - level = 40, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- shimmer bow - itemid = 12733, - type = WEAPON_DISTANCE, - level = 40, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- shimmer rod - itemid = 12732, - type = WEAPON_WAND, - wandType = "ice", - level = 40, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- shimmer sword - itemid = 12731, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - }, - { - -- heavy trident - itemid = 12683, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- wooden sword - itemid = 12673, - type = WEAPON_SWORD, - }, - { - -- wand of dimensions - itemid = 12603, - type = WEAPON_WAND, - wandType = "death", - level = 37, - mana = 9, - damage = { 44, 62 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- blade of corruption - itemid = 11693, - type = WEAPON_SWORD, - level = 82, - unproperly = true, - }, - { - -- snake god's sceptre - itemid = 11692, - type = WEAPON_CLUB, - level = 82, - unproperly = true, - }, - { - -- twiceslicer - itemid = 11657, - type = WEAPON_SWORD, - level = 58, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Zaoan halberd - itemid = 10406, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- twin hooks - itemid = 10392, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- drachaku - itemid = 10391, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Zaoan sword - itemid = 10390, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - }, - { - -- sai - itemid = 10389, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- drakinata - itemid = 10388, - type = WEAPON_AXE, - level = 60, - unproperly = true, - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = WEAPON_SWORD, - }, - { - -- poet's fencing quill - itemid = 9387, - type = WEAPON_SWORD, - }, - { - -- farmer's avenger - itemid = 9386, - type = WEAPON_AXE, - }, - { - -- club of the fury - itemid = 9385, - type = WEAPON_CLUB, - }, - { - -- scythe of the reaper - itemid = 9384, - type = WEAPON_AXE, - }, - { - -- musician's bow - itemid = 9378, - type = WEAPON_DISTANCE, - }, - { - -- stale bread of ancientness - itemid = 9376, - type = WEAPON_CLUB, - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = WEAPON_SWORD, - }, - { - -- glutton's mace - itemid = 9373, - type = WEAPON_CLUB, - }, - { - -- the calamity - itemid = 8104, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the epiphany - itemid = 8103, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - }, - { - -- emerald sword - itemid = 8102, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - }, - { - -- the stomper - itemid = 8101, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- obsidian truncheon - itemid = 8100, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - }, - { - -- dark trinity mace - itemid = 8099, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - }, - { - -- demonwing axe - itemid = 8098, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- solar axe - itemid = 8097, - type = WEAPON_AXE, - level = 130, - unproperly = true, - }, - { - -- hellforged axe - itemid = 8096, - type = WEAPON_AXE, - level = 110, - unproperly = true, - }, - { - -- wand of voodoo - itemid = 8094, - type = WEAPON_WAND, - wandType = "death", - level = 42, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of draconia - itemid = 8093, - type = WEAPON_WAND, - wandType = "fire", - level = 22, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of starmstorm - itemid = 8092, - type = WEAPON_WAND, - wandType = "energy", - level = 37, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- springsprout rod - itemid = 8084, - type = WEAPON_WAND, - wandType = "earth", - level = 37, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- northwind rod - itemid = 8083, - type = WEAPON_WAND, - wandType = "ice", - level = 22, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- underworld rod - itemid = 8082, - type = WEAPON_WAND, - wandType = "death", - level = 42, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = WEAPON_DISTANCE, - level = 70, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- silkweaver bow - itemid = 8029, - type = WEAPON_DISTANCE, - level = 40, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- yol's bow - itemid = 8028, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- composite hornbow - itemid = 8027, - type = WEAPON_DISTANCE, - level = 50, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- warsinger bow - itemid = 8026, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ironworker - itemid = 8025, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- devileye - itemid = 8024, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- royal crossbow - itemid = 8023, - type = WEAPON_DISTANCE, - level = 130, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- chain bolter - itemid = 8022, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- modified crossbow - itemid = 8021, - type = WEAPON_DISTANCE, - level = 45, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- jagged sword - itemid = 7774, - type = WEAPON_SWORD, - }, - { - -- steel axe - itemid = 7773, - type = WEAPON_AXE, - }, - { - -- crimson sword - itemid = 860, - type = WEAPON_SWORD, - }, - { - -- energy war hammer - itemid = 810, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy orcish maul - itemid = 809, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- energy cranial basher - itemid = 808, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- energy crystal mace - itemid = 807, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- energy clerical mace - itemid = 806, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- energy war axe - itemid = 805, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy headchopper - itemid = 804, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy heroic axe - itemid = 803, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- energy knight axe - itemid = 802, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- energy barbarian axe - itemid = 801, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- energy dragon slayer - itemid = 798, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy blacksteel sword - itemid = 797, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy mystic blade - itemid = 796, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- energy relic sword - itemid = 795, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- energy spike sword - itemid = 794, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- earth war hammer - itemid = 793, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth orcish maul - itemid = 792, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- earth cranial basher - itemid = 791, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- earth crystal mace - itemid = 790, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- earth clerical mace - itemid = 789, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- earth war axe - itemid = 788, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth headchopper - itemid = 787, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth heroic axe - itemid = 786, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- earth knight axe - itemid = 785, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- earth barbarian axe - itemid = 784, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- earth dragon slayer - itemid = 783, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth blacksteel sword - itemid = 782, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth mystic blade - itemid = 781, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- earth relic sword - itemid = 780, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- earth spike sword - itemid = 779, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- earth arrow - itemid = 774, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- flaming arrow - itemid = 763, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- shiver arrow - itemid = 762, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- flash arrow - itemid = 761, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- icy war hammer - itemid = 693, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy orcish maul - itemid = 692, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- icy cranial basher - itemid = 691, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- icy crystal mace - itemid = 690, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- icy clerical mace - itemid = 689, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- icy war axe - itemid = 688, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy headchopper - itemid = 687, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy heroic axe - itemid = 686, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- icy knight axe - itemid = 685, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- icy barbarian axe - itemid = 684, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- icy dragon slayer - itemid = 683, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy blacksteel sword - itemid = 682, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy mystic blade - itemid = 681, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- icy relic sword - itemid = 680, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- icy spike sword - itemid = 679, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- fiery war hammer - itemid = 674, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery orcish maul - itemid = 673, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- fiery cranial basher - itemid = 672, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- fiery crystal mace - itemid = 671, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- fiery clerical mace - itemid = 670, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- fiery war axe - itemid = 669, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery headchopper - itemid = 668, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery heroic axe - itemid = 667, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- fiery knight axe - itemid = 666, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- fiery barbarian axe - itemid = 665, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- fiery dragon slayer - itemid = 664, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery blacksteel sword - itemid = 663, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery mystic blade - itemid = 662, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- fiery relic sword - itemid = 661, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- fiery spike sword - itemid = 660, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- noble axe - itemid = 7456, - type = WEAPON_AXE, - level = 35, - unproperly = true, - }, - { - -- mythril axe - itemid = 7455, - type = WEAPON_AXE, - level = 80, - unproperly = true, - }, - { - -- glorious axe - itemid = 7454, - type = WEAPON_AXE, - level = 30, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- executioner - itemid = 7453, - type = WEAPON_AXE, - level = 85, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiked squelcher - itemid = 7452, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- shadow sceptre - itemid = 7451, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - }, - { - -- hammer of prophecy - itemid = 7450, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crystal sword - itemid = 7449, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- elvish bow - itemid = 7438, - type = WEAPON_DISTANCE, - }, - { - -- sapphire hammer - itemid = 7437, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- angelic axe - itemid = 7436, - type = WEAPON_AXE, - level = 45, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- impaler - itemid = 7435, - type = WEAPON_AXE, - level = 85, - unproperly = true, - }, - { - -- royal axe - itemid = 7434, - type = WEAPON_AXE, - level = 75, - unproperly = true, - }, - { - -- ravenwing - itemid = 7433, - type = WEAPON_AXE, - level = 65, - unproperly = true, - }, - { - -- furry club - itemid = 7432, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- demonbone - itemid = 7431, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- dragonbone staff - itemid = 7430, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- blessed sceptre - itemid = 7429, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - }, - { - -- bonebreaker - itemid = 7428, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chaos mace - itemid = 7427, - type = WEAPON_CLUB, - level = 45, - unproperly = true, - }, - { - -- amber staff - itemid = 7426, - type = WEAPON_CLUB, - level = 40, - unproperly = true, - }, - { - -- taurus mace - itemid = 7425, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- lunar staff - itemid = 7424, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- skullcrusher - itemid = 7423, - type = WEAPON_CLUB, - level = 85, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- jade hammer - itemid = 7422, - type = WEAPON_CLUB, - level = 70, - unproperly = true, - }, - { - -- onyx flail - itemid = 7421, - type = WEAPON_CLUB, - level = 65, - unproperly = true, - }, - { - -- reaper's axe - itemid = 7420, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- dreaded cleaver - itemid = 7419, - type = WEAPON_AXE, - level = 40, - unproperly = true, - }, - { - -- nightmare blade - itemid = 7418, - type = WEAPON_SWORD, - level = 70, - unproperly = true, - }, - { - -- runed sword - itemid = 7417, - type = WEAPON_SWORD, - level = 65, - unproperly = true, - }, - { - -- bloody edge - itemid = 7416, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - }, - { - -- cranial basher - itemid = 7415, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - }, - { - -- abyss hammer - itemid = 7414, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- titan axe - itemid = 7413, - type = WEAPON_AXE, - level = 40, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- butcher's axe - itemid = 7412, - type = WEAPON_AXE, - level = 45, - unproperly = true, - }, - { - -- ornamented axe - itemid = 7411, - type = WEAPON_AXE, - level = 50, - unproperly = true, - }, - { - -- queen's sceptre - itemid = 7410, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - }, - { - -- northern star - itemid = 7409, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - }, - { - -- wyvern fang - itemid = 7408, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - }, - { - -- haunted blade - itemid = 7407, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blacksteel sword - itemid = 7406, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- havoc blade - itemid = 7405, - type = WEAPON_SWORD, - level = 70, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- assassin dagger - itemid = 7404, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - }, - { - -- berserker - itemid = 7403, - type = WEAPON_SWORD, - level = 65, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- dragon slayer - itemid = 7402, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- orcish maul - itemid = 7392, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - }, - { - -- thaian sword - itemid = 7391, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the justice seeker - itemid = 7390, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - }, - { - -- heroic axe - itemid = 7389, - type = WEAPON_AXE, - level = 60, - unproperly = true, - }, - { - -- vile axe - itemid = 7388, - type = WEAPON_AXE, - level = 55, - unproperly = true, - }, - { - -- diamond sceptre - itemid = 7387, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- mercenary sword - itemid = 7386, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crimson sword - itemid = 7385, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - }, - { - -- mystic blade - itemid = 7384, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - }, - { - -- relic sword - itemid = 7383, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - }, - { - -- demonrage sword - itemid = 7382, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mammoth whopper - itemid = 7381, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- headchopper - itemid = 7380, - type = WEAPON_AXE, - level = 35, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- brutetamer's staff - itemid = 7379, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- royal spear - itemid = 7378, - type = WEAPON_DISTANCE, - level = 25, - unproperly = true, - breakchance = 3, - }, - { - -- assassin star - itemid = 7368, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - breakchance = 33, - }, - { - -- enchanted spear - itemid = 7367, - type = WEAPON_DISTANCE, - level = 42, - unproperly = true, - breakchance = 1, - }, - { - -- onyx arrow - itemid = 7365, - type = WEAPON_AMMO, - level = 40, - unproperly = true, - action = "removecount", - }, - { - -- sniper arrow - itemid = 7364, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- piercing bolt - itemid = 7363, - type = WEAPON_AMMO, - level = 30, - unproperly = true, - action = "removecount", - }, - { - -- ruthless axe - itemid = 6553, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- infernal bolt - itemid = 6528, - type = WEAPON_AMMO, - level = 110, - unproperly = true, - action = "removecount", - }, - { - -- the avenger - itemid = 6527, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = WEAPON_SWORD, - }, - { - -- arbalest - itemid = 5803, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- banana staff - itemid = 3348, - type = WEAPON_CLUB, - }, - { - -- hunting spear - itemid = 3347, - type = WEAPON_DISTANCE, - level = 20, - unproperly = true, - breakchance = 6, - }, - { - -- ripper lance - itemid = 3346, - type = WEAPON_AXE, - }, - { - -- templar scytheblade - itemid = 3345, - type = WEAPON_SWORD, - }, - { - -- beastslayer axe - itemid = 3344, - type = WEAPON_AXE, - level = 30, - unproperly = true, - }, - { - -- lich staff - itemid = 3343, - type = WEAPON_CLUB, - level = 40, - unproperly = true, - }, - { - -- scythe - itemid = 3453, - type = WEAPON_CLUB, - }, - { - -- power bolt - itemid = 3450, - type = WEAPON_AMMO, - level = 55, - unproperly = true, - action = "removecount", - }, - { - -- arrow - itemid = 3447, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- bolt - itemid = 3446, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- bow - itemid = 3350, - type = WEAPON_DISTANCE, - }, - { - -- crossbow - itemid = 3349, - type = WEAPON_DISTANCE, - }, - { - -- war axe - itemid = 3342, - type = WEAPON_AXE, - level = 65, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- arcane staff - itemid = 3341, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - }, - { - -- heavy mace - itemid = 3340, - type = WEAPON_CLUB, - level = 70, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- djinn blade - itemid = 3339, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - }, - { - -- bone sword - itemid = 3338, - type = WEAPON_SWORD, - }, - { - -- bone club - itemid = 3337, - type = WEAPON_CLUB, - }, - { - -- studded club - itemid = 3336, - type = WEAPON_CLUB, - }, - { - -- twin axe - itemid = 3335, - type = WEAPON_AXE, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- pharaoh sword - itemid = 3334, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - }, - { - -- crystal mace - itemid = 3333, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - }, - { - -- hammer of wrath - itemid = 3332, - type = WEAPON_CLUB, - level = 65, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ravager's axe - itemid = 3331, - type = WEAPON_AXE, - level = 70, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- heavy machete - itemid = 3330, - type = WEAPON_SWORD, - }, - { - -- daramian axe - itemid = 3329, - type = WEAPON_AXE, - }, - { - -- daramian waraxe - itemid = 3328, - type = WEAPON_AXE, - level = 25, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- daramian mace - itemid = 3327, - type = WEAPON_CLUB, - }, - { - -- epee - itemid = 3326, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - }, - { - -- light mace - itemid = 3325, - type = WEAPON_CLUB, - }, - { - -- skull staff - itemid = 3324, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- dwarven axe - itemid = 3323, - type = WEAPON_AXE, - level = 20, - unproperly = true, - }, - { - -- dragon hammer - itemid = 3322, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- enchanted staff - itemid = 3321, - type = WEAPON_CLUB, - }, - { - -- fire axe - itemid = 3320, - type = WEAPON_AXE, - level = 35, - unproperly = true, - }, - { - -- stonecutter axe - itemid = 3319, - type = WEAPON_AXE, - level = 90, - unproperly = true, - }, - { - -- knight axe - itemid = 3318, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- barbarian axe - itemid = 3317, - type = WEAPON_AXE, - level = 20, - unproperly = true, - }, - { - -- orcish axe - itemid = 3316, - type = WEAPON_AXE, - }, - { - -- guardian halberd - itemid = 3315, - type = WEAPON_AXE, - level = 55, - unproperly = true, - }, - { - -- naginata - itemid = 3314, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- obsidian lance - itemid = 3313, - type = WEAPON_AXE, - level = 20, - unproperly = true, - }, - { - -- silver mace - itemid = 3312, - type = WEAPON_CLUB, - level = 45, - unproperly = true, - }, - { - -- clerical mace - itemid = 3311, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- iron hammer - itemid = 3310, - type = WEAPON_CLUB, - }, - { - -- thunder hammer - itemid = 3309, - type = WEAPON_CLUB, - level = 85, - unproperly = true, - }, - { - -- machete - itemid = 3308, - type = WEAPON_SWORD, - }, - { - -- scimitar - itemid = 3307, - type = WEAPON_SWORD, - }, - { - -- golden sickle - itemid = 3306, - type = WEAPON_AXE, - }, - { - -- battle hammer - itemid = 3305, - type = WEAPON_CLUB, - }, - { - -- crowbar - itemid = 3304, - type = WEAPON_CLUB, - }, - { - -- great axe - itemid = 3303, - type = WEAPON_AXE, - level = 95, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- dragon lance - itemid = 3302, - type = WEAPON_AXE, - level = 60, - unproperly = true, - }, - { - -- broadsword - itemid = 3301, - type = WEAPON_SWORD, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- katana - itemid = 3300, - type = WEAPON_SWORD, - }, - { - -- poison dagger - itemid = 3299, - type = WEAPON_SWORD, - }, - { - -- throwing knife - itemid = 3298, - type = WEAPON_DISTANCE, - breakchance = 7, - }, - { - -- serpent sword - itemid = 3297, - type = WEAPON_SWORD, - }, - { - -- warlord sword - itemid = 3296, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- bright sword - itemid = 3295, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - }, - { - -- short sword - itemid = 3294, - type = WEAPON_SWORD, - }, - { - -- sickle - itemid = 3293, - type = WEAPON_AXE, - }, - { - -- combat knife - itemid = 3292, - type = WEAPON_SWORD, - }, - { - -- knife - itemid = 3291, - type = WEAPON_SWORD, - }, - { - -- silver dagger - itemid = 3290, - type = WEAPON_SWORD, - }, - { - -- staff - itemid = 3289, - type = WEAPON_CLUB, - }, - { - -- magic sword - itemid = 3288, - type = WEAPON_SWORD, - level = 80, - unproperly = true, - }, - { - -- throwing star - itemid = 3287, - type = WEAPON_DISTANCE, - breakchance = 10, - }, - { - -- mace - itemid = 3286, - type = WEAPON_CLUB, - }, - { - -- longsword - itemid = 3285, - type = WEAPON_SWORD, - }, - { - -- ice rapier - itemid = 3284, - type = WEAPON_SWORD, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- carlin sword - itemid = 3283, - type = WEAPON_SWORD, - }, - { - -- morning star - itemid = 3282, - type = WEAPON_CLUB, - }, - { - -- giant sword - itemid = 3281, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fire sword - itemid = 3280, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - }, - { - -- war hammer - itemid = 3279, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- magic longsword - itemid = 3278, - type = WEAPON_SWORD, - level = 140, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spear - itemid = 3277, - type = WEAPON_DISTANCE, - breakchance = 3, - }, - { - -- hatchet - itemid = 3276, - type = WEAPON_AXE, - }, - { - -- double axe - itemid = 3275, - type = WEAPON_AXE, - level = 25, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe - itemid = 3274, - type = WEAPON_AXE, - }, - { - -- sabre - itemid = 3273, - type = WEAPON_SWORD, - }, - { - -- rapier - itemid = 3272, - type = WEAPON_SWORD, - }, - { - -- spike sword - itemid = 3271, - type = WEAPON_SWORD, - }, - { - -- club - itemid = 3270, - type = WEAPON_CLUB, - }, - { - -- halberd - itemid = 3269, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- hand axe - itemid = 3268, - type = WEAPON_AXE, - }, - { - -- dagger - itemid = 3267, - type = WEAPON_SWORD, - }, - { - -- battle axe - itemid = 3266, - type = WEAPON_AXE, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- two handed sword - itemid = 3265, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sword - itemid = 3264, - type = WEAPON_SWORD, - }, - { - -- giant smithhammer - itemid = 12510, - type = WEAPON_CLUB, - }, - { - -- wand of dragonbreath - itemid = 3075, - type = WEAPON_WAND, - wandType = "fire", - level = 13, - mana = 3, - damage = { 13, 25 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of vortex - itemid = 3074, - type = WEAPON_WAND, - wandType = "energy", - level = 6, - mana = 1, - damage = { 8, 18 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of cosmic energy - itemid = 3073, - type = WEAPON_WAND, - wandType = "energy", - level = 26, - mana = 8, - damage = { 37, 53 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of decay - itemid = 3072, - type = WEAPON_WAND, - wandType = "death", - level = 19, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of inferno - itemid = 3071, - type = WEAPON_WAND, - wandType = "fire", - level = 33, - mana = 8, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- moonlight rod - itemid = 3070, - type = WEAPON_WAND, - wandType = "ice", - level = 13, - mana = 3, - damage = { 13, 25 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- necrotic rod - itemid = 3069, - type = WEAPON_WAND, - wandType = "death", - level = 19, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- hailstorm rod - itemid = 3067, - type = WEAPON_WAND, - wandType = "ice", - level = 33, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- snakebit rod - itemid = 3066, - type = WEAPON_WAND, - wandType = "earth", - level = 6, - mana = 2, - damage = { 8, 18 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- terra rod - itemid = 3065, - type = WEAPON_WAND, - wandType = "earth", - level = 26, - mana = 8, - damage = { 37, 53 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- snowball - itemid = 2992, - type = WEAPON_DISTANCE, - action = "removecount", - }, - { - -- small stone - itemid = 1781, - type = WEAPON_DISTANCE, - breakchance = 3, - }, -} - -for _, w in ipairs(weapons) do - local weapon = Weapon(w.type) - weapon:id(w.itemid) - - if w.action then - weapon:action(w.action) - end - if w.breakchance then - weapon:breakChance(w.breakchance) - end - if w.level then - weapon:level(w.level) - end - if w.mana then - weapon:mana(w.mana) - end - if w.unproperly then - weapon:wieldUnproperly(w.unproperly) - end - if w.damage then - weapon:damage(w.damage[1], w.damage[2]) - end - if w.wandType then - weapon:element(w.wandType) - end - if w.vocation then - for _, v in ipairs(w.vocation) do - weapon:vocation(v[1], v[2] or false, v[3] or false) - end - end - - weapon:register() -end diff --git a/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua b/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua deleted file mode 100644 index 83b78dce5bf..00000000000 --- a/data-otservbr-global/scripts/movements/equipment/unscripted_equipments.lua +++ /dev/null @@ -1,20059 +0,0 @@ -local items = { - { - -- sanguine galoshes - itemid = 43887, - type = "equip", - slot = "feet", - level = 500, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- sanguine galoshes - itemid = 43887, - type = "deequip", - slot = "feet", - level = 500, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- grand sanguine rod - itemid = 43886, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- grand sanguine rod - itemid = 43886, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- sanguine rod - itemid = 43885, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- sanguine rod - itemid = 43885, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- sanguine boots - itemid = 43884, - type = "equip", - slot = "feet", - level = 500, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- sanguine boots - itemid = 43884, - type = "deequip", - slot = "feet", - level = 500, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- grand sanguine coil - itemid = 43883, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- grand sanguine coil - itemid = 43883, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- sanguine coil - itemid = 43882, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- sanguine coil - itemid = 43882, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- sanguine Greaves - itemid = 43881, - type = "equip", - slot = "legs", - level = 500, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine Greaves - itemid = 43881, - type = "deequip", - slot = "legs", - level = 500, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- grand sanguine crossbow - itemid = 43880, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- grand sanguine crossbow - itemid = 43880, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine crossbow - itemid = 43879, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine crossbow - itemid = 43879, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- grand sanguine bow - itemid = 43878, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- grand sanguine bow - itemid = 43878, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine bow - itemid = 43877, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine bow - itemid = 43877, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine legs - itemid = 43876, - type = "equip", - slot = "legs", - level = 500, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine legs - itemid = 43876, - type = "deequip", - slot = "legs", - level = 500, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine battleaxe - itemid = 43875, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine battleaxe - itemid = 43875, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine battleaxe - itemid = 43874, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine battleaxe - itemid = 43874, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine bludgeon - itemid = 43873, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine bludgeon - itemid = 43873, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine bludgeon - itemid = 43872, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine bludgeon - itemid = 43872, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine razor - itemid = 43871, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine razor - itemid = 43871, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine razor - itemid = 43870, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine razor - itemid = 43870, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine hatchet - itemid = 43869, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine hatchet - itemid = 43869, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine hatchet - itemid = 43868, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine hatchet - itemid = 43868, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine cudgel - itemid = 43867, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine cudgel - itemid = 43867, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine cudgel - itemid = 43866, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine cudgel - itemid = 43866, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine blade - itemid = 43865, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine blade - itemid = 43865, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine blade - itemid = 43864, - type = "equip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine blade - itemid = 43864, - type = "deequip", - slot = "hand", - level = 600, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mutant bone kilt - itemid = 40595, - type = "equip", - slot = "legs", - level = 300, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- mutant bone kilt - itemid = 40595, - type = "deequip", - slot = "legs", - level = 300, - }, - { - -- alchemist's notepad - itemid = 40594, - type = "equip", - slot = "shield", - level = 250, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- alchemist's notepad - itemid = 40594, - type = "deequip", - slot = "shield", - level = 250, - }, - { - -- mutant bone boots - itemid = 40593, - type = "equip", - slot = "feet", - level = 250, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- mutant bone boots - itemid = 40593, - type = "deequip", - slot = "feet", - level = 250, - }, - { - -- alchemist's boots - itemid = 40592, - type = "equip", - slot = "feet", - level = 250, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- alchemist's boots - itemid = 40592, - type = "deequip", - slot = "feet", - level = 250, - }, - { - -- mutated skin armor - itemid = 40591, - type = "equip", - slot = "armor", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mutated skin armor - itemid = 40591, - type = "deequip", - slot = "armor", - level = 270, - }, - { - -- Mutated Skin Legs - itemid = 40590, - type = "equip", - slot = "legs", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- Mutated Skin Legs - itemid = 40590, - type = "deequip", - slot = "legs", - level = 270, - }, - { - -- Stitched Mutant Hide Legs - itemid = 40589, - type = "equip", - slot = "legs", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Stitched Mutant Hide Legs - itemid = 40589, - type = "deequip", - slot = "legs", - level = 270, - }, - { - -- Antler-Horn Helmet - itemid = 40588, - type = "equip", - slot = "head", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Antler-Horn Helmet - itemid = 40588, - type = "deequip", - slot = "head", - level = 250, - }, - { - -- broken iks cuirass - itemid = 40533, - type = "equip", - slot = "armor", - }, - { - -- broken iks cuirass - itemid = 40533, - type = "deequip", - slot = "armor", - }, - { - -- broken iks faulds - itemid = 40531, - type = "equip", - slot = "legs", - }, - { - -- broken iks faulds - itemid = 40531, - type = "deequip", - slot = "legs", - }, - { - -- broken iks sandals - itemid = 40534, - type = "equip", - slot = "feet", - }, - { - -- broken iks sandals - itemid = 40534, - type = "deequip", - slot = "feet", - }, - { - -- broken macuahuitl - itemid = 40530, - type = "equip", - slot = "hand", - }, - { - -- broken macuahuitl - itemid = 40530, - type = "deequip", - slot = "hand", - }, - { - -- 25 years backpack - itemid = 39693, - type = "equip", - slot = "backpack", - }, - { - -- 25 years backpack - itemid = 39693, - type = "deequip", - slot = "backpack", - }, - { - -- turtle amulet - itemid = 39235, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- turtle amulet - itemid = 39235, - type = "deequip", - slot = "necklace", - }, - { - -- enchanted turtle amulet - itemid = 39234, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted turtle amulet - itemid = 39234, - type = "deequip", - slot = "necklace", - }, - { - -- enchanted turtle amulet - itemid = 39233, - type = "equip", - slot = "necklace", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted turtle amulet - itemid = 39233, - type = "deequip", - slot = "necklace", - }, - { - -- arboreal ring - itemid = 39188, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- arboreal ring - itemid = 39188, - type = "deequip", - slot = "ring", - }, - { - -- charged arboreal ring - itemid = 39187, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- charged arboreal ring - itemid = 39187, - type = "deequip", - slot = "ring", - }, - { - -- charged arboreal ring - itemid = 39186, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- charged arboreal ring - itemid = 39186, - type = "deequip", - slot = "ring", - }, - { - -- arcanomancer sigil - itemid = 39185, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- arcanomancer sigil - itemid = 39185, - type = "deequip", - slot = "ring", - }, - { - -- charged arcanomancer sigil - itemid = 39184, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- charged arcanomancer sigil - itemid = 39184, - type = "deequip", - slot = "ring", - }, - { - -- charged arcanomancer sigil - itemid = 39183, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- charged arcanomancer sigil - itemid = 39183, - type = "deequip", - slot = "ring", - }, - { - -- alicorn ring - itemid = 39182, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- alicorn ring - itemid = 39182, - type = "deequip", - slot = "ring", - }, - { - -- charged alicorn ring - itemid = 39181, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- charged alicorn ring - itemid = 39181, - type = "deequip", - slot = "ring", - }, - { - -- charged alicorn ring - itemid = 39180, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- charged alicorn ring - itemid = 39180, - type = "deequip", - slot = "ring", - }, - { - -- spiritthorn ring - itemid = 39179, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiritthorn ring - itemid = 39179, - type = "deequip", - slot = "ring", - }, - { - -- charged spiritthorn ring - itemid = 39178, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- charged spiritthorn ring - itemid = 39178, - type = "deequip", - slot = "ring", - }, - { - -- charged spiritthorn ring - itemid = 39177, - type = "equip", - slot = "ring", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- charged spiritthorn ring - itemid = 39177, - type = "deequip", - slot = "ring", - }, - { - -- midnight sarong - itemid = 39167, - type = "equip", - slot = "legs", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- midnight sarong - itemid = 39167, - type = "deequip", - slot = "legs", - }, - { - -- dawnfire pantaloons - itemid = 39166, - type = "equip", - slot = "legs", - level = 300, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- dawnfire pantaloons - itemid = 39166, - type = "deequip", - slot = "legs", - }, - { - -- midnight tunic - itemid = 39165, - type = "equip", - slot = "armor", - level = 300, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- midnight tunic - itemid = 39165, - type = "deequip", - slot = "armor", - }, - { - -- dawnfire sherwani - itemid = 39164, - type = "equip", - slot = "armor", - level = 270, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- dawnfire sherwani - itemid = 39164, - type = "deequip", - slot = "armor", - }, - { - -- naga rod - itemid = 39163, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- naga rod - itemid = 39163, - type = "deequip", - slot = "hand", - }, - { - -- naga wand - itemid = 39162, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- naga wand - itemid = 39162, - type = "deequip", - slot = "hand", - }, - { - -- feverbloom boots - itemid = 39161, - type = "equip", - slot = "feet", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- feverbloom boots - itemid = 39161, - type = "deequip", - slot = "feet", - }, - { - -- naga quiver - itemid = 39160, - type = "equip", - slot = "right-hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- naga quiver - itemid = 39160, - type = "deequip", - slot = "right-hand", - }, - { - -- naga crossbow - itemid = 39159, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- naga crossbow - itemid = 39159, - type = "deequip", - slot = "hand", - }, - { - -- frostflower boots - itemid = 39158, - type = "equip", - slot = "feet", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostflower boots - itemid = 39158, - type = "deequip", - slot = "feet", - }, - { - -- naga club - itemid = 39157, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga club - itemid = 39157, - type = "deequip", - slot = "hand", - }, - { - -- naga axe - itemid = 39156, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga axe - itemid = 39156, - type = "deequip", - slot = "hand", - }, - { - -- naga sword - itemid = 39155, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga sword - itemid = 39155, - type = "deequip", - slot = "hand", - }, - { - -- arboreal tome - itemid = 39154, - type = "equip", - slot = "shield", - level = 400, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- arboreal tome - itemid = 39154, - type = "deequip", - slot = "shield", - }, - { - -- arboreal crown - itemid = 39153, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- arboreal crown - itemid = 39153, - type = "deequip", - slot = "head", - }, - { - -- arcanomancer folio - itemid = 39152, - type = "equip", - slot = "shield", - level = 400, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- arcanomancer folio - itemid = 39152, - type = "deequip", - slot = "shield", - }, - { - -- arcanomancer regalia - itemid = 39151, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- arcanomancer regalia - itemid = 39151, - type = "deequip", - slot = "head", - }, - { - -- alicorn quiver - itemid = 39150, - type = "equip", - slot = "right-hand", - level = 400, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- alicorn quiver - itemid = 39150, - type = "deequip", - slot = "right-hand", - }, - { - -- alicorn headguard - itemid = 39149, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- alicorn headguard - itemid = 39149, - type = "deequip", - slot = "head", - }, - { - -- spiritthorn helmet - itemid = 39148, - type = "equip", - slot = "head", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiritthorn helmet - itemid = 39148, - type = "deequip", - slot = "head", - }, - { - -- spiritthorn armor - itemid = 39147, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Knight", true, true }, - { "Elite Knight" }, - }, - }, - { - -- spiritthorn armor - itemid = 39147, - type = "deequip", - slot = "armor", - }, - { - -- green demon slippers - itemid = 37610, - type = "equip", - slot = "feet", - }, - { - -- green demon slippers - itemid = 37610, - type = "deequip", - slot = "feet", - }, - { - -- Morshabaal's mask - itemid = 37611, - type = "equip", - slot = "shield", - level = 150, - }, - { - -- Morshabaal's mask - itemid = 37611, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- green demon helmet - itemid = 37609, - type = "equip", - slot = "head", - }, - { - -- green demon helmet - itemid = 37609, - type = "deequip", - slot = "head", - }, - { - -- green demon armor - itemid = 37608, - type = "equip", - slot = "armor", - }, - { - -- green demon armor - itemid = 37608, - type = "deequip", - slot = "armor", - }, - { - -- green demon legs - itemid = 37607, - type = "equip", - slot = "legs", - }, - { - -- green demon legs - itemid = 37607, - type = "deequip", - slot = "legs", - }, - { - -- changing backpack - itemid = 37536, - type = "equip", - slot = "backpack", - }, - { - -- changing backpack - itemid = 37536, - type = "deequip", - slot = "backpack", - }, - { - -- gilded eldritch rod - itemid = 36675, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- gilded eldritch rod - itemid = 36675, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch rod - itemid = 36674, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch rod - itemid = 36674, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch tome - itemid = 36673, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch tome - itemid = 36673, - type = "deequip", - slot = "shield", - level = 300, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch folio - itemid = 36672, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch folio - itemid = 36672, - type = "deequip", - slot = "shield", - level = 300, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch hood - itemid = 36671, - type = "equip", - slot = "head", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch hood - itemid = 36671, - type = "deequip", - slot = "head", - level = 250, - vocation = { - { "Druid", true, true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch cowl - itemid = 36670, - type = "equip", - slot = "head", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch cowl - itemid = 36670, - type = "deequip", - slot = "head", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- gilded eldritch wand - itemid = 36669, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- gilded eldritch wand - itemid = 36669, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch wand - itemid = 36668, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch wand - itemid = 36668, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Sorcerer", true, true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch breeches - itemid = 36667, - type = "equip", - slot = "legs", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch breeches - itemid = 36667, - type = "deequip", - slot = "legs", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch quiver - itemid = 36666, - type = "equip", - slot = "right-hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch quiver - itemid = 36666, - type = "deequip", - slot = "right-hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- gilded eldritch bow - itemid = 36665, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- gilded eldritch bow - itemid = 36665, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch bow - itemid = 36664, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch bow - itemid = 36664, - type = "deequip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch cuirass - itemid = 36663, - type = "equip", - slot = "armor", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch cuirass - itemid = 36663, - type = "deequip", - slot = "armor", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch greataxe - itemid = 36662, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch greataxe - itemid = 36662, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch greataxe - itemid = 36661, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch greataxe - itemid = 36661, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch warmace - itemid = 36660, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch warmace - itemid = 36660, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch warmace - itemid = 36659, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch warmace - itemid = 36659, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch claymore - itemid = 36658, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch claymore - itemid = 36658, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch claymore - itemid = 36657, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch claymore - itemid = 36657, - type = "deequip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch shield - itemid = 36656, - type = "equip", - slot = "shield", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch shield - itemid = 36656, - type = "deequip", - slot = "shield", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spectral bolt (no decay) - itemid = 35902, - type = "equip", - slot = "ammo", - }, - { - -- spectral bolt (no decay) - itemid = 35902, - type = "deequip", - slot = "ammo", - }, - { - -- red quiver - itemid = 35849, - type = "equip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- red quiver - itemid = 35849, - type = "deequip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- blue quiver - itemid = 35848, - type = "equip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- blue quiver - itemid = 35848, - type = "deequip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- quiver - itemid = 35562, - type = "equip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- quiver - itemid = 35562, - type = "deequip", - slot = "right-hand", - vocation = { - { "None", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- jungle quiver - itemid = 35524, - type = "equip", - slot = "right-hand", - level = 150, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- jungle quiver - itemid = 35524, - type = "deequip", - slot = "right-hand", - level = 150, - vocation = { - { "Paladin", true, true }, - { "Royal Paladin" }, - }, - }, - { - -- exotic amulet - itemid = 35523, - type = "equip", - slot = "necklace", - level = 180, - }, - { - -- exotic amulet - itemid = 35523, - type = "deequip", - slot = "necklace", - }, - { - -- jungle wand - itemid = 35522, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- jungle wand - itemid = 35522, - type = "deequip", - slot = "hand", - }, - { - -- jungle rod - itemid = 35521, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- jungle rod - itemid = 35521, - type = "deequip", - slot = "hand", - }, - { - -- make-do boots - itemid = 35520, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- make-do boots - itemid = 35520, - type = "deequip", - slot = "feet", - }, - { - -- makeshift boots - itemid = 35519, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- makeshift boots - itemid = 35519, - type = "deequip", - slot = "feet", - }, - { - -- jungle bow - itemid = 35518, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- jungle bow - itemid = 35518, - type = "deequip", - slot = "hand", - }, - { - -- bast legs - itemid = 35517, - type = "equip", - slot = "legs", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bast legs - itemid = 35517, - type = "deequip", - slot = "legs", - }, - { - -- exotic legs - itemid = 35516, - type = "equip", - slot = "legs", - level = 130, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- exotic legs - itemid = 35516, - type = "deequip", - slot = "legs", - }, - { - -- throwing axe - itemid = 35515, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- throwing axe - itemid = 35515, - type = "deequip", - slot = "hand", - }, - { - -- jungle flail - itemid = 35514, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- jungle flail - itemid = 35514, - type = "deequip", - slot = "hand", - }, - { - -- lion hammer - itemid = 34254, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion hammer - itemid = 34254, - type = "deequip", - slot = "hand", - }, - { - -- lion axe - itemid = 34253, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion axe - itemid = 34253, - type = "deequip", - slot = "hand", - }, - { - -- lion amulet - itemid = 34158, - type = "equip", - slot = "necklace", - level = 230, - }, - { - -- lion amulet - itemid = 34158, - type = "deequip", - slot = "necklace", - level = 230, - }, - { - -- lion plate - itemid = 34157, - type = "deequip", - slot = "armor", - level = 270, - }, - { - -- lion plate - itemid = 34157, - type = "equip", - slot = "armor", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion spangenhelm - itemid = 34156, - type = "deequip", - slot = "head", - }, - { - -- lion spangenhelm - itemid = 34156, - type = "equip", - slot = "head", - level = 230, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- lion longsword - itemid = 34155, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion longsword - itemid = 34155, - type = "deequip", - slot = "hand", - }, - { - -- lion shield - itemid = 34154, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion shield - itemid = 34154, - type = "deequip", - slot = "hand", - }, - { - -- lion spellbook - itemid = 34153, - type = "deequip", - slot = "shield", - level = 220, - }, - { - -- lion spellbook - itemid = 34153, - type = "equip", - slot = "shield", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lion wand - itemid = 34152, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- lion wand - itemid = 34152, - type = "deequip", - slot = "hand", - }, - { - -- lion rod - itemid = 34151, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- lion rod - itemid = 34151, - type = "deequip", - slot = "hand", - }, - { - -- lion longbow - itemid = 34150, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- lion longbow - itemid = 34150, - type = "deequip", - slot = "hand", - }, - { - -- soulbastion shield - itemid = 34099, - type = "deequip", - slot = "shield", - }, - { - -- soulbastion shield - itemid = 34099, - type = "equip", - slot = "shield", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- pair of soulstalkers - itemid = 34098, - type = "deequip", - slot = "feet", - }, - { - -- pair of soulstalkers - itemid = 34098, - type = "equip", - slot = "feet", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- pair of soulwalkers - itemid = 34097, - type = "deequip", - slot = "feet", - }, - { - -- pair of soulwalkers - itemid = 34097, - type = "equip", - slot = "feet", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulshroud armor - itemid = 34096, - type = "deequip", - slot = "armor", - }, - { - -- soulshroud armor - itemid = 34096, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soulmantle - itemid = 34095, - type = "deequip", - slot = "armor", - }, - { - -- soulmantle - itemid = 34095, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulshell armor - itemid = 34094, - type = "deequip", - slot = "armor", - level = 400, - }, - { - -- soulshell armor - itemid = 34094, - type = "equip", - slot = "armor", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulstrider legs - itemid = 34093, - type = "deequip", - slot = "legs", - level = 400, - }, - { - -- soulstrider legs - itemid = 34093, - type = "equip", - slot = "legs", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soulshanks legs - itemid = 34092, - type = "deequip", - slot = "legs", - level = 400, - }, - { - -- soulshanks legs - itemid = 34092, - type = "equip", - slot = "legs", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulhexer - itemid = 34091, - type = "deequip", - slot = "hand", - }, - { - -- soulhexer - itemid = 34091, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soultainter - itemid = 34090, - type = "deequip", - slot = "hand", - }, - { - -- soultainter - itemid = 34090, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulpiercer - itemid = 34089, - type = "deequip", - slot = "hand", - }, - { - -- soulpiercer - itemid = 34089, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulbleeder - itemid = 34088, - type = "deequip", - slot = "hand", - }, - { - -- soulbleeder - itemid = 34088, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulmaimer - itemid = 34087, - type = "deequip", - slot = "hand", - }, - { - -- soulmaimer - itemid = 34087, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcrusher - itemid = 34086, - type = "deequip", - slot = "hand", - }, - { - -- soulcrusher - itemid = 34086, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- souleater - itemid = 34085, - type = "deequip", - slot = "hand", - }, - { - -- souleater - itemid = 34085, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulbiter - itemid = 34084, - type = "deequip", - slot = "hand", - }, - { - -- soulbiter - itemid = 34084, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulshredder - itemid = 34083, - type = "deequip", - slot = "hand", - }, - { - -- soulshredder - itemid = 34083, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcutter - itemid = 34082, - type = "deequip", - slot = "hand", - }, - { - -- soulcutter - itemid = 34082, - type = "equip", - slot = "hand", - level = 400, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion ring - itemid = 34080, - type = "deequip", - slot = "ring", - }, - { - -- lion ring - itemid = 34080, - type = "equip", - slot = "ring", - }, - { - -- Lit Torch (Sparkling) - itemid = 34016, - type = "equip", - slot = "ammo", - }, - { - -- Lit Torch (Sparkling) - itemid = 34016, - type = "deequip", - slot = "ammo", - }, - { - -- pair of old bracers - itemid = 32705, - type = "equip", - slot = "armor", - }, - { - -- pair of old bracers - itemid = 32705, - type = "deequip", - slot = "armor", - }, - { - -- ring of souls - itemid = 32636, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- ring of souls - itemid = 32636, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- enchanted ring of souls - itemid = 32635, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- enchanted ring of souls - itemid = 32635, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- spooky hood - itemid = 32630, - type = "equip", - slot = "head", - }, - { - -- spooky hood - itemid = 32630, - type = "deequip", - slot = "head", - }, - { - -- ghost chestplate - itemid = 32628, - type = "equip", - slot = "armor", - level = 230, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ghost chestplate - itemid = 32628, - type = "deequip", - slot = "armor", - level = 230, - }, - { - -- enchanted ring of souls - itemid = 32621, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- enchanted ring of souls - itemid = 32621, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- ghost backpack - itemid = 32620, - type = "equip", - slot = "backpack", - }, - { - -- ghost backpack - itemid = 32620, - type = "deequip", - slot = "backpack", - }, - { - -- pair of nightmare boots - itemid = 32619, - type = "equip", - slot = "feet", - level = 140, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- pair of nightmare boots - itemid = 32619, - type = "deequip", - slot = "feet", - level = 140, - }, - { - -- soulful legs - itemid = 32618, - type = "equip", - slot = "legs", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- soulful legs - itemid = 32618, - type = "deequip", - slot = "legs", - level = 180, - }, - { - -- fabulous legs - itemid = 32617, - type = "equip", - slot = "legs", - level = 225, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- fabulous legs - itemid = 32617, - type = "deequip", - slot = "legs", - level = 225, - }, - { - -- phantasmal axe - itemid = 32616, - type = "equip", - slot = "hand", - level = 180, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- phantasmal axe - itemid = 32616, - type = "deequip", - slot = "hand", - }, - { - -- burial shroud - itemid = 32585, - type = "equip", - slot = "armor", - }, - { - -- burial shroud - itemid = 32585, - type = "deequip", - slot = "armor", - }, - { - -- Traditional Gamsbart Hat - itemid = 32100, - type = "equip", - slot = "head", - }, - { - -- Traditional Gamsbart Hat - itemid = 32100, - type = "deequip", - slot = "head", - }, - { - -- traditional shirt - itemid = 32099, - type = "equip", - slot = "armor", - }, - { - -- traditional shirt - itemid = 32099, - type = "deequip", - slot = "armor", - }, - { - -- lederhosen - itemid = 32097, - type = "equip", - slot = "legs", - }, - { - -- lederhosen - itemid = 32097, - type = "deequip", - slot = "legs", - }, - { - -- traditional leather shoes - itemid = 32098, - type = "equip", - slot = "feet", - }, - { - -- traditional leather shoes - itemid = 32098, - type = "deequip", - slot = "feet", - }, - { - -- meat hammer - itemid = 32093, - type = "equip", - slot = "hand", - }, - { - -- meat hammer - itemid = 32093, - type = "deequip", - slot = "hand", - }, - { - -- note about two souls - itemid = 31676, - type = "equip", - slot = "necklace", - }, - { - -- note about two souls - itemid = 31676, - type = "deequip", - slot = "necklace", - }, - { - -- the cobra amulet - itemid = 31631, - type = "equip", - slot = "necklace", - level = 250, - }, - { - -- the cobra amulet - itemid = 31631, - type = "deequip", - slot = "necklace", - level = 250, - }, - { - -- winged backpack - itemid = 31625, - type = "equip", - slot = "backpack", - }, - { - -- winged backpack - itemid = 31625, - type = "deequip", - slot = "backpack", - }, - { - -- blister ring - itemid = 31621, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- blister ring - itemid = 31621, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- winged boots - itemid = 31617, - type = "equip", - slot = "feet", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- winged boots - itemid = 31617, - type = "deequip", - slot = "feet", - level = 220, - }, - { - -- enchanted blister ring - itemid = 31616, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- enchanted blister ring - itemid = 31616, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- tagralt blade - itemid = 31614, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- tagralt blade - itemid = 31614, - type = "deequip", - slot = "hand", - }, - { - -- toga mortis - itemid = 31583, - type = "equip", - slot = "armor", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- toga mortis - itemid = 31583, - type = "deequip", - slot = "armor", - level = 220, - }, - { - -- galea mortis - itemid = 31582, - type = "equip", - slot = "head", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- galea mortis - itemid = 31582, - type = "deequip", - slot = "head", - level = 220, - }, - { - -- bow of cataclysm - itemid = 31581, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of cataclysm - itemid = 31581, - type = "deequip", - slot = "hand", - }, - { - -- mortal mace - itemid = 31580, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mortal mace - itemid = 31580, - type = "deequip", - slot = "hand", - }, - { - -- embrace of nature - itemid = 31579, - type = "equip", - slot = "armor", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- embrace of nature - itemid = 31579, - type = "deequip", - slot = "armor", - level = 220, - }, - { - -- bear skin - itemid = 31578, - type = "equip", - slot = "armor", - level = 230, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- bear skin - itemid = 31578, - type = "deequip", - slot = "armor", - level = 230, - }, - { - -- terra helmet - itemid = 31577, - type = "equip", - slot = "head", - level = 230, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- terra helmet - itemid = 31577, - type = "deequip", - slot = "head", - level = 230, - }, - { - -- enchanted blister ring - itemid = 31557, - type = "equip", - slot = "ring", - level = 220, - }, - { - -- enchanted blister ring - itemid = 31557, - type = "deequip", - slot = "ring", - level = 220, - }, - { - -- rainbow amulet - itemid = 31556, - type = "equip", - slot = "necklace", - level = 220, - }, - { - -- rainbow amulet - itemid = 31556, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- sphinx tiara - itemid = 31438, - type = "equip", - slot = "head", - }, - { - -- sphinx tiara - itemid = 31438, - type = "deequip", - slot = "head", - }, - { - -- gryphon mask - itemid = 31433, - type = "equip", - slot = "head", - }, - { - -- gryphon mask - itemid = 31433, - type = "deequip", - slot = "head", - }, - { - -- symbol of sun and sea - itemid = 31431, - type = "equip", - slot = "ring", - }, - { - -- symbol of sun and sea - itemid = 31431, - type = "deequip", - slot = "ring", - }, - { - -- silver mask - itemid = 31370, - type = "equip", - slot = "head", - }, - { - -- silver mask - itemid = 31370, - type = "deequip", - slot = "head", - }, - { - -- ring of secret thoughts - itemid = 31306, - type = "equip", - slot = "ring", - }, - { - -- ring of secret thoughts - itemid = 31306, - type = "deequip", - slot = "ring", - }, - { - -- jade amulet - itemid = 31268, - type = "equip", - slot = "necklace", - }, - { - -- jade amulet - itemid = 31268, - type = "deequip", - slot = "necklace", - }, - { - -- ring of secret thoughts - itemid = 31263, - type = "equip", - slot = "ring", - }, - { - -- ring of secret thoughts - itemid = 31263, - type = "deequip", - slot = "ring", - }, - { - -- enchanted theurgic amulet - itemid = 30403, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- enchanted theurgic amulet - itemid = 30403, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- enchanted theurgic amulet - itemid = 30402, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- enchanted theurgic amulet - itemid = 30402, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- amulet of theurgy - itemid = 30401, - type = "equip", - slot = "necklace", - level = 220, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- amulet of theurgy - itemid = 30401, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- cobra rod - itemid = 30400, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- cobra rod - itemid = 30400, - type = "deequip", - slot = "hand", - level = 220, - }, - { - -- cobra wand - itemid = 30399, - type = "equip", - slot = "hand", - level = 270, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- cobra wand - itemid = 30399, - type = "deequip", - slot = "hand", - level = 270, - }, - { - -- cobra sword - itemid = 30398, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra sword - itemid = 30398, - type = "deequip", - slot = "hand", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra hood - itemid = 30397, - type = "equip", - slot = "head", - level = 270, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra hood - itemid = 30397, - type = "deequip", - slot = "head", - level = 270, - }, - { - -- cobra axe - itemid = 30396, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra axe - itemid = 30396, - type = "deequip", - slot = "hand", - }, - { - -- cobra club - itemid = 30395, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra club - itemid = 30395, - type = "deequip", - slot = "hand", - }, - { - -- cobra boots - itemid = 30394, - type = "equip", - slot = "feet", - level = 220, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra boots - itemid = 30394, - type = "deequip", - slot = "feet", - level = 220, - }, - { - -- cobra crossbow - itemid = 30393, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- cobra crossbow - itemid = 30393, - type = "deequip", - slot = "hand", - }, - { - -- rainbow necklace - itemid = 30323, - type = "equip", - slot = "necklace", - level = 220, - }, - { - -- rainbow necklace - itemid = 30323, - type = "deequip", - slot = "necklace", - level = 220, - }, - { - -- ice hatchet - itemid = 30283, - type = "equip", - slot = "hand", - }, - { - -- ice hatchet - itemid = 30283, - type = "deequip", - slot = "hand", - }, - { - -- frozen claw - itemid = 30279, - type = "equip", - slot = "ring", - }, - { - -- frozen claw - itemid = 30279, - type = "deequip", - slot = "ring", - }, - { - -- the crown of the percht queen - itemid = 30276, - type = "equip", - slot = "head", - }, - { - -- the crown of the percht queen - itemid = 30276, - type = "deequip", - slot = "head", - }, - { - -- the crown of the percht queen - itemid = 30275, - type = "equip", - slot = "head", - }, - { - -- the crown of the percht queen - itemid = 30275, - type = "deequip", - slot = "head", - }, - { - -- festive backpack - itemid = 30197, - type = "equip", - slot = "backpack", - }, - { - -- festive backpack - itemid = 30197, - type = "deequip", - slot = "backpack", - }, - { - -- yetislippers - itemid = 30196, - type = "equip", - slot = "feet", - }, - { - -- yetislippers - itemid = 30196, - type = "deequip", - slot = "feet", - }, - { - -- enchanted pendulet - itemid = 30345, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted pendulet - itemid = 30345, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- enchanted pendulet - itemid = 30344, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted pendulet - itemid = 30344, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- enchanted sleep shawl - itemid = 30343, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted sleep shawl - itemid = 30343, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- enchanted sleep shawl - itemid = 30342, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted sleep shawl - itemid = 30342, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- shield of endless search - itemid = 30181, - type = "equip", - slot = "shield", - }, - { - -- shield of endless search - itemid = 30181, - type = "deequip", - slot = "shield", - }, - { - -- spirit guide - itemid = 29431, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spirit guide - itemid = 29431, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- ectoplasmic shield - itemid = 29430, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ectoplasmic shield - itemid = 29430, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- pendulet - itemid = 29429, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- pendulet - itemid = 29429, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- sleep shawl - itemid = 29428, - type = "equip", - slot = "necklace", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- sleep shawl - itemid = 29428, - type = "deequip", - slot = "necklace", - level = 180, - }, - { - -- dark whispers - itemid = 29427, - type = "equip", - slot = "head", - level = 180, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- dark whispers - itemid = 29427, - type = "deequip", - slot = "head", - level = 180, - }, - { - -- brain in a jar - itemid = 29426, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- brain in a jar - itemid = 29426, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- energized limb - itemid = 29425, - type = "equip", - slot = "hand", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- energized limb - itemid = 29425, - type = "deequip", - slot = "hand", - level = 180, - }, - { - -- pair of dreamwalkers - itemid = 29424, - type = "equip", - slot = "feet", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- pair of dreamwalkers - itemid = 29424, - type = "deequip", - slot = "feet", - level = 180, - }, - { - -- dream shroud - itemid = 29423, - type = "equip", - slot = "armor", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- dream shroud - itemid = 29423, - type = "deequip", - slot = "armor", - level = 180, - }, - { - -- winterblade - itemid = 29422, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- winterblade - itemid = 29422, - type = "deequip", - slot = "hand", - }, - { - -- summerblade - itemid = 29421, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- summerblade - itemid = 29421, - type = "deequip", - slot = "hand", - }, - { - -- shoulder plate - itemid = 29420, - type = "equip", - slot = "shield", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- shoulder plate - itemid = 29420, - type = "deequip", - slot = "shield", - level = 180, - }, - { - -- resizer - itemid = 29419, - type = "equip", - slot = "hand", - level = 230, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- resizer - itemid = 29419, - type = "deequip", - slot = "hand", - }, - { - -- living armor - itemid = 29418, - type = "equip", - slot = "armor", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- living armor - itemid = 29418, - type = "deequip", - slot = "armor", - level = 180, - }, - { - -- living vine bow - itemid = 29417, - type = "equip", - slot = "hand", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- living vine bow - itemid = 29417, - type = "deequip", - slot = "hand", - level = 220, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- golden axe - itemid = 29286, - type = "equip", - slot = "hand", - }, - { - -- golden axe - itemid = 29286, - type = "deequip", - slot = "hand", - }, - { - -- book backpack - itemid = 28571, - type = "equip", - slot = "backpack", - }, - { - -- book backpack - itemid = 28571, - type = "deequip", - slot = "backpack", - }, - { - -- wand of destruction test - itemid = 28479, - type = "equip", - slot = "hand", - }, - { - -- wand of destruction test - itemid = 28479, - type = "deequip", - slot = "hand", - }, - { - -- umbral master bow test - itemid = 28478, - type = "equip", - slot = "hand", - }, - { - -- umbral master bow test - itemid = 28478, - type = "deequip", - slot = "hand", - }, - { - -- ornate testtplate - itemid = 28475, - type = "equip", - slot = "armor", - }, - { - -- ornate testtplate - itemid = 28475, - type = "deequip", - slot = "armor", - }, - { - -- sorcerer test weapon - itemid = 28466, - type = "equip", - slot = "hand", - }, - { - -- sorcerer test weapon - itemid = 28466, - type = "deequip", - slot = "hand", - }, - { - -- bow of destruction test - itemid = 28465, - type = "equip", - slot = "hand", - }, - { - -- bow of destruction test - itemid = 28465, - type = "deequip", - slot = "hand", - }, - { - -- test weapon for knights - itemid = 28464, - type = "equip", - slot = "hand", - }, - { - -- test weapon for knights - itemid = 28464, - type = "deequip", - slot = "hand", - }, - { - -- sulphurous demonbone - itemid = 28832, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- sulphurous demonbone - itemid = 28832, - type = "deequip", - slot = "hand", - }, - { - -- unliving demonbone - itemid = 28831, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- unliving demonbone - itemid = 28831, - type = "deequip", - slot = "hand", - }, - { - -- energized demonbone - itemid = 28830, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- energized demonbone - itemid = 28830, - type = "deequip", - slot = "hand", - }, - { - -- rotten demonbone - itemid = 28829, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- rotten demonbone - itemid = 28829, - type = "deequip", - slot = "hand", - }, - { - -- deepling fork - itemid = 28826, - type = "equip", - slot = "hand", - level = 230, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- deepling fork - itemid = 28826, - type = "deequip", - slot = "hand", - level = 230, - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = "equip", - slot = "hand", - level = 180, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = "deequip", - slot = "hand", - level = 180, - }, - { - -- falcon mace - itemid = 28725, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon mace - itemid = 28725, - type = "deequip", - slot = "hand", - }, - { - -- falcon battleaxe - itemid = 28724, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon battleaxe - itemid = 28724, - type = "deequip", - slot = "hand", - }, - { - -- falcon longsword - itemid = 28723, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon longsword - itemid = 28723, - type = "deequip", - slot = "hand", - }, - { - -- falcon escutcheon - itemid = 28722, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon escutcheon - itemid = 28722, - type = "deequip", - slot = "shield", - level = 300, - }, - { - -- falcon shield - itemid = 28721, - type = "equip", - slot = "shield", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon shield - itemid = 28721, - type = "deequip", - slot = "shield", - level = 300, - }, - { - -- falcon greaves - itemid = 28720, - type = "equip", - slot = "legs", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon greaves - itemid = 28720, - type = "deequip", - slot = "legs", - level = 300, - }, - { - -- falcon plate - itemid = 28719, - type = "equip", - slot = "armor", - level = 300, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon plate - itemid = 28719, - type = "deequip", - slot = "armor", - level = 300, - }, - { - -- falcon bow - itemid = 28718, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "paladin", true }, - { "royal paladin" }, - }, - }, - { - -- falcon bow - itemid = 28718, - type = "deequip", - slot = "hand", - level = 300, - }, - { - -- falcon wand - itemid = 28717, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- falcon wand - itemid = 28717, - type = "deequip", - slot = "hand", - level = 300, - }, - { - -- falcon rod - itemid = 28716, - type = "equip", - slot = "hand", - level = 300, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- falcon rod - itemid = 28716, - type = "deequip", - slot = "hand", - level = 300, - }, - { - -- falcon coif - itemid = 28715, - type = "equip", - slot = "head", - level = 300, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- falcon coif - itemid = 28715, - type = "deequip", - slot = "head", - level = 300, - }, - { - -- falcon circlet - itemid = 28714, - type = "equip", - slot = "head", - level = 300, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- falcon circlet - itemid = 28714, - type = "deequip", - slot = "head", - level = 300, - }, - { - -- silver chimes - itemid = 12126, - type = "equip", - slot = "shield", - }, - { - -- silver chimes - itemid = 12126, - type = "deequip", - slot = "shield", - }, - { - -- suspicious device - itemid = 27653, - type = "equip", - slot = "necklace", - }, - { - -- suspicious device - itemid = 27653, - type = "deequip", - slot = "necklace", - }, - { - -- gnome sword - itemid = 27651, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gnome sword - itemid = 27651, - type = "deequip", - slot = "hand", - }, - { - -- gnome shield - itemid = 27650, - type = "equip", - slot = "shield", - level = 200, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Royal Paladin" }, - { "Elite Knight" }, - }, - }, - { - -- gnome shield - itemid = 27650, - type = "deequip", - slot = "shield", - level = 200, - }, - { - -- gnome legs - itemid = 27649, - type = "equip", - slot = "legs", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gnome legs - itemid = 27649, - type = "deequip", - slot = "legs", - level = 200, - }, - { - -- gnome armor - itemid = 27648, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- gnome armor - itemid = 27648, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- gnome helmet - itemid = 27647, - type = "equip", - slot = "head", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gnome helmet - itemid = 27647, - type = "deequip", - slot = "head", - level = 200, - }, - { - -- foxtail amulet - itemid = 27565, - type = "equip", - slot = "necklace", - level = 100, - }, - { - -- foxtail amulet - itemid = 27565, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- mallet handle - itemid = 27525, - type = "equip", - slot = "hand", - }, - { - -- mallet handle - itemid = 27525, - type = "deequip", - slot = "hand", - }, - { - -- strange mallet - itemid = 27523, - type = "equip", - slot = "hand", - }, - { - -- strange mallet - itemid = 27523, - type = "deequip", - slot = "hand", - }, - { - -- blue spectacles - itemid = 27522, - type = "equip", - slot = "head", - }, - { - -- blue spectacles - itemid = 27522, - type = "deequip", - slot = "head", - }, - { - -- rod of destruction - itemid = 27458, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of destruction - itemid = 27458, - type = "deequip", - slot = "hand", - level = 200, - }, - { - -- wand of destruction - itemid = 27457, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of destruction - itemid = 27457, - type = "deequip", - slot = "hand", - level = 200, - }, - { - -- crossbow of destruction - itemid = 27456, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crossbow of destruction - itemid = 27456, - type = "deequip", - slot = "hand", - }, - { - -- bow of destruction - itemid = 27455, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of destruction - itemid = 27455, - type = "deequip", - slot = "hand", - }, - { - -- hammer of destruction - itemid = 27454, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- hammer of destruction - itemid = 27454, - type = "deequip", - slot = "hand", - }, - { - -- mace of destruction - itemid = 27453, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of destruction - itemid = 27453, - type = "deequip", - slot = "hand", - }, - { - -- chopper of destruction - itemid = 27452, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of destruction - itemid = 27452, - type = "deequip", - slot = "hand", - }, - { - -- axe of destruction - itemid = 27451, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of destruction - itemid = 27451, - type = "deequip", - slot = "hand", - }, - { - -- slayer of destruction - itemid = 27450, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of destruction - itemid = 27450, - type = "deequip", - slot = "hand", - }, - { - -- blade of destruction - itemid = 27449, - type = "equip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of destruction - itemid = 27449, - type = "deequip", - slot = "hand", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Journal Shield - itemid = 26947, - type = "equip", - slot = "shield", - }, - { - -- Journal Shield - itemid = 26947, - type = "deequip", - slot = "shield", - }, - { - -- reflecting crown - itemid = 26190, - type = "equip", - slot = "head", - }, - { - -- reflecting crown - itemid = 26190, - type = "deequip", - slot = "head", - }, - { - -- incandescent crown - itemid = 26189, - type = "equip", - slot = "head", - }, - { - -- incandescent crown - itemid = 26189, - type = "deequip", - slot = "head", - }, - { - -- iron crown - itemid = 26188, - type = "equip", - slot = "head", - }, - { - -- iron crown - itemid = 26188, - type = "deequip", - slot = "head", - }, - { - -- leaf crown - itemid = 26187, - type = "equip", - slot = "head", - }, - { - -- leaf crown - itemid = 26187, - type = "deequip", - slot = "head", - }, - { - -- ornate carving hammer - itemid = 26061, - type = "equip", - slot = "hand", - }, - { - -- ornate carving hammer - itemid = 26061, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving hammer - itemid = 26060, - type = "equip", - slot = "hand", - }, - { - -- valuable carving hammer - itemid = 26060, - type = "deequip", - slot = "hand", - }, - { - -- plain carving hammer - itemid = 26059, - type = "equip", - slot = "hand", - }, - { - -- plain carving hammer - itemid = 26059, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving mace - itemid = 26058, - type = "equip", - slot = "hand", - }, - { - -- ornate carving mace - itemid = 26058, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving mace - itemid = 26057, - type = "equip", - slot = "hand", - }, - { - -- valuable carving mace - itemid = 26057, - type = "deequip", - slot = "hand", - }, - { - -- plain carving mace - itemid = 26056, - type = "equip", - slot = "hand", - }, - { - -- plain carving mace - itemid = 26056, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving chopper - itemid = 26055, - type = "equip", - slot = "hand", - }, - { - -- ornate carving chopper - itemid = 26055, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving chopper - itemid = 26054, - type = "equip", - slot = "hand", - }, - { - -- valuable carving chopper - itemid = 26054, - type = "deequip", - slot = "hand", - }, - { - -- plain carving chopper - itemid = 26053, - type = "equip", - slot = "hand", - }, - { - -- plain carving chopper - itemid = 26053, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving axe - itemid = 26052, - type = "equip", - slot = "hand", - }, - { - -- ornate carving axe - itemid = 26052, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving axe - itemid = 26051, - type = "equip", - slot = "hand", - }, - { - -- valuable carving axe - itemid = 26051, - type = "deequip", - slot = "hand", - }, - { - -- plain carving axe - itemid = 26050, - type = "equip", - slot = "hand", - }, - { - -- plain carving axe - itemid = 26050, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving slayer - itemid = 26049, - type = "equip", - slot = "hand", - }, - { - -- ornate carving slayer - itemid = 26049, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving slayer - itemid = 26048, - type = "equip", - slot = "hand", - }, - { - -- valuable carving slayer - itemid = 26048, - type = "deequip", - slot = "hand", - }, - { - -- plain carving slayer - itemid = 26047, - type = "equip", - slot = "hand", - }, - { - -- plain carving slayer - itemid = 26047, - type = "deequip", - slot = "hand", - }, - { - -- ornate carving blade - itemid = 26046, - type = "equip", - slot = "hand", - }, - { - -- ornate carving blade - itemid = 26046, - type = "deequip", - slot = "hand", - }, - { - -- valuable carving blade - itemid = 26045, - type = "equip", - slot = "hand", - }, - { - -- valuable carving blade - itemid = 26045, - type = "deequip", - slot = "hand", - }, - { - -- plain carving blade - itemid = 26044, - type = "equip", - slot = "hand", - }, - { - -- plain carving blade - itemid = 26044, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy hammer - itemid = 26031, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy hammer - itemid = 26031, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy hammer - itemid = 26030, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy hammer - itemid = 26030, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy hammer - itemid = 26029, - type = "equip", - slot = "hand", - }, - { - -- plain remedy hammer - itemid = 26029, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy mace - itemid = 26028, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy mace - itemid = 26028, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy mace - itemid = 26027, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy mace - itemid = 26027, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy mace - itemid = 26026, - type = "equip", - slot = "hand", - }, - { - -- plain remedy mace - itemid = 26026, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy chopper - itemid = 26025, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy chopper - itemid = 26025, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy chopper - itemid = 26024, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy chopper - itemid = 26024, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy chopper - itemid = 26023, - type = "equip", - slot = "hand", - }, - { - -- plain remedy chopper - itemid = 26023, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy axe - itemid = 26022, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy axe - itemid = 26022, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy axe - itemid = 26021, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy axe - itemid = 26021, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy axe - itemid = 26020, - type = "equip", - slot = "hand", - }, - { - -- plain remedy axe - itemid = 26020, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy slayer - itemid = 26019, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy slayer - itemid = 26019, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy slayer - itemid = 26018, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy slayer - itemid = 26018, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy slayer - itemid = 26017, - type = "equip", - slot = "hand", - }, - { - -- plain remedy slayer - itemid = 26017, - type = "deequip", - slot = "hand", - }, - { - -- ornate remedy blade - itemid = 26016, - type = "equip", - slot = "hand", - }, - { - -- ornate remedy blade - itemid = 26016, - type = "deequip", - slot = "hand", - }, - { - -- valuable remedy blade - itemid = 26015, - type = "equip", - slot = "hand", - }, - { - -- valuable remedy blade - itemid = 26015, - type = "deequip", - slot = "hand", - }, - { - -- plain remedy blade - itemid = 26014, - type = "equip", - slot = "hand", - }, - { - -- plain remedy blade - itemid = 26014, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem hammer - itemid = 25998, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem hammer - itemid = 25998, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem mace - itemid = 25997, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem mace - itemid = 25997, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem mace - itemid = 25996, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem mace - itemid = 25996, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem mace - itemid = 25995, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem mace - itemid = 25995, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem chopper - itemid = 25992, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem chopper - itemid = 25992, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem axe - itemid = 25991, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem axe - itemid = 25991, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem axe - itemid = 25990, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem axe - itemid = 25990, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem axe - itemid = 25989, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem axe - itemid = 25989, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem slayer - itemid = 25986, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem slayer - itemid = 25986, - type = "deequip", - slot = "hand", - }, - { - -- ornate mayhem blade - itemid = 25985, - type = "equip", - slot = "hand", - }, - { - -- ornate mayhem blade - itemid = 25985, - type = "deequip", - slot = "hand", - }, - { - -- valuable mayhem blade - itemid = 25984, - type = "equip", - slot = "hand", - }, - { - -- valuable mayhem blade - itemid = 25984, - type = "deequip", - slot = "hand", - }, - { - -- plain mayhem blade - itemid = 25983, - type = "equip", - slot = "hand", - }, - { - -- plain mayhem blade - itemid = 25983, - type = "deequip", - slot = "hand", - }, - { - -- mathmaster shield (souvenir) - itemid = 25982, - type = "equip", - slot = "shield", - }, - { - -- mathmaster shield (souvenir) - itemid = 25982, - type = "deequip", - slot = "shield", - }, - { - -- sun catcher - itemid = 25977, - type = "equip", - slot = "ammo", - }, - { - -- sun catcher - itemid = 25977, - type = "deequip", - slot = "ammo", - }, - { - -- starlight vial - itemid = 25976, - type = "equip", - slot = "ammo", - }, - { - -- starlight vial - itemid = 25976, - type = "deequip", - slot = "ammo", - }, - { - -- moon mirror - itemid = 25975, - type = "equip", - slot = "ammo", - }, - { - -- moon mirror - itemid = 25975, - type = "deequip", - slot = "ammo", - }, - { - -- energy war hammer replica - itemid = 25974, - type = "equip", - slot = "hand", - }, - { - -- energy war hammer replica - itemid = 25974, - type = "deequip", - slot = "hand", - }, - { - -- energy orcish maul replica - itemid = 25973, - type = "equip", - slot = "hand", - }, - { - -- energy orcish maul replica - itemid = 25973, - type = "deequip", - slot = "hand", - }, - { - -- energy basher replica - itemid = 25972, - type = "equip", - slot = "hand", - }, - { - -- energy basher replica - itemid = 25972, - type = "deequip", - slot = "hand", - }, - { - -- energy crystal mace replica - itemid = 25971, - type = "equip", - slot = "hand", - }, - { - -- energy crystal mace replica - itemid = 25971, - type = "deequip", - slot = "hand", - }, - { - -- energy clerical mace replica - itemid = 25970, - type = "equip", - slot = "hand", - }, - { - -- energy clerical mace replica - itemid = 25970, - type = "deequip", - slot = "hand", - }, - { - -- energy war axe replica - itemid = 25969, - type = "equip", - slot = "hand", - }, - { - -- energy war axe replica - itemid = 25969, - type = "deequip", - slot = "hand", - }, - { - -- energy headchopper replica - itemid = 25968, - type = "equip", - slot = "hand", - }, - { - -- energy headchopper replica - itemid = 25968, - type = "deequip", - slot = "hand", - }, - { - -- energy heroic axe replica - itemid = 25967, - type = "equip", - slot = "hand", - }, - { - -- energy heroic axe replica - itemid = 25967, - type = "deequip", - slot = "hand", - }, - { - -- energy knight axe replica - itemid = 25966, - type = "equip", - slot = "hand", - }, - { - -- energy knight axe replica - itemid = 25966, - type = "deequip", - slot = "hand", - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = "equip", - slot = "hand", - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = "deequip", - slot = "hand", - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = "equip", - slot = "hand", - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = "deequip", - slot = "hand", - }, - { - -- energy blacksteel replica - itemid = 25963, - type = "equip", - slot = "hand", - }, - { - -- energy blacksteel replica - itemid = 25963, - type = "deequip", - slot = "hand", - }, - { - -- energy mystic blade replica - itemid = 25962, - type = "equip", - slot = "hand", - }, - { - -- energy mystic blade replica - itemid = 25962, - type = "deequip", - slot = "hand", - }, - { - -- energy relic sword replica - itemid = 25961, - type = "equip", - slot = "hand", - }, - { - -- energy relic sword replica - itemid = 25961, - type = "deequip", - slot = "hand", - }, - { - -- energy spike sword replica - itemid = 25960, - type = "equip", - slot = "hand", - }, - { - -- energy spike sword replica - itemid = 25960, - type = "deequip", - slot = "hand", - }, - { - -- earth war hammer replica - itemid = 25959, - type = "equip", - slot = "hand", - }, - { - -- earth war hammer replica - itemid = 25959, - type = "deequip", - slot = "hand", - }, - { - -- earth orcish maul replica - itemid = 25958, - type = "equip", - slot = "hand", - }, - { - -- earth orcish maul replica - itemid = 25958, - type = "deequip", - slot = "hand", - }, - { - -- earth basher replica - itemid = 25957, - type = "equip", - slot = "hand", - }, - { - -- earth basher replica - itemid = 25957, - type = "deequip", - slot = "hand", - }, - { - -- earth crystal mace replica - itemid = 25956, - type = "equip", - slot = "hand", - }, - { - -- earth crystal mace replica - itemid = 25956, - type = "deequip", - slot = "hand", - }, - { - -- earth clerical mace replica - itemid = 25955, - type = "equip", - slot = "hand", - }, - { - -- earth clerical mace replica - itemid = 25955, - type = "deequip", - slot = "hand", - }, - { - -- earth war axe replica - itemid = 25954, - type = "equip", - slot = "hand", - }, - { - -- earth war axe replica - itemid = 25954, - type = "deequip", - slot = "hand", - }, - { - -- earth headchopper replica - itemid = 25953, - type = "equip", - slot = "hand", - }, - { - -- earth headchopper replica - itemid = 25953, - type = "deequip", - slot = "hand", - }, - { - -- earth heroic axe replica - itemid = 25952, - type = "equip", - slot = "hand", - }, - { - -- earth heroic axe replica - itemid = 25952, - type = "deequip", - slot = "hand", - }, - { - -- earth knight axe replica - itemid = 25951, - type = "equip", - slot = "hand", - }, - { - -- earth knight axe replica - itemid = 25951, - type = "deequip", - slot = "hand", - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = "equip", - slot = "hand", - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = "deequip", - slot = "hand", - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = "equip", - slot = "hand", - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = "deequip", - slot = "hand", - }, - { - -- earth blacksteel replica - itemid = 25948, - type = "equip", - slot = "hand", - }, - { - -- earth blacksteel replica - itemid = 25948, - type = "deequip", - slot = "hand", - }, - { - -- earth mystic blade replica - itemid = 25947, - type = "equip", - slot = "hand", - }, - { - -- earth mystic blade replica - itemid = 25947, - type = "deequip", - slot = "hand", - }, - { - -- earth relic sword replica - itemid = 25946, - type = "equip", - slot = "hand", - }, - { - -- earth relic sword replica - itemid = 25946, - type = "deequip", - slot = "hand", - }, - { - -- earth spike sword replica - itemid = 25945, - type = "equip", - slot = "hand", - }, - { - -- earth spike sword replica - itemid = 25945, - type = "deequip", - slot = "hand", - }, - { - -- icy war hammer replica - itemid = 25944, - type = "equip", - slot = "hand", - }, - { - -- icy war hammer replica - itemid = 25944, - type = "deequip", - slot = "hand", - }, - { - -- icy orcish maul replica - itemid = 25943, - type = "equip", - slot = "hand", - }, - { - -- icy orcish maul replica - itemid = 25943, - type = "deequip", - slot = "hand", - }, - { - -- icy basher replica - itemid = 25942, - type = "equip", - slot = "hand", - }, - { - -- icy basher replica - itemid = 25942, - type = "deequip", - slot = "hand", - }, - { - -- icy crystal mace replica - itemid = 25941, - type = "equip", - slot = "hand", - }, - { - -- icy crystal mace replica - itemid = 25941, - type = "deequip", - slot = "hand", - }, - { - -- icy clerical mace replica - itemid = 25940, - type = "equip", - slot = "hand", - }, - { - -- icy clerical mace replica - itemid = 25940, - type = "deequip", - slot = "hand", - }, - { - -- icy war axe replica - itemid = 25939, - type = "equip", - slot = "hand", - }, - { - -- icy war axe replica - itemid = 25939, - type = "deequip", - slot = "hand", - }, - { - -- icy headchopper replica - itemid = 25938, - type = "equip", - slot = "hand", - }, - { - -- icy headchopper replica - itemid = 25938, - type = "deequip", - slot = "hand", - }, - { - -- icy heroic axe replica - itemid = 25937, - type = "equip", - slot = "hand", - }, - { - -- icy heroic axe replica - itemid = 25937, - type = "deequip", - slot = "hand", - }, - { - -- icy knight axe replica - itemid = 25936, - type = "equip", - slot = "hand", - }, - { - -- icy knight axe replica - itemid = 25936, - type = "deequip", - slot = "hand", - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = "equip", - slot = "hand", - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = "deequip", - slot = "hand", - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = "equip", - slot = "hand", - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = "deequip", - slot = "hand", - }, - { - -- icy blacksteel replica - itemid = 25933, - type = "equip", - slot = "hand", - }, - { - -- icy blacksteel replica - itemid = 25933, - type = "deequip", - slot = "hand", - }, - { - -- icy mystic blade replica - itemid = 25932, - type = "equip", - slot = "hand", - }, - { - -- icy mystic blade replica - itemid = 25932, - type = "deequip", - slot = "hand", - }, - { - -- icy relic sword replica - itemid = 25931, - type = "equip", - slot = "hand", - }, - { - -- icy relic sword replica - itemid = 25931, - type = "deequip", - slot = "hand", - }, - { - -- icy spike sword replica - itemid = 25930, - type = "equip", - slot = "hand", - }, - { - -- icy spike sword replica - itemid = 25930, - type = "deequip", - slot = "hand", - }, - { - -- fiery war hammer replica - itemid = 25929, - type = "equip", - slot = "hand", - }, - { - -- fiery war hammer replica - itemid = 25929, - type = "deequip", - slot = "hand", - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = "equip", - slot = "hand", - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = "deequip", - slot = "hand", - }, - { - -- fiery basher replica - itemid = 25927, - type = "equip", - slot = "hand", - }, - { - -- fiery basher replica - itemid = 25927, - type = "deequip", - slot = "hand", - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = "equip", - slot = "hand", - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = "deequip", - slot = "hand", - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = "equip", - slot = "hand", - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = "deequip", - slot = "hand", - }, - { - -- fiery war axe replica - itemid = 25924, - type = "equip", - slot = "hand", - }, - { - -- fiery war axe replica - itemid = 25924, - type = "deequip", - slot = "hand", - }, - { - -- fiery headchopper replica - itemid = 25923, - type = "equip", - slot = "hand", - }, - { - -- fiery headchopper replica - itemid = 25923, - type = "deequip", - slot = "hand", - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = "equip", - slot = "hand", - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = "deequip", - slot = "hand", - }, - { - -- fiery knight axe replica - itemid = 25921, - type = "equip", - slot = "hand", - }, - { - -- fiery knight axe replica - itemid = 25921, - type = "deequip", - slot = "hand", - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = "equip", - slot = "hand", - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = "deequip", - slot = "hand", - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = "equip", - slot = "hand", - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = "deequip", - slot = "hand", - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = "equip", - slot = "hand", - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = "deequip", - slot = "hand", - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = "equip", - slot = "hand", - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = "deequip", - slot = "hand", - }, - { - -- fiery relic sword replica - itemid = 25916, - type = "equip", - slot = "hand", - }, - { - -- fiery relic sword replica - itemid = 25916, - type = "deequip", - slot = "hand", - }, - { - -- fiery spike sword replica - itemid = 25915, - type = "equip", - slot = "hand", - }, - { - -- fiery spike sword replica - itemid = 25915, - type = "deequip", - slot = "hand", - }, - { - -- blossom bag - itemid = 25780, - type = "equip", - slot = "backpack", - }, - { - -- blossom bag - itemid = 25780, - type = "deequip", - slot = "backpack", - }, - { - -- swan feather cloak - itemid = 25779, - type = "equip", - slot = "armor", - level = 60, - }, - { - -- swan feather cloak - itemid = 25779, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- wand of darkness - itemid = 25760, - type = "equip", - slot = "hand", - level = 41, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of darkness - itemid = 25760, - type = "deequip", - slot = "hand", - level = 41, - }, - { - -- royal star - itemid = 25759, - type = "equip", - slot = "hand", - level = 120, - }, - { - -- royal star - itemid = 25759, - type = "deequip", - slot = "hand", - level = 120, - }, - { - -- spectral bolt - itemid = 25758, - type = "equip", - slot = "ammo", - }, - { - -- spectral bolt - itemid = 25758, - type = "deequip", - slot = "ammo", - }, - { - -- leaf star - itemid = 25735, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- leaf star - itemid = 25735, - type = "deequip", - slot = "hand", - level = 60, - }, - { - -- dream blossom staff - itemid = 25700, - type = "equip", - slot = "hand", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- dream blossom staff - itemid = 25700, - type = "deequip", - slot = "hand", - level = 80, - }, - { - -- wooden spellbook - itemid = 25699, - type = "equip", - slot = "shield", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- wooden spellbook - itemid = 25699, - type = "deequip", - slot = "shield", - level = 80, - }, - { - -- butterfly ring - itemid = 25698, - type = "equip", - slot = "ring", - level = 50, - }, - { - -- butterfly ring - itemid = 25698, - type = "deequip", - slot = "ring", - level = 50, - }, - { - -- glowing rubbish amulet - itemid = 25297, - type = "equip", - slot = "necklace", - }, - { - -- glowing rubbish amulet - itemid = 25297, - type = "deequip", - slot = "necklace", - }, - { - -- rubbish amulet - itemid = 25296, - type = "equip", - slot = "necklace", - }, - { - -- rubbish amulet - itemid = 25296, - type = "deequip", - slot = "necklace", - }, - { - -- porcelain mask - itemid = 25088, - type = "equip", - slot = "head", - }, - { - -- porcelain mask - itemid = 25088, - type = "deequip", - slot = "head", - }, - { - -- filthy bunnyslippers - itemid = 24409, - type = "equip", - slot = "feet", - }, - { - -- filthy bunnyslippers - itemid = 24409, - type = "deequip", - slot = "feet", - }, - { - -- rusty winged helmet - itemid = 24405, - type = "equip", - slot = "head", - }, - { - -- rusty winged helmet - itemid = 24405, - type = "deequip", - slot = "head", - }, - { - -- tatty Dragon scale legs - itemid = 24404, - type = "equip", - slot = "legs", - }, - { - -- tatty Dragon scale legs - itemid = 24404, - type = "deequip", - slot = "legs", - }, - { - -- chocolatey dragon scale legs - itemid = 24402, - type = "equip", - slot = "legs", - }, - { - -- chocolatey dragon scale legs - itemid = 24402, - type = "deequip", - slot = "legs", - }, - { - -- Ferumbras' Candy Hat - itemid = 24397, - type = "equip", - slot = "head", - }, - { - -- Ferumbras' Candy Hat - itemid = 24397, - type = "deequip", - slot = "head", - }, - { - -- birthday backpack - itemid = 24395, - type = "equip", - slot = "backpack", - }, - { - -- birthday backpack - itemid = 24395, - type = "deequip", - slot = "backpack", - }, - { - -- pillow backpack - itemid = 24393, - type = "equip", - slot = "backpack", - }, - { - -- pillow backpack - itemid = 24393, - type = "deequip", - slot = "backpack", - }, - { - -- collar of red plasma - itemid = 23544, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- collar of red plasma - itemid = 23544, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of green plasma - itemid = 23543, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- collar of green plasma - itemid = 23543, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of blue plasma - itemid = 23542, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- collar of blue plasma - itemid = 23542, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- ring of red plasma - itemid = 23534, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ring of red plasma - itemid = 23534, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of red plasma - itemid = 23533, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ring of red plasma - itemid = 23533, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of green plasma - itemid = 23532, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- ring of green plasma - itemid = 23532, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of green plasma - itemid = 23531, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- ring of green plasma - itemid = 23531, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of blue plasma - itemid = 23530, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ring of blue plasma - itemid = 23530, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- ring of blue plasma - itemid = 23529, - type = "equip", - slot = "ring", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ring of blue plasma - itemid = 23529, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- collar of red plasma - itemid = 23528, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- collar of red plasma - itemid = 23528, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of green plasma - itemid = 23527, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- collar of green plasma - itemid = 23527, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- collar of blue plasma - itemid = 23526, - type = "equip", - slot = "necklace", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- collar of blue plasma - itemid = 23526, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- energetic backpack - itemid = 23525, - type = "equip", - slot = "backpack", - }, - { - -- energetic backpack - itemid = 23525, - type = "deequip", - slot = "backpack", - }, - { - -- void boots - itemid = 23477, - type = "equip", - slot = "feet", - level = 150, - }, - { - -- void boots - itemid = 23477, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- void boots - itemid = 23476, - type = "equip", - slot = "feet", - level = 150, - }, - { - -- void boots - itemid = 23476, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- tiara of power - itemid = 23475, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- tiara of power - itemid = 23475, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- tiara of power - itemid = 23474, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- tiara of power - itemid = 23474, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- rod of carving - itemid = 23339, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of carving - itemid = 23339, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- wand of carving - itemid = 23335, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of carving - itemid = 23335, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- crossbow of carving - itemid = 23331, - type = "equip", - slot = "hand", - }, - { - -- crossbow of carving - itemid = 23331, - type = "deequip", - slot = "hand", - }, - { - -- bow of carving - itemid = 23327, - type = "equip", - slot = "hand", - }, - { - -- bow of carving - itemid = 23327, - type = "deequip", - slot = "hand", - }, - { - -- hammer of carving - itemid = 23323, - type = "equip", - slot = "hand", - }, - { - -- hammer of carving - itemid = 23323, - type = "deequip", - slot = "hand", - }, - { - -- mace of carving - itemid = 23319, - type = "equip", - slot = "hand", - }, - { - -- mace of carving - itemid = 23319, - type = "deequip", - slot = "hand", - }, - { - -- chopper of carving - itemid = 23315, - type = "equip", - slot = "hand", - }, - { - -- chopper of carving - itemid = 23315, - type = "deequip", - slot = "hand", - }, - { - -- axe of carving - itemid = 23311, - type = "equip", - slot = "hand", - }, - { - -- axe of carving - itemid = 23311, - type = "deequip", - slot = "hand", - }, - { - -- slayer of carving - itemid = 23307, - type = "equip", - slot = "hand", - }, - { - -- slayer of carving - itemid = 23307, - type = "deequip", - slot = "hand", - }, - { - -- blade of carving - itemid = 23303, - type = "equip", - slot = "hand", - }, - { - -- blade of carving - itemid = 23303, - type = "deequip", - slot = "hand", - }, - { - -- rod of remedy - itemid = 23299, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of remedy - itemid = 23299, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- wand of remedy - itemid = 23295, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of remedy - itemid = 23295, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- crossbow of remedy - itemid = 23291, - type = "equip", - slot = "hand", - }, - { - -- crossbow of remedy - itemid = 23291, - type = "deequip", - slot = "hand", - }, - { - -- bow of remedy - itemid = 23287, - type = "equip", - slot = "hand", - }, - { - -- bow of remedy - itemid = 23287, - type = "deequip", - slot = "hand", - }, - { - -- mace of remedy - itemid = 23279, - type = "equip", - slot = "hand", - }, - { - -- mace of remedy - itemid = 23279, - type = "deequip", - slot = "hand", - }, - { - -- chopper of remedy - itemid = 23275, - type = "equip", - slot = "hand", - }, - { - -- chopper of remedy - itemid = 23275, - type = "deequip", - slot = "hand", - }, - { - -- axe of remedy - itemid = 23271, - type = "equip", - slot = "hand", - }, - { - -- axe of remedy - itemid = 23271, - type = "deequip", - slot = "hand", - }, - { - -- slayer of remedy - itemid = 23267, - type = "equip", - slot = "hand", - }, - { - -- slayer of remedy - itemid = 23267, - type = "deequip", - slot = "hand", - }, - { - -- blade of remedy - itemid = 23263, - type = "equip", - slot = "hand", - }, - { - -- blade of remedy - itemid = 23263, - type = "deequip", - slot = "hand", - }, - { - -- rod of mayhem - itemid = 23232, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- rod of mayhem - itemid = 23232, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- wand of mayhem - itemid = 23231, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of mayhem - itemid = 23231, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- crossbow of mayhem - itemid = 23230, - type = "equip", - slot = "hand", - }, - { - -- crossbow of mayhem - itemid = 23230, - type = "deequip", - slot = "hand", - }, - { - -- bow of mayhem - itemid = 23229, - type = "equip", - slot = "hand", - }, - { - -- bow of mayhem - itemid = 23229, - type = "deequip", - slot = "hand", - }, - { - -- hammer of mayhem - itemid = 23228, - type = "equip", - slot = "hand", - }, - { - -- hammer of mayhem - itemid = 23228, - type = "deequip", - slot = "hand", - }, - { - -- mace of mayhem - itemid = 23227, - type = "equip", - slot = "hand", - }, - { - -- mace of mayhem - itemid = 23227, - type = "deequip", - slot = "hand", - }, - { - -- chopper of mayhem - itemid = 23226, - type = "equip", - slot = "hand", - }, - { - -- chopper of mayhem - itemid = 23226, - type = "deequip", - slot = "hand", - }, - { - -- axe of mayhem - itemid = 23225, - type = "equip", - slot = "hand", - }, - { - -- axe of mayhem - itemid = 23225, - type = "deequip", - slot = "hand", - }, - { - -- slayer of mayhem - itemid = 23224, - type = "equip", - slot = "hand", - }, - { - -- slayer of mayhem - itemid = 23224, - type = "deequip", - slot = "hand", - }, - { - -- blade of mayhem - itemid = 23223, - type = "equip", - slot = "hand", - }, - { - -- blade of mayhem - itemid = 23223, - type = "deequip", - slot = "hand", - }, - { - -- shield of destiny - itemid = 22890, - type = "equip", - slot = "shield", - }, - { - -- shield of destiny - itemid = 22890, - type = "deequip", - slot = "shield", - }, - { - -- shield of destiny - itemid = 22889, - type = "equip", - slot = "shield", - }, - { - -- shield of destiny - itemid = 22889, - type = "deequip", - slot = "shield", - }, - { - -- rift crossbow - itemid = 22867, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- rift crossbow - itemid = 22867, - type = "deequip", - slot = "hand", - }, - { - -- rift bow - itemid = 22866, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- rift bow - itemid = 22866, - type = "deequip", - slot = "hand", - }, - { - -- boots of homecoming - itemid = 22774, - type = "equip", - slot = "feet", - level = 100, - }, - { - -- boots of homecoming - itemid = 22774, - type = "deequip", - slot = "feet", - level = 100, - }, - { - -- boots of homecoming - itemid = 22773, - type = "equip", - slot = "feet", - level = 100, - }, - { - -- boots of homecoming - itemid = 22773, - type = "deequip", - slot = "feet", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22768, - type = "equip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22768, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22767, - type = "equip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' amulet - itemid = 22767, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = "deequip", - slot = "hand", - level = 100, - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- Ferumbras' staff (club) - itemid = 22764, - type = "equip", - slot = "hand", - level = 100, - }, - { - -- Ferumbras' staff (club) - itemid = 22764, - type = "deequip", - slot = "hand", - }, - { - -- maimer - itemid = 22762, - type = "equip", - slot = "hand", - level = 150, - }, - { - -- maimer - itemid = 22762, - type = "deequip", - slot = "hand", - }, - { - -- Impaler of the igniter - itemid = 22760, - type = "equip", - slot = "hand", - level = 150, - }, - { - -- Impaler of the igniter - itemid = 22760, - type = "deequip", - slot = "hand", - }, - { - -- plague bite - itemid = 22759, - type = "equip", - slot = "hand", - level = 150, - }, - { - -- plague bite - itemid = 22759, - type = "deequip", - slot = "hand", - }, - { - -- death gaze - itemid = 22758, - type = "equip", - slot = "shield", - level = 200, - }, - { - -- death gaze - itemid = 22758, - type = "deequip", - slot = "shield", - level = 200, - }, - { - -- shroud of despair - itemid = 22757, - type = "equip", - slot = "head", - level = 150, - }, - { - -- shroud of despair - itemid = 22757, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- treader of torment - itemid = 22756, - type = "equip", - slot = "feet", - }, - { - -- treader of torment - itemid = 22756, - type = "deequip", - slot = "feet", - }, - { - -- book of lies - itemid = 22755, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- book of lies - itemid = 22755, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- visage of the end days - itemid = 22754, - type = "equip", - slot = "head", - }, - { - -- visage of the end days - itemid = 22754, - type = "deequip", - slot = "head", - }, - { - -- ancient amulet - itemid = 22746, - type = "equip", - slot = "necklace", - }, - { - -- ancient amulet - itemid = 22746, - type = "deequip", - slot = "necklace", - }, - { - -- rift lance - itemid = 22727, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- rift lance - itemid = 22727, - type = "deequip", - slot = "hand", - }, - { - -- rift shield - itemid = 22726, - type = "equip", - slot = "shield", - }, - { - -- rift shield - itemid = 22726, - type = "deequip", - slot = "shield", - }, - { - -- rattling gourd - itemid = 22651, - type = "equip", - slot = "shield", - }, - { - -- rattling gourd - itemid = 22651, - type = "deequip", - slot = "shield", - }, - { - -- gourd - itemid = 22650, - type = "equip", - slot = "shield", - }, - { - -- gourd - itemid = 22650, - type = "deequip", - slot = "shield", - }, - { - -- frostmind raiment - itemid = 22537, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- frostmind raiment - itemid = 22537, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thundermind raiment - itemid = 22536, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- thundermind raiment - itemid = 22536, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthmind raiment - itemid = 22535, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- earthmind raiment - itemid = 22535, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- firemind raiment - itemid = 22534, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- firemind raiment - itemid = 22534, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostsoul tabard - itemid = 22533, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- frostsoul tabard - itemid = 22533, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thundersoul tabard - itemid = 22532, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- thundersoul tabard - itemid = 22532, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthsoul tabard - itemid = 22531, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- earthsoul tabard - itemid = 22531, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- firesoul tabard - itemid = 22530, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- firesoul tabard - itemid = 22530, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostheart platemail - itemid = 22529, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostheart platemail - itemid = 22529, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostheart hauberk - itemid = 22528, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostheart hauberk - itemid = 22528, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- frostheart cuirass - itemid = 22527, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- frostheart cuirass - itemid = 22527, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thunderheart platemail - itemid = 22526, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thunderheart platemail - itemid = 22526, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thunderheart hauberk - itemid = 22525, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thunderheart hauberk - itemid = 22525, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- thunderheart cuirass - itemid = 22524, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thunderheart cuirass - itemid = 22524, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthheart platemail - itemid = 22523, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthheart platemail - itemid = 22523, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthheart hauberk - itemid = 22522, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthheart hauberk - itemid = 22522, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- earthheart cuirass - itemid = 22521, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthheart cuirass - itemid = 22521, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- fireheart platemail - itemid = 22520, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireheart platemail - itemid = 22520, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- fireheart hauberk - itemid = 22519, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireheart hauberk - itemid = 22519, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- fireheart cuirass - itemid = 22518, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireheart cuirass - itemid = 22518, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- onyx pendant - itemid = 22195, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- onyx pendant - itemid = 22195, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- shamanic mask - itemid = 22192, - type = "equip", - slot = "head", - }, - { - -- shamanic mask - itemid = 22192, - type = "deequip", - slot = "head", - }, - { - -- painted gourd rattle - itemid = 22190, - type = "equip", - slot = "shield", - }, - { - -- painted gourd rattle - itemid = 22190, - type = "deequip", - slot = "shield", - }, - { - -- ogre scepta - itemid = 22183, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- ogre scepta - itemid = 22183, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- ogre choppa - itemid = 22172, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- ogre choppa - itemid = 22172, - type = "deequip", - slot = "hand", - }, - { - -- ogre klubba - itemid = 22171, - type = "equip", - slot = "hand", - level = 50, - }, - { - -- ogre klubba - itemid = 22171, - type = "deequip", - slot = "hand", - }, - { - -- house silversun's signet ring - itemid = 22170, - type = "equip", - slot = "ring", - }, - { - -- house silversun's signet ring - itemid = 22170, - type = "deequip", - slot = "ring", - }, - { - -- dark wizard's crown - itemid = 22154, - type = "equip", - slot = "head", - }, - { - -- dark wizard's crown - itemid = 22154, - type = "deequip", - slot = "head", - }, - { - -- dark wizard's crown - itemid = 22153, - type = "equip", - slot = "head", - }, - { - -- dark wizard's crown - itemid = 22153, - type = "deequip", - slot = "head", - }, - { - -- enchanted werewolf amulet - itemid = 22134, - type = "equip", - slot = "necklace", - }, - { - -- enchanted werewolf amulet - itemid = 22134, - type = "deequip", - slot = "necklace", - }, - { - -- enchanted werewolf helmet - sword - itemid = 22132, - type = "equip", - slot = "necklace", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted werewolf helmet - sword - itemid = 22132, - type = "deequip", - slot = "necklace", - level = 100, - }, - { - -- enchanted werewolf helmet - ml - itemid = 22130, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- enchanted werewolf helmet - ml - itemid = 22130, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf helmet - distance - itemid = 22129, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- enchanted werewolf helmet - distance - itemid = 22129, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf helmet - club - itemid = 22128, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted werewolf helmet - club - itemid = 22128, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf helmet - axe - itemid = 22127, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- enchanted werewolf helmet - axe - itemid = 22127, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- wereboar loincloth - itemid = 22087, - type = "equip", - slot = "legs", - }, - { - -- wereboar loincloth - itemid = 22087, - type = "deequip", - slot = "legs", - }, - { - -- badger boots - itemid = 22086, - type = "equip", - slot = "feet", - level = 60, - }, - { - -- badger boots - itemid = 22086, - type = "deequip", - slot = "feet", - level = 60, - }, - { - -- fur armor - itemid = 22085, - type = "equip", - slot = "armor", - level = 50, - }, - { - -- fur armor - itemid = 22085, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- wolf backpack - itemid = 22084, - type = "equip", - slot = "backpack", - }, - { - -- wolf backpack - itemid = 22084, - type = "deequip", - slot = "backpack", - }, - { - -- werewolf helmet - itemid = 22062, - type = "equip", - slot = "head", - level = 100, - }, - { - -- werewolf helmet - itemid = 22062, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- enchanted werewolf amulet - itemid = 22061, - type = "equip", - slot = "necklace", - }, - { - -- enchanted werewolf amulet - itemid = 22061, - type = "deequip", - slot = "necklace", - }, - { - -- werewolf amulet - itemid = 22060, - type = "equip", - slot = "necklace", - }, - { - -- werewolf amulet - itemid = 22060, - type = "deequip", - slot = "necklace", - }, - { - -- oriental shoes - itemid = 21981, - type = "equip", - slot = "feet", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- oriental shoes - itemid = 21981, - type = "deequip", - slot = "feet", - level = 80, - }, - { - -- sweetheart ring - itemid = 21955, - type = "equip", - slot = "ring", - }, - { - -- sweetheart ring - itemid = 21955, - type = "deequip", - slot = "ring", - }, - { - -- crest of the deep seas - itemid = 21892, - type = "equip", - slot = "head", - level = 80, - }, - { - -- crest of the deep seas - itemid = 21892, - type = "deequip", - slot = "head", - level = 80, - }, - { - -- brandon's wedding ring - itemid = 21745, - type = "equip", - slot = "ring", - }, - { - -- brandon's wedding ring - itemid = 21745, - type = "deequip", - slot = "ring", - }, - { - -- simple arrow - itemid = 21470, - type = "equip", - slot = "ammo", - }, - { - -- simple arrow - itemid = 21470, - type = "deequip", - slot = "ammo", - }, - { - -- war backpack - itemid = 21445, - type = "equip", - slot = "backpack", - }, - { - -- war backpack - itemid = 21445, - type = "deequip", - slot = "backpack", - }, - { - -- the Lion's Heart - itemid = 21439, - type = "equip", - slot = "necklace", - }, - { - -- the Lion's Heart - itemid = 21439, - type = "deequip", - slot = "necklace", - }, - { - -- shopping bag - itemid = 21411, - type = "equip", - slot = "backpack", - }, - { - -- shopping bag - itemid = 21411, - type = "deequip", - slot = "backpack", - }, - { - -- broken wooden shield - itemid = 21401, - type = "equip", - slot = "shield", - }, - { - -- broken wooden shield - itemid = 21401, - type = "deequip", - slot = "shield", - }, - { - -- spellbook of the novice - itemid = 21400, - type = "equip", - slot = "shield", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of the novice - itemid = 21400, - type = "deequip", - slot = "shield", - }, - { - -- the chiller - itemid = 21350, - type = "equip", - slot = "hand", - level = 1, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- the chiller - itemid = 21350, - type = "deequip", - slot = "hand", - level = 1, - }, - { - -- the scorcher - itemid = 21348, - type = "equip", - slot = "hand", - level = 1, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- the scorcher - itemid = 21348, - type = "deequip", - slot = "hand", - level = 1, - }, - { - -- glooth backpack - itemid = 21295, - type = "equip", - slot = "backpack", - }, - { - -- glooth backpack - itemid = 21295, - type = "deequip", - slot = "backpack", - }, - { - -- feedbag - itemid = 21292, - type = "equip", - slot = "backpack", - }, - { - -- feedbag - itemid = 21292, - type = "deequip", - slot = "backpack", - }, - { - -- one hit wonder - itemid = 21219, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- one hit wonder - itemid = 21219, - type = "deequip", - slot = "hand", - }, - { - -- glooth amulet - itemid = 21183, - type = "equip", - slot = "necklace", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glooth amulet - itemid = 21183, - type = "deequip", - slot = "necklace", - level = 75, - }, - { - -- glooth axe - itemid = 21180, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth axe - itemid = 21180, - type = "deequip", - slot = "hand", - }, - { - -- glooth blade - itemid = 21179, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth blade - itemid = 21179, - type = "deequip", - slot = "hand", - }, - { - -- glooth club - itemid = 21178, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth club - itemid = 21178, - type = "deequip", - slot = "hand", - }, - { - -- cowtana - itemid = 21177, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- cowtana - itemid = 21177, - type = "deequip", - slot = "hand", - level = 25, - }, - { - -- execowtioner axe - itemid = 21176, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- execowtioner axe - itemid = 21176, - type = "deequip", - slot = "hand", - }, - { - -- mino shield - itemid = 21175, - type = "equip", - slot = "shield", - }, - { - -- mino shield - itemid = 21175, - type = "deequip", - slot = "shield", - }, - { - -- mino lance - itemid = 21174, - type = "equip", - slot = "hand", - level = 45, - }, - { - -- mino lance - itemid = 21174, - type = "deequip", - slot = "hand", - }, - { - -- moohtant cudgel - itemid = 21173, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- moohtant cudgel - itemid = 21173, - type = "deequip", - slot = "hand", - }, - { - -- glooth whip - itemid = 21172, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- glooth whip - itemid = 21172, - type = "deequip", - slot = "hand", - }, - { - -- metal bat - itemid = 21171, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- metal bat - itemid = 21171, - type = "deequip", - slot = "hand", - }, - { - -- gearwheel chain - itemid = 21170, - type = "equip", - slot = "necklace", - level = 75, - }, - { - -- gearwheel chain - itemid = 21170, - type = "deequip", - slot = "necklace", - level = 75, - }, - { - -- metal spats - itemid = 21169, - type = "equip", - slot = "feet", - level = 50, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- metal spats - itemid = 21169, - type = "deequip", - slot = "feet", - level = 50, - }, - { - -- alloy legs - itemid = 21168, - type = "equip", - slot = "legs", - level = 60, - }, - { - -- alloy legs - itemid = 21168, - type = "deequip", - slot = "legs", - level = 60, - }, - { - -- heat core - itemid = 21167, - type = "equip", - slot = "armor", - }, - { - -- heat core - itemid = 21167, - type = "deequip", - slot = "armor", - }, - { - -- mooh'tah plate - itemid = 21166, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- mooh'tah plate - itemid = 21166, - type = "deequip", - slot = "armor", - }, - { - -- rubber cap - itemid = 21165, - type = "equip", - slot = "head", - level = 70, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- rubber cap - itemid = 21165, - type = "deequip", - slot = "head", - level = 70, - }, - { - -- glooth cape - itemid = 21164, - type = "equip", - slot = "armor", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glooth cape - itemid = 21164, - type = "deequip", - slot = "armor", - level = 40, - }, - { - -- glooth spear - itemid = 21158, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- glooth spear - itemid = 21158, - type = "deequip", - slot = "hand", - level = 60, - }, - { - -- cake backpack - itemid = 20347, - type = "equip", - slot = "backpack", - }, - { - -- cake backpack - itemid = 20347, - type = "deequip", - slot = "backpack", - }, - { - -- unstable ring of ending - itemid = 20209, - type = "equip", - slot = "ring", - }, - { - -- unstable ring of ending - itemid = 20209, - type = "deequip", - slot = "ring", - }, - { - -- broken visor - itemid = 20184, - type = "equip", - slot = "head", - }, - { - -- broken visor - itemid = 20184, - type = "deequip", - slot = "head", - }, - { - -- ring of ending - itemid = 20182, - type = "equip", - slot = "ring", - level = 200, - }, - { - -- ring of ending - itemid = 20182, - type = "deequip", - slot = "ring", - level = 200, - }, - { - -- eerie song book - itemid = 20140, - type = "equip", - slot = "shield", - }, - { - -- eerie song book - itemid = 20140, - type = "deequip", - slot = "shield", - }, - { - -- umbral master spellbook - itemid = 20090, - type = "equip", - slot = "shield", - level = 250, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- umbral master spellbook - itemid = 20090, - type = "deequip", - slot = "shield", - level = 250, - }, - { - -- umbral spellbook - itemid = 20089, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- umbral spellbook - itemid = 20089, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- crude umbral spellbook - itemid = 20088, - type = "equip", - slot = "shield", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- crude umbral spellbook - itemid = 20088, - type = "deequip", - slot = "shield", - level = 75, - }, - { - -- umbral master crossbow - itemid = 20087, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral master crossbow - itemid = 20087, - type = "deequip", - slot = "hand", - }, - { - -- umbral crossbow - itemid = 20086, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral crossbow - itemid = 20086, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral crossbow - itemid = 20085, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crude umbral crossbow - itemid = 20085, - type = "deequip", - slot = "hand", - }, - { - -- umbral master bow - itemid = 20084, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral master bow - itemid = 20084, - type = "deequip", - slot = "hand", - }, - { - -- umbral bow - itemid = 20083, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral bow - itemid = 20083, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral bow - itemid = 20082, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crude umbral bow - itemid = 20082, - type = "deequip", - slot = "hand", - }, - { - -- umbral master hammer - itemid = 20081, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master hammer - itemid = 20081, - type = "deequip", - slot = "hand", - }, - { - -- umbral hammer - itemid = 20080, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral hammer - itemid = 20080, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral hammer - itemid = 20079, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral hammer - itemid = 20079, - type = "deequip", - slot = "hand", - }, - { - -- umbral master mace - itemid = 20078, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master mace - itemid = 20078, - type = "deequip", - slot = "hand", - }, - { - -- umbral mace - itemid = 20077, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral mace - itemid = 20077, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral mace - itemid = 20076, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral mace - itemid = 20076, - type = "deequip", - slot = "hand", - }, - { - -- umbral master chopper - itemid = 20075, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master chopper - itemid = 20075, - type = "deequip", - slot = "hand", - }, - { - -- umbral chopper - itemid = 20074, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral chopper - itemid = 20074, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral chopper - itemid = 20073, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral chopper - itemid = 20073, - type = "deequip", - slot = "hand", - }, - { - -- umbral master axe - itemid = 20072, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master axe - itemid = 20072, - type = "deequip", - slot = "hand", - }, - { - -- umbral axe - itemid = 20071, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral axe - itemid = 20071, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral axe - itemid = 20070, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral axe - itemid = 20070, - type = "deequip", - slot = "hand", - }, - { - -- umbral master slayer - itemid = 20069, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master slayer - itemid = 20069, - type = "deequip", - slot = "hand", - }, - { - -- umbral slayer - itemid = 20068, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral slayer - itemid = 20068, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral slayer - itemid = 20067, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral slayer - itemid = 20067, - type = "deequip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral masterblade - itemid = 20066, - type = "equip", - slot = "hand", - level = 250, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral masterblade - itemid = 20066, - type = "deequip", - slot = "hand", - }, - { - -- umbral blade - itemid = 20065, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral blade - itemid = 20065, - type = "deequip", - slot = "hand", - }, - { - -- crude umbral blade - itemid = 20064, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral blade - itemid = 20064, - type = "deequip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- strange good night songs - itemid = 20050, - type = "equip", - slot = "shield", - }, - { - -- strange good night songs - itemid = 20050, - type = "deequip", - slot = "shield", - }, - { - -- furious frock - itemid = 19391, - type = "equip", - slot = "armor", - level = 130, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- furious frock - itemid = 19391, - type = "deequip", - slot = "armor", - level = 130, - }, - { - -- vampire silk slippers - itemid = 19374, - type = "equip", - slot = "feet", - }, - { - -- vampire silk slippers - itemid = 19374, - type = "deequip", - slot = "feet", - }, - { - -- haunted mirror piece - itemid = 19373, - type = "equip", - slot = "shield", - }, - { - -- haunted mirror piece - itemid = 19373, - type = "deequip", - slot = "shield", - }, - { - -- goo shell - itemid = 19372, - type = "equip", - slot = "armor", - }, - { - -- goo shell - itemid = 19372, - type = "deequip", - slot = "armor", - }, - { - -- icy culottes - itemid = 19366, - type = "equip", - slot = "legs", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- icy culottes - itemid = 19366, - type = "deequip", - slot = "legs", - }, - { - -- runic ice shield - itemid = 19363, - type = "equip", - slot = "shield", - }, - { - -- runic ice shield - itemid = 19363, - type = "deequip", - slot = "shield", - }, - { - -- icicle bow - itemid = 19362, - type = "equip", - slot = "hand", - }, - { - -- icicle bow - itemid = 19362, - type = "deequip", - slot = "hand", - }, - { - -- horn - itemid = 19359, - type = "equip", - slot = "ring", - }, - { - -- horn - itemid = 19359, - type = "deequip", - slot = "ring", - }, - { - -- albino plate - itemid = 19358, - type = "equip", - slot = "armor", - }, - { - -- albino plate - itemid = 19358, - type = "deequip", - slot = "armor", - }, - { - -- shrunken head necklace - itemid = 19357, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- shrunken head necklace - itemid = 19357, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- triple bolt crossbow - itemid = 19356, - type = "equip", - slot = "hand", - level = 70, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- triple bolt crossbow - itemid = 19356, - type = "deequip", - slot = "hand", - }, - { - -- pannier backpack - itemid = 19159, - type = "equip", - slot = "backpack", - }, - { - -- pannier backpack - itemid = 19159, - type = "deequip", - slot = "backpack", - }, - { - -- friendship amulet - itemid = 19153, - type = "equip", - slot = "necklace", - }, - { - -- friendship amulet - itemid = 19153, - type = "deequip", - slot = "necklace", - }, - { - -- vampire's signet ring - itemid = 18935, - type = "equip", - slot = "ring", - }, - { - -- vampire's signet ring - itemid = 18935, - type = "deequip", - slot = "ring", - }, - { - -- spiky club - itemid = 17859, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- spiky club - itemid = 17859, - type = "deequip", - slot = "hand", - }, - { - -- helmet of the lost - itemid = 17852, - type = "equip", - slot = "head", - }, - { - -- helmet of the lost - itemid = 17852, - type = "deequip", - slot = "head", - }, - { - -- leather harness - itemid = 17846, - type = "equip", - slot = "armor", - }, - { - -- leather harness - itemid = 17846, - type = "deequip", - slot = "armor", - }, - { - -- buckle - itemid = 17829, - type = "equip", - slot = "armor", - }, - { - -- buckle - itemid = 17829, - type = "deequip", - slot = "armor", - }, - { - -- pair of iron fists - itemid = 17828, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- pair of iron fists - itemid = 17828, - type = "deequip", - slot = "hand", - }, - { - -- swampling club - itemid = 17824, - type = "equip", - slot = "hand", - }, - { - -- swampling club - itemid = 17824, - type = "deequip", - slot = "hand", - }, - { - -- life preserver - itemid = 17813, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- life preserver - itemid = 17813, - type = "deequip", - slot = "hand", - }, - { - -- ratana - itemid = 17812, - type = "equip", - slot = "hand", - level = 15, - }, - { - -- ratana - itemid = 17812, - type = "deequip", - slot = "hand", - }, - { - -- spike shield - itemid = 17810, - type = "equip", - slot = "shield", - }, - { - -- spike shield - itemid = 17810, - type = "deequip", - slot = "shield", - }, - { - -- sorc and druid staff - itemid = 17111, - type = "equip", - slot = "hand", - level = 1, - vocation = { - { "None", true }, - }, - }, - { - -- sorc and druid staff - itemid = 17111, - type = "deequip", - slot = "hand", - level = 1, - }, - { - -- mean paladin spear - itemid = 17110, - type = "equip", - slot = "hand", - vocation = { - { "None", true }, - }, - }, - { - -- mean paladin spear - itemid = 17110, - type = "deequip", - slot = "hand", - vocation = { - { "None", true }, - }, - }, - { - -- mean knight sword - itemid = 17109, - type = "equip", - slot = "hand", - vocation = { - { "None", true }, - }, - }, - { - -- mean knight sword - itemid = 17109, - type = "deequip", - slot = "hand", - }, - { - -- prismatic ring - itemid = 16264, - type = "equip", - slot = "ring", - level = 120, - }, - { - -- prismatic ring - itemid = 16264, - type = "deequip", - slot = "ring", - level = 120, - }, - { - -- shiny blade - itemid = 16175, - type = "equip", - slot = "hand", - level = 120, - }, - { - -- shiny blade - itemid = 16175, - type = "deequip", - slot = "hand", - }, - { - -- mycological bow - itemid = 16164, - type = "equip", - slot = "hand", - level = 105, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mycological bow - itemid = 16164, - type = "deequip", - slot = "hand", - }, - { - -- crystal crossbow - itemid = 16163, - type = "equip", - slot = "hand", - level = 90, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crystal crossbow - itemid = 16163, - type = "deequip", - slot = "hand", - }, - { - -- mycological mace - itemid = 16162, - type = "equip", - slot = "hand", - level = 120, - }, - { - -- mycological mace - itemid = 16162, - type = "deequip", - slot = "hand", - }, - { - -- crystalline axe - itemid = 16161, - type = "equip", - slot = "hand", - level = 120, - }, - { - -- crystalline axe - itemid = 16161, - type = "deequip", - slot = "hand", - }, - { - -- crystalline sword - itemid = 16160, - type = "equip", - slot = "hand", - level = 62, - }, - { - -- crystalline sword - itemid = 16160, - type = "deequip", - slot = "hand", - }, - { - -- envenomed arrow - itemid = 16143, - type = "equip", - slot = "ammo", - }, - { - -- envenomed arrow - itemid = 16143, - type = "deequip", - slot = "ammo", - }, - { - -- drill bolt - itemid = 16142, - type = "equip", - slot = "ammo", - }, - { - -- drill bolt - itemid = 16142, - type = "deequip", - slot = "ammo", - }, - { - -- prismatic bolt - itemid = 16141, - type = "equip", - slot = "ammo", - }, - { - -- prismatic bolt - itemid = 16141, - type = "deequip", - slot = "ammo", - }, - { - -- glacial rod - itemid = 16118, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- glacial rod - itemid = 16118, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- muck rod - itemid = 16117, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- muck rod - itemid = 16117, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- prismatic shield - itemid = 16116, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- prismatic shield - itemid = 16116, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- wand of everblazing - itemid = 16115, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of everblazing - itemid = 16115, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- prismatic ring - itemid = 16114, - type = "equip", - slot = "ring", - level = 120, - }, - { - -- prismatic ring - itemid = 16114, - type = "deequip", - slot = "ring", - level = 120, - }, - { - -- prismatic necklace - itemid = 16113, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- prismatic necklace - itemid = 16113, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- prismatic boots - itemid = 16112, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- prismatic boots - itemid = 16112, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- prismatic legs - itemid = 16111, - type = "equip", - slot = "legs", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- prismatic legs - itemid = 16111, - type = "deequip", - slot = "legs", - level = 150, - }, - { - -- prismatic armor - itemid = 16110, - type = "equip", - slot = "armor", - level = 120, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- prismatic armor - itemid = 16110, - type = "deequip", - slot = "armor", - level = 120, - }, - { - -- prismatic helmet - itemid = 16109, - type = "equip", - slot = "head", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- prismatic helmet - itemid = 16109, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- gill necklace - itemid = 16108, - type = "equip", - slot = "necklace", - level = 150, - }, - { - -- gill necklace - itemid = 16108, - type = "deequip", - slot = "necklace", - level = 150, - }, - { - -- spellbook of vigilance - itemid = 16107, - type = "equip", - slot = "shield", - level = 130, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of vigilance - itemid = 16107, - type = "deequip", - slot = "shield", - level = 130, - }, - { - -- gill legs - itemid = 16106, - type = "equip", - slot = "legs", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gill legs - itemid = 16106, - type = "deequip", - slot = "legs", - level = 150, - }, - { - -- gill coat - itemid = 16105, - type = "equip", - slot = "armor", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gill coat - itemid = 16105, - type = "deequip", - slot = "armor", - level = 150, - }, - { - -- gill gugel - itemid = 16104, - type = "equip", - slot = "head", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- gill gugel - itemid = 16104, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- crystal backpack - itemid = 16100, - type = "equip", - slot = "backpack", - }, - { - -- crystal backpack - itemid = 16100, - type = "deequip", - slot = "backpack", - }, - { - -- mushroom backpack - itemid = 16099, - type = "equip", - slot = "backpack", - }, - { - -- mushroom backpack - itemid = 16099, - type = "deequip", - slot = "backpack", - }, - { - -- wand of defiance - itemid = 16096, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of defiance - itemid = 16096, - type = "deequip", - slot = "hand", - level = 65, - }, - { - -- crystalline arrow - itemid = 15793, - type = "equip", - slot = "ammo", - }, - { - -- crystalline arrow - itemid = 15793, - type = "deequip", - slot = "ammo", - }, - { - -- crystal bolt - itemid = 15792, - type = "equip", - slot = "ammo", - }, - { - -- crystal bolt - itemid = 15792, - type = "deequip", - slot = "ammo", - }, - { - -- spellbook of ancient arcana - itemid = 14769, - type = "equip", - slot = "shield", - level = 150, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of ancient arcana - itemid = 14769, - type = "deequip", - slot = "shield", - level = 150, - }, - { - -- thorn spitter - itemid = 14768, - type = "equip", - slot = "hand", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- thorn spitter - itemid = 14768, - type = "deequip", - slot = "hand", - }, - { - -- mathmaster shield - itemid = 14761, - type = "equip", - slot = "shield", - }, - { - -- mathmaster shield - itemid = 14761, - type = "deequip", - slot = "shield", - }, - { - -- mathmaster shield - itemid = 14760, - type = "equip", - slot = "shield", - }, - { - -- mathmaster shield - itemid = 14760, - type = "deequip", - slot = "shield", - }, - { - -- anniversary backpack - itemid = 14674, - type = "equip", - slot = "backpack", - }, - { - -- anniversary backpack - itemid = 14674, - type = "deequip", - slot = "backpack", - }, - { - -- vortex bolt - itemid = 14252, - type = "equip", - slot = "ammo", - }, - { - -- vortex bolt - itemid = 14252, - type = "deequip", - slot = "ammo", - }, - { - -- tarsal arrow - itemid = 14251, - type = "equip", - slot = "ammo", - }, - { - -- tarsal arrow - itemid = 14251, - type = "deequip", - slot = "ammo", - }, - { - -- deepling squelcher - itemid = 14250, - type = "equip", - slot = "hand", - level = 48, - }, - { - -- deepling squelcher - itemid = 14250, - type = "deequip", - slot = "hand", - }, - { - -- buggy backpack - itemid = 14249, - type = "equip", - slot = "backpack", - }, - { - -- buggy backpack - itemid = 14249, - type = "deequip", - slot = "backpack", - }, - { - -- deepling backpack - itemid = 14248, - type = "equip", - slot = "backpack", - }, - { - -- deepling backpack - itemid = 14248, - type = "deequip", - slot = "backpack", - }, - { - -- ornate crossbow - itemid = 14247, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ornate crossbow - itemid = 14247, - type = "deequip", - slot = "hand", - }, - { - -- hive bow - itemid = 14246, - type = "equip", - slot = "hand", - level = 85, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hive bow - itemid = 14246, - type = "deequip", - slot = "hand", - }, - { - -- hive scythe - itemid = 14089, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- hive scythe - itemid = 14089, - type = "deequip", - slot = "hand", - }, - { - -- carapace shield - itemid = 14088, - type = "equip", - slot = "shield", - }, - { - -- carapace shield - itemid = 14088, - type = "deequip", - slot = "shield", - }, - { - -- grasshopper legs - itemid = 14087, - type = "equip", - slot = "legs", - level = 75, - }, - { - -- grasshopper legs - itemid = 14087, - type = "deequip", - slot = "legs", - level = 75, - }, - { - -- calopteryx cape - itemid = 14086, - type = "equip", - slot = "armor", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- calopteryx cape - itemid = 14086, - type = "deequip", - slot = "armor", - level = 80, - }, - { - -- guardian axe - itemid = 14043, - type = "equip", - slot = "hand", - level = 50, - }, - { - -- guardian axe - itemid = 14043, - type = "deequip", - slot = "hand", - }, - { - -- warrior's shield - itemid = 14042, - type = "equip", - slot = "shield", - }, - { - -- warrior's shield - itemid = 14042, - type = "deequip", - slot = "shield", - }, - { - -- warrior's axe - itemid = 14040, - type = "equip", - slot = "hand", - level = 40, - }, - { - -- warrior's axe - itemid = 14040, - type = "deequip", - slot = "hand", - }, - { - -- ornate mace - itemid = 14001, - type = "equip", - slot = "hand", - level = 90, - }, - { - -- ornate mace - itemid = 14001, - type = "deequip", - slot = "hand", - }, - { - -- ornate shield - itemid = 14000, - type = "equip", - slot = "shield", - level = 130, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate shield - itemid = 14000, - type = "deequip", - slot = "shield", - level = 130, - }, - { - -- ornate legs - itemid = 13999, - type = "equip", - slot = "legs", - level = 185, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate legs - itemid = 13999, - type = "deequip", - slot = "legs", - level = 185, - }, - { - -- depth scutum - itemid = 13998, - type = "equip", - slot = "shield", - level = 120, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- depth scutum - itemid = 13998, - type = "deequip", - slot = "shield", - level = 120, - }, - { - -- depth calcei - itemid = 13997, - type = "equip", - slot = "feet", - level = 150, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- depth calcei - itemid = 13997, - type = "deequip", - slot = "feet", - level = 150, - }, - { - -- depth ocrea - itemid = 13996, - type = "equip", - slot = "legs", - level = 130, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- depth ocrea - itemid = 13996, - type = "deequip", - slot = "legs", - level = 130, - }, - { - -- depth galea - itemid = 13995, - type = "equip", - slot = "head", - level = 150, - }, - { - -- depth galea - itemid = 13995, - type = "deequip", - slot = "head", - level = 150, - }, - { - -- depth lorica - itemid = 13994, - type = "equip", - slot = "armor", - level = 150, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- depth lorica - itemid = 13994, - type = "deequip", - slot = "armor", - level = 150, - }, - { - -- ornate chestplate - itemid = 13993, - type = "equip", - slot = "armor", - level = 200, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate chestplate - itemid = 13993, - type = "deequip", - slot = "armor", - level = 200, - }, - { - -- deepling axe - itemid = 13991, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- deepling axe - itemid = 13991, - type = "deequip", - slot = "hand", - }, - { - -- necklace of the deep - itemid = 13990, - type = "equip", - slot = "necklace", - level = 120, - }, - { - -- necklace of the deep - itemid = 13990, - type = "deequip", - slot = "necklace", - level = 120, - }, - { - -- deepling staff - itemid = 13987, - type = "equip", - slot = "hand", - level = 38, - }, - { - -- deepling staff - itemid = 13987, - type = "deequip", - slot = "hand", - }, - { - -- the Epic Wisdom - itemid = 12810, - type = "equip", - slot = "head", - }, - { - -- the Epic Wisdom - itemid = 12810, - type = "deequip", - slot = "head", - }, - { - -- the Epic Wisdom - itemid = 12809, - type = "equip", - slot = "head", - }, - { - -- the Epic Wisdom - itemid = 12809, - type = "deequip", - slot = "head", - }, - { - -- shimmer wand - itemid = 12741, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- shimmer wand - itemid = 12741, - type = "deequip", - slot = "hand", - level = 40, - }, - { - -- broken ring of ending - itemid = 12737, - type = "equip", - slot = "ring", - }, - { - -- broken ring of ending - itemid = 12737, - type = "deequip", - slot = "ring", - }, - { - -- shimmer bow - itemid = 12733, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- shimmer bow - itemid = 12733, - type = "deequip", - slot = "hand", - }, - { - -- shimmer rod - itemid = 12732, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- shimmer rod - itemid = 12732, - type = "deequip", - slot = "hand", - level = 40, - }, - { - -- shimmer sword - itemid = 12731, - type = "equip", - slot = "hand", - level = 40, - }, - { - -- shimmer sword - itemid = 12731, - type = "deequip", - slot = "hand", - }, - { - -- heavy trident - itemid = 12683, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- heavy trident - itemid = 12683, - type = "deequip", - slot = "hand", - }, - { - -- wooden sword - itemid = 12673, - type = "equip", - slot = "hand", - }, - { - -- wooden sword - itemid = 12673, - type = "deequip", - slot = "hand", - }, - { - -- star ring - itemid = 12670, - type = "equip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- star ring - itemid = 12670, - type = "deequip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- star ring - itemid = 12669, - type = "equip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- star ring - itemid = 12669, - type = "deequip", - slot = "ring", - vocation = { - { "None", true }, - }, - }, - { - -- wand of dimensions - itemid = 12603, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of dimensions - itemid = 12603, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- mage's cap - itemid = 12599, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- mage's cap - itemid = 12599, - type = "deequip", - slot = "head", - }, - { - -- fish tail (equipped) - itemid = 11543, - type = "equip", - slot = "feet", - }, - { - -- fish tail (equipped) - itemid = 11543, - type = "deequip", - slot = "feet", - }, - { - -- golden hyena pendant - itemid = 12543, - type = "equip", - slot = "necklace", - }, - { - -- golden hyena pendant - itemid = 12543, - type = "deequip", - slot = "necklace", - }, - { - -- golden scorpion pendant - itemid = 12542, - type = "equip", - slot = "necklace", - }, - { - -- golden scorpion pendant - itemid = 12542, - type = "deequip", - slot = "necklace", - }, - { - -- old cape - itemid = 11701, - type = "equip", - slot = "armor", - }, - { - -- old cape - itemid = 11701, - type = "deequip", - slot = "armor", - }, - { - -- sedge hat - itemid = 11700, - type = "equip", - slot = "head", - }, - { - -- sedge hat - itemid = 11700, - type = "deequip", - slot = "head", - }, - { - -- loot bag - itemid = 11698, - type = "equip", - slot = "backpack", - }, - { - -- loot bag - itemid = 11698, - type = "deequip", - slot = "backpack", - }, - { - -- blade of corruption - itemid = 11693, - type = "equip", - slot = "hand", - level = 82, - }, - { - -- blade of corruption - itemid = 11693, - type = "deequip", - slot = "hand", - level = 82, - }, - { - -- snake god's sceptre - itemid = 11692, - type = "equip", - slot = "hand", - level = 82, - }, - { - -- snake god's sceptre - itemid = 11692, - type = "deequip", - slot = "hand", - }, - { - -- snake god's wristguard - itemid = 11691, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- snake god's wristguard - itemid = 11691, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- draken boots - itemid = 4033, - type = "equip", - slot = "feet", - level = 80, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- draken boots - itemid = 4033, - type = "deequip", - slot = "feet", - level = 80, - }, - { - -- elite draken helmet - itemid = 11689, - type = "equip", - slot = "head", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- elite draken helmet - itemid = 11689, - type = "deequip", - slot = "head", - level = 100, - }, - { - -- shield of corruption - itemid = 11688, - type = "equip", - slot = "shield", - level = 80, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- shield of corruption - itemid = 11688, - type = "deequip", - slot = "shield", - level = 80, - }, - { - -- royal scale robe - itemid = 11687, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- royal scale robe - itemid = 11687, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- royal draken mail - itemid = 11686, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- royal draken mail - itemid = 11686, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- cobra crown - itemid = 11674, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- cobra crown - itemid = 11674, - type = "deequip", - slot = "head", - }, - { - -- twiceslicer - itemid = 11657, - type = "equip", - slot = "hand", - level = 58, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- twiceslicer - itemid = 11657, - type = "deequip", - slot = "hand", - }, - { - -- elite draken mail - itemid = 11651, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- elite draken mail - itemid = 11651, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- fish tail (unequipped) - itemid = 11542, - type = "equip", - slot = "feet", - }, - { - -- fish tail (unequipped) - itemid = 11542, - type = "deequip", - slot = "feet", - }, - { - -- ornamented brooch - itemid = 11468, - type = "equip", - slot = "necklace", - }, - { - -- ornamented brooch - itemid = 11468, - type = "deequip", - slot = "necklace", - }, - { - -- lucky clover amulet - itemid = 10476, - type = "equip", - slot = "necklace", - }, - { - -- lucky clover amulet - itemid = 10476, - type = "deequip", - slot = "necklace", - }, - { - -- beetle necklace - itemid = 10457, - type = "equip", - slot = "necklace", - }, - { - -- beetle necklace - itemid = 10457, - type = "deequip", - slot = "necklace", - }, - { - -- jade hat - itemid = 10451, - type = "equip", - slot = "head", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- jade hat - itemid = 10451, - type = "deequip", - slot = "head", - level = 60, - }, - { - -- Zaoan robe - itemid = 10439, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- Zaoan robe - itemid = 10439, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- spellweaver's robe - itemid = 10438, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellweaver's robe - itemid = 10438, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- wailing widow's necklace - itemid = 10412, - type = "equip", - slot = "necklace", - }, - { - -- wailing widow's necklace - itemid = 10412, - type = "deequip", - slot = "necklace", - }, - { - -- Zaoan halberd - itemid = 10406, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- Zaoan halberd - itemid = 10406, - type = "deequip", - slot = "hand", - }, - { - -- twin hooks - itemid = 10392, - type = "equip", - slot = "hand", - level = 20, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- twin hooks - itemid = 10392, - type = "deequip", - slot = "hand", - }, - { - -- drachaku - itemid = 10391, - type = "equip", - slot = "hand", - level = 55, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- drachaku - itemid = 10391, - type = "deequip", - slot = "hand", - }, - { - -- Zaoan sword - itemid = 10390, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- Zaoan sword - itemid = 10390, - type = "deequip", - slot = "hand", - }, - { - -- sai - itemid = 10389, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sai - itemid = 10389, - type = "deequip", - slot = "hand", - }, - { - -- drakinata - itemid = 10388, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- drakinata - itemid = 10388, - type = "deequip", - slot = "hand", - }, - { - -- Zaoan legs - itemid = 10387, - type = "equip", - slot = "legs", - }, - { - -- Zaoan legs - itemid = 10387, - type = "deequip", - slot = "legs", - }, - { - -- zaoan shoes - itemid = 10386, - type = "equip", - slot = "feet", - }, - { - -- zaoan shoes - itemid = 10386, - type = "deequip", - slot = "feet", - }, - { - -- Zaoan helmet - itemid = 10385, - type = "equip", - slot = "head", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- Zaoan helmet - itemid = 10385, - type = "deequip", - slot = "head", - }, - { - -- Zaoan armor - itemid = 10384, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- Zaoan armor - itemid = 10384, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- santa backpack - itemid = 10346, - type = "equip", - slot = "backpack", - }, - { - -- santa backpack - itemid = 10346, - type = "deequip", - slot = "backpack", - }, - { - -- minotaur backpack - itemid = 10327, - type = "equip", - slot = "backpack", - }, - { - -- minotaur backpack - itemid = 10327, - type = "deequip", - slot = "backpack", - }, - { - -- dragon backpack - itemid = 10326, - type = "equip", - slot = "backpack", - }, - { - -- dragon backpack - itemid = 10326, - type = "deequip", - slot = "backpack", - }, - { - -- expedition bag - itemid = 10325, - type = "equip", - slot = "backpack", - }, - { - -- expedition bag - itemid = 10325, - type = "deequip", - slot = "backpack", - }, - { - -- expedition backpack - itemid = 10324, - type = "equip", - slot = "backpack", - }, - { - -- expedition backpack - itemid = 10324, - type = "deequip", - slot = "backpack", - }, - { - -- guardian boots - itemid = 10323, - type = "equip", - slot = "feet", - level = 70, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- guardian boots - itemid = 10323, - type = "deequip", - slot = "feet", - level = 70, - }, - { - -- heart backpack - itemid = 10202, - type = "equip", - slot = "backpack", - }, - { - -- heart backpack - itemid = 10202, - type = "deequip", - slot = "backpack", - }, - { - -- dragon scale boots - itemid = 10201, - type = "equip", - slot = "feet", - level = 70, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- dragon scale boots - itemid = 10201, - type = "deequip", - slot = "feet", - level = 70, - }, - { - -- crystal boots - itemid = 10200, - type = "equip", - slot = "feet", - level = 70, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crystal boots - itemid = 10200, - type = "deequip", - slot = "feet", - level = 70, - }, - { - -- witch hat - itemid = 9653, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- witch hat - itemid = 9653, - type = "deequip", - slot = "head", - }, - { - -- crown backpack - itemid = 9605, - type = "equip", - slot = "backpack", - }, - { - -- crown backpack - itemid = 9605, - type = "deequip", - slot = "backpack", - }, - { - -- moon backpack - itemid = 9604, - type = "equip", - slot = "backpack", - }, - { - -- moon backpack - itemid = 9604, - type = "deequip", - slot = "backpack", - }, - { - -- orange bag - itemid = 9603, - type = "equip", - slot = "backpack", - }, - { - -- orange bag - itemid = 9603, - type = "deequip", - slot = "backpack", - }, - { - -- orange backpack - itemid = 9602, - type = "equip", - slot = "backpack", - }, - { - -- orange backpack - itemid = 9602, - type = "deequip", - slot = "backpack", - }, - { - -- demon backpack - itemid = 9601, - type = "equip", - slot = "backpack", - }, - { - -- demon backpack - itemid = 9601, - type = "deequip", - slot = "backpack", - }, - { - -- broken wedding ring - itemid = 9593, - type = "equip", - slot = "ring", - }, - { - -- broken wedding ring - itemid = 9593, - type = "deequip", - slot = "ring", - }, - { - -- engraved wedding ring - itemid = 9585, - type = "equip", - slot = "ring", - }, - { - -- engraved wedding ring - itemid = 9585, - type = "deequip", - slot = "ring", - }, - { - -- the shield Nevermourn - itemid = 9447, - type = "equip", - slot = "shield", - }, - { - -- the shield Nevermourn - itemid = 9447, - type = "deequip", - slot = "shield", - }, - { - -- the rain coat - itemid = 9446, - type = "equip", - slot = "armor", - }, - { - -- the rain coat - itemid = 9446, - type = "deequip", - slot = "armor", - }, - { - -- the shield Nevermourn - itemid = 9401, - type = "equip", - slot = "shield", - }, - { - -- the shield Nevermourn - itemid = 9401, - type = "deequip", - slot = "shield", - }, - { - -- the rain coat - itemid = 9400, - type = "equip", - slot = "armor", - }, - { - -- the rain coat - itemid = 9400, - type = "deequip", - slot = "armor", - }, - { - -- mighty helm of green sparks - itemid = 9399, - type = "equip", - slot = "head", - }, - { - -- mighty helm of green sparks - itemid = 9399, - type = "deequip", - slot = "head", - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = "equip", - slot = "hand", - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = "deequip", - slot = "hand", - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9394, - type = "equip", - slot = "ring", - level = 100, - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9394, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9392, - type = "equip", - slot = "ring", - level = 100, - }, - { - -- claw of 'The Noxious Spawn' - itemid = 9392, - type = "deequip", - slot = "ring", - level = 100, - }, - { - -- poet's fencing quill - itemid = 9387, - type = "equip", - slot = "hand", - }, - { - -- poet's fencing quill - itemid = 9387, - type = "deequip", - slot = "hand", - }, - { - -- farmer's avenger - itemid = 9386, - type = "equip", - slot = "hand", - }, - { - -- farmer's avenger - itemid = 9386, - type = "deequip", - slot = "hand", - }, - { - -- club of the fury - itemid = 9385, - type = "equip", - slot = "hand", - }, - { - -- club of the fury - itemid = 9385, - type = "deequip", - slot = "hand", - }, - { - -- scythe of the reaper - itemid = 9384, - type = "equip", - slot = "hand", - }, - { - -- scythe of the reaper - itemid = 9384, - type = "deequip", - slot = "hand", - }, - { - -- trousers of the ancients - itemid = 9383, - type = "equip", - slot = "legs", - }, - { - -- trousers of the ancients - itemid = 9383, - type = "deequip", - slot = "legs", - }, - { - -- helmet of nature - itemid = 9382, - type = "equip", - slot = "head", - }, - { - -- helmet of nature - itemid = 9382, - type = "deequip", - slot = "head", - }, - { - -- helmet of ultimate terror - itemid = 9381, - type = "equip", - slot = "head", - }, - { - -- helmet of ultimate terror - itemid = 9381, - type = "deequip", - slot = "head", - }, - { - -- shield of care - itemid = 9380, - type = "equip", - slot = "shield", - }, - { - -- shield of care - itemid = 9380, - type = "deequip", - slot = "shield", - }, - { - -- heavy metal t-shirt - itemid = 9379, - type = "equip", - slot = "armor", - }, - { - -- heavy metal t-shirt - itemid = 9379, - type = "deequip", - slot = "armor", - }, - { - -- musician's bow - itemid = 9378, - type = "equip", - slot = "hand", - }, - { - -- musician's bow - itemid = 9378, - type = "deequip", - slot = "hand", - }, - { - -- shield of the white knight - itemid = 9377, - type = "equip", - slot = "shield", - }, - { - -- shield of the white knight - itemid = 9377, - type = "deequip", - slot = "shield", - }, - { - -- stale bread of ancientness - itemid = 9376, - type = "equip", - slot = "hand", - }, - { - -- stale bread of ancientness - itemid = 9376, - type = "deequip", - slot = "hand", - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = "equip", - slot = "hand", - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = "deequip", - slot = "hand", - }, - { - -- odd hat - itemid = 9374, - type = "equip", - slot = "head", - }, - { - -- odd hat - itemid = 9374, - type = "deequip", - slot = "head", - }, - { - -- glutton's mace - itemid = 9373, - type = "equip", - slot = "hand", - }, - { - -- glutton's mace - itemid = 9373, - type = "deequip", - slot = "hand", - }, - { - -- meat shield - itemid = 9372, - type = "equip", - slot = "shield", - }, - { - -- meat shield - itemid = 9372, - type = "deequip", - slot = "shield", - }, - { - -- shockwave amulet - itemid = 9304, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- shockwave amulet - itemid = 9304, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- leviathan's amulet - itemid = 9303, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- leviathan's amulet - itemid = 9303, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- sacred tree amulet - itemid = 9302, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- sacred tree amulet - itemid = 9302, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- bonfire amulet - itemid = 9301, - type = "equip", - slot = "necklace", - level = 80, - }, - { - -- bonfire amulet - itemid = 9301, - type = "deequip", - slot = "necklace", - level = 80, - }, - { - -- laurel wreath - itemid = 9221, - type = "equip", - slot = "head", - }, - { - -- laurel wreath - itemid = 9221, - type = "deequip", - slot = "head", - }, - { - -- bronze medal - itemid = 9217, - type = "equip", - slot = "necklace", - }, - { - -- bronze medal - itemid = 9217, - type = "deequip", - slot = "necklace", - }, - { - -- silver medal - itemid = 9216, - type = "equip", - slot = "necklace", - }, - { - -- silver medal - itemid = 9216, - type = "deequip", - slot = "necklace", - }, - { - -- gold medal - itemid = 9215, - type = "equip", - slot = "necklace", - }, - { - -- gold medal - itemid = 9215, - type = "deequip", - slot = "necklace", - }, - { - -- grey bag - itemid = 9151, - type = "equip", - slot = "backpack", - }, - { - -- grey bag - itemid = 9151, - type = "deequip", - slot = "backpack", - }, - { - -- batwing hat - itemid = 9103, - type = "equip", - slot = "head", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- batwing hat - itemid = 9103, - type = "deequip", - slot = "head", - level = 50, - }, - { - -- pair firewalker boots - itemid = 9019, - type = "equip", - slot = "feet", - level = 130, - }, - { - -- pair firewalker boots - itemid = 9019, - type = "deequip", - slot = "feet", - level = 130, - }, - { - -- firewalker boots - itemid = 9018, - type = "equip", - slot = "feet", - level = 130, - }, - { - -- firewalker boots - itemid = 9018, - type = "deequip", - slot = "feet", - level = 130, - }, - { - -- coconut shoes - itemid = 9017, - type = "equip", - slot = "feet", - }, - { - -- coconut shoes - itemid = 9017, - type = "deequip", - slot = "feet", - }, - { - -- flower dress - itemid = 9015, - type = "equip", - slot = "armor", - }, - { - -- flower dress - itemid = 9015, - type = "deequip", - slot = "armor", - }, - { - -- leaf legs - itemid = 9014, - type = "equip", - slot = "legs", - }, - { - -- leaf legs - itemid = 9014, - type = "deequip", - slot = "legs", - }, - { - -- flower wreath - itemid = 9013, - type = "equip", - slot = "head", - }, - { - -- flower wreath - itemid = 9013, - type = "deequip", - slot = "head", - }, - { - -- yalahari mask - itemid = 8864, - type = "equip", - slot = "head", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- yalahari mask - itemid = 8864, - type = "deequip", - slot = "head", - level = 80, - }, - { - -- yalahari leg piece - itemid = 8863, - type = "equip", - slot = "legs", - level = 80, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- yalahari leg piece - itemid = 8863, - type = "deequip", - slot = "legs", - level = 80, - }, - { - -- yalahari armor - itemid = 8862, - type = "equip", - slot = "armor", - level = 80, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- yalahari armor - itemid = 8862, - type = "deequip", - slot = "armor", - level = 80, - }, - { - -- brocade bag - itemid = 8861, - type = "equip", - slot = "backpack", - }, - { - -- brocade bag - itemid = 8861, - type = "deequip", - slot = "backpack", - }, - { - -- brocade backpack - itemid = 8860, - type = "equip", - slot = "backpack", - }, - { - -- brocade backpack - itemid = 8860, - type = "deequip", - slot = "backpack", - }, - { - -- golden bag - itemid = 655, - type = "equip", - slot = "backpack", - }, - { - -- golden bag - itemid = 655, - type = "deequip", - slot = "backpack", - }, - { - -- purple bag - itemid = 653, - type = "equip", - slot = "backpack", - }, - { - -- purple bag - itemid = 653, - type = "deequip", - slot = "backpack", - }, - { - -- the calamity - itemid = 8104, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the calamity - itemid = 8104, - type = "deequip", - slot = "hand", - }, - { - -- the epiphany - itemid = 8103, - type = "equip", - slot = "hand", - level = 120, - }, - { - -- the epiphany - itemid = 8103, - type = "deequip", - slot = "hand", - }, - { - -- emerald sword - itemid = 8102, - type = "equip", - slot = "hand", - level = 100, - }, - { - -- emerald sword - itemid = 8102, - type = "deequip", - slot = "hand", - }, - { - -- the stomper - itemid = 8101, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the stomper - itemid = 8101, - type = "deequip", - slot = "hand", - }, - { - -- obsidian truncheon - itemid = 8100, - type = "equip", - slot = "hand", - level = 100, - }, - { - -- obsidian truncheon - itemid = 8100, - type = "deequip", - slot = "hand", - }, - { - -- dark trinity mace - itemid = 8099, - type = "equip", - slot = "hand", - level = 120, - }, - { - -- dark trinity mace - itemid = 8099, - type = "deequip", - slot = "hand", - }, - { - -- demonwing axe - itemid = 8098, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- demonwing axe - itemid = 8098, - type = "deequip", - slot = "hand", - }, - { - -- solar axe - itemid = 8097, - type = "equip", - slot = "hand", - level = 130, - }, - { - -- solar axe - itemid = 8097, - type = "deequip", - slot = "hand", - }, - { - -- hellforged axe - itemid = 8096, - type = "equip", - slot = "hand", - level = 110, - }, - { - -- hellforged axe - itemid = 8096, - type = "deequip", - slot = "hand", - }, - { - -- ranger legs - itemid = 8095, - type = "equip", - slot = "legs", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ranger legs - itemid = 8095, - type = "deequip", - slot = "legs", - }, - { - -- wand of voodoo - itemid = 8094, - type = "equip", - slot = "hand", - level = 42, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of voodoo - itemid = 8094, - type = "deequip", - slot = "hand", - level = 42, - }, - { - -- wand of draconia - itemid = 8093, - type = "equip", - slot = "hand", - level = 22, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of draconia - itemid = 8093, - type = "deequip", - slot = "hand", - level = 22, - }, - { - -- wand of starstorm - itemid = 8092, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of starstorm - itemid = 8092, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- spellbook of dark mysteries - itemid = 8090, - type = "equip", - slot = "shield", - level = 80, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of dark mysteries - itemid = 8090, - type = "deequip", - slot = "shield", - level = 80, - }, - { - -- springsprout rod - itemid = 8084, - type = "equip", - slot = "hand", - level = 37, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- springsprout rod - itemid = 8084, - type = "deequip", - slot = "hand", - level = 37, - }, - { - -- northwind rod - itemid = 8083, - type = "equip", - slot = "hand", - level = 22, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- northwind rod - itemid = 8083, - type = "deequip", - slot = "hand", - level = 22, - }, - { - -- underworld rod - itemid = 8082, - type = "equip", - slot = "hand", - level = 42, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- underworld rod - itemid = 8082, - type = "deequip", - slot = "hand", - level = 42, - }, - { - -- terran rainbow shield - itemid = 8081, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- terran rainbow shield - itemid = 8081, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- sparking rainbow shield - itemid = 8080, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sparking rainbow shield - itemid = 8080, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- icy rainbow shield - itemid = 8079, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy rainbow shield - itemid = 8079, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- fiery rainbow shield - itemid = 8078, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery rainbow shield - itemid = 8078, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- rainbow shield - itemid = 8077, - type = "equip", - slot = "shield", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rainbow shield - itemid = 8077, - type = "deequip", - slot = "shield", - level = 100, - }, - { - -- spellscroll of prophecies - itemid = 8076, - type = "equip", - slot = "shield", - level = 70, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellscroll of prophecies - itemid = 8076, - type = "deequip", - slot = "shield", - level = 70, - }, - { - -- spellbook of lost souls - itemid = 8075, - type = "equip", - slot = "shield", - level = 60, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of lost souls - itemid = 8075, - type = "deequip", - slot = "shield", - level = 60, - }, - { - -- spellbook of mind control - itemid = 8074, - type = "equip", - slot = "shield", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of mind control - itemid = 8074, - type = "deequip", - slot = "shield", - level = 50, - }, - { - -- spellbook of warding - itemid = 8073, - type = "equip", - slot = "shield", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of warding - itemid = 8073, - type = "deequip", - slot = "shield", - level = 40, - }, - { - -- spellbook of enlightenment - itemid = 8072, - type = "equip", - slot = "shield", - level = 30, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook of enlightenment - itemid = 8072, - type = "deequip", - slot = "shield", - level = 30, - }, - { - -- ethno coat - itemid = 8064, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- ethno coat - itemid = 8064, - type = "deequip", - slot = "armor", - }, - { - -- paladin armor - itemid = 8063, - type = "equip", - slot = "armor", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- paladin armor - itemid = 8063, - type = "deequip", - slot = "armor", - }, - { - -- robe of the underworld - itemid = 8062, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- robe of the underworld - itemid = 8062, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- skullcracker armor - itemid = 8061, - type = "equip", - slot = "armor", - level = 85, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- skullcracker armor - itemid = 8061, - type = "deequip", - slot = "armor", - level = 85, - }, - { - -- master archer's armor - itemid = 8060, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- master archer's armor - itemid = 8060, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- frozen plate - itemid = 8059, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- frozen plate - itemid = 8059, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- molten plate - itemid = 8058, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- molten plate - itemid = 8058, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- divine plate - itemid = 8057, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- divine plate - itemid = 8057, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- oceanborn leviathan armor - itemid = 8056, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- oceanborn leviathan armor - itemid = 8056, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- windborn colossus armor - itemid = 8055, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- windborn colossus armor - itemid = 8055, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- earthborn titan armor - itemid = 8054, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earthborn titan armor - itemid = 8054, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- fireborn giant armor - itemid = 8053, - type = "equip", - slot = "armor", - level = 100, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fireborn giant armor - itemid = 8053, - type = "deequip", - slot = "armor", - level = 100, - }, - { - -- swamplair armor - itemid = 8052, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- swamplair armor - itemid = 8052, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- voltage armor - itemid = 8051, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- voltage armor - itemid = 8051, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- crystalline armor - itemid = 8050, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crystalline armor - itemid = 8050, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- lavos armor - itemid = 8049, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- lavos armor - itemid = 8049, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- girl's dress - itemid = 8048, - type = "equip", - slot = "armor", - }, - { - -- girl's dress - itemid = 8048, - type = "deequip", - slot = "armor", - }, - { - -- tunic - itemid = 8047, - type = "equip", - slot = "armor", - }, - { - -- tunic - itemid = 8047, - type = "deequip", - slot = "armor", - }, - { - -- summer dress - itemid = 8046, - type = "equip", - slot = "armor", - }, - { - -- summer dress - itemid = 8046, - type = "deequip", - slot = "armor", - }, - { - -- hibiscus dress - itemid = 8045, - type = "equip", - slot = "armor", - }, - { - -- hibiscus dress - itemid = 8045, - type = "deequip", - slot = "armor", - }, - { - -- belted cape - itemid = 8044, - type = "equip", - slot = "armor", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- belted cape - itemid = 8044, - type = "deequip", - slot = "armor", - }, - { - -- focus cape - itemid = 8043, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- focus cape - itemid = 8043, - type = "deequip", - slot = "armor", - }, - { - -- spirit cloak - itemid = 8042, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spirit cloak - itemid = 8042, - type = "deequip", - slot = "armor", - }, - { - -- greenwood coat - itemid = 8041, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- greenwood coat - itemid = 8041, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- velvet mantle - itemid = 8040, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- velvet mantle - itemid = 8040, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- dragon robe - itemid = 8039, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- dragon robe - itemid = 8039, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- robe of the ice queen - itemid = 8038, - type = "equip", - slot = "armor", - level = 75, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- robe of the ice queen - itemid = 8038, - type = "deequip", - slot = "armor", - level = 75, - }, - { - -- dark lord's cape - itemid = 8037, - type = "equip", - slot = "armor", - level = 65, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- dark lord's cape - itemid = 8037, - type = "deequip", - slot = "armor", - level = 65, - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = "equip", - slot = "hand", - level = 70, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = "deequip", - slot = "hand", - }, - { - -- silkweaver bow - itemid = 8029, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- silkweaver bow - itemid = 8029, - type = "deequip", - slot = "hand", - }, - { - -- yol's bow - itemid = 8028, - type = "equip", - slot = "hand", - level = 60, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- yol's bow - itemid = 8028, - type = "deequip", - slot = "hand", - }, - { - -- composite hornbow - itemid = 8027, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- composite hornbow - itemid = 8027, - type = "deequip", - slot = "hand", - }, - { - -- warsinger bow - itemid = 8026, - type = "equip", - slot = "hand", - level = 80, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- warsinger bow - itemid = 8026, - type = "deequip", - slot = "hand", - }, - { - -- The ironworker - itemid = 8025, - type = "equip", - slot = "hand", - level = 80, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- The ironworker - itemid = 8025, - type = "deequip", - slot = "hand", - }, - { - -- The Devileye - itemid = 8024, - type = "equip", - slot = "hand", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- The Devileye - itemid = 8024, - type = "deequip", - slot = "hand", - level = 100, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- royal crossbow - itemid = 8023, - type = "equip", - slot = "hand", - level = 130, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- royal crossbow - itemid = 8023, - type = "deequip", - slot = "hand", - }, - { - -- chain bolter - itemid = 8022, - type = "equip", - slot = "hand", - level = 60, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- chain bolter - itemid = 8022, - type = "deequip", - slot = "hand", - }, - { - -- modified crossbow - itemid = 8021, - type = "equip", - slot = "hand", - level = 45, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- modified crossbow - itemid = 8021, - type = "deequip", - slot = "hand", - }, - { - -- witchhunter's coat - itemid = 7993, - type = "equip", - slot = "armor", - level = 50, - }, - { - -- witchhunter's coat - itemid = 7993, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- mage hat - itemid = 7992, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- mage hat - itemid = 7992, - type = "deequip", - slot = "head", - }, - { - -- magician's robe - itemid = 7991, - type = "equip", - slot = "armor", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magician's robe - itemid = 7991, - type = "deequip", - slot = "armor", - }, - { - -- jagged sword - itemid = 7774, - type = "equip", - slot = "hand", - }, - { - -- jagged sword - itemid = 7774, - type = "deequip", - slot = "hand", - }, - { - -- steel axe - itemid = 7773, - type = "equip", - slot = "hand", - }, - { - -- steel axe - itemid = 7773, - type = "deequip", - slot = "hand", - }, - { - -- Jerom's family necklace - itemid = 7754, - type = "equip", - slot = "necklace", - }, - { - -- Jerom's family necklace - itemid = 7754, - type = "deequip", - slot = "necklace", - }, - { - -- Koshei's ancient amulet - itemid = 7532, - type = "equip", - slot = "necklace", - }, - { - -- Koshei's ancient amulet - itemid = 7532, - type = "deequip", - slot = "necklace", - }, - { - -- viper star - itemid = 7366, - type = "equip", - slot = "hand", - }, - { - -- viper star - itemid = 7366, - type = "deequip", - slot = "hand", - }, - { - -- crimson sword - itemid = 860, - type = "equip", - slot = "hand", - }, - { - -- crimson sword - itemid = 860, - type = "deequip", - slot = "hand", - }, - { - -- shapeshifter ring - itemid = 908, - type = "equip", - slot = "ring", - }, - { - -- shapeshifter ring - itemid = 908, - type = "deequip", - slot = "ring", - }, - { - -- shapeshifter ring - itemid = 907, - type = "equip", - slot = "ring", - }, - { - -- shapeshifter ring - itemid = 907, - type = "deequip", - slot = "ring", - }, - { - -- Throwing Cake - itemid = 904, - type = "equip", - slot = "ring", - }, - { - -- Throwing Cake - itemid = 904, - type = "deequip", - slot = "ring", - }, - { - -- jester hat - itemid = 894, - type = "equip", - slot = "head", - }, - { - -- jester hat - itemid = 894, - type = "deequip", - slot = "head", - }, - { - -- terra hood - itemid = 830, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra hood - itemid = 830, - type = "deequip", - slot = "head", - }, - { - -- glacier mask - itemid = 829, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier mask - itemid = 829, - type = "deequip", - slot = "head", - }, - { - -- lightning headband - itemid = 828, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning headband - itemid = 828, - type = "deequip", - slot = "head", - }, - { - -- magma monocle - itemid = 827, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma monocle - itemid = 827, - type = "deequip", - slot = "head", - }, - { - -- magma coat - itemid = 826, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma coat - itemid = 826, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- lightning robe - itemid = 825, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning robe - itemid = 825, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- glacier robe - itemid = 824, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier robe - itemid = 824, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- glacier kilt - itemid = 823, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier kilt - itemid = 823, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- lightning legs - itemid = 822, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning legs - itemid = 822, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- magma legs - itemid = 821, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma legs - itemid = 821, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- lightning boots - itemid = 820, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- lightning boots - itemid = 820, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- glacier shoes - itemid = 819, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- glacier shoes - itemid = 819, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- magma boots - itemid = 818, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- magma boots - itemid = 818, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- magma amulet - itemid = 817, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- magma amulet - itemid = 817, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- lightning pendant - itemid = 816, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- lightning pendant - itemid = 816, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- glacier amulet - itemid = 815, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- glacier amulet - itemid = 815, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- terra amulet - itemid = 814, - type = "equip", - slot = "necklace", - level = 60, - }, - { - -- terra amulet - itemid = 814, - type = "deequip", - slot = "necklace", - level = 60, - }, - { - -- terra boots - itemid = 813, - type = "equip", - slot = "feet", - level = 35, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra boots - itemid = 813, - type = "deequip", - slot = "feet", - level = 35, - }, - { - -- terra legs - itemid = 812, - type = "equip", - slot = "legs", - level = 40, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra legs - itemid = 812, - type = "deequip", - slot = "legs", - level = 40, - }, - { - -- terra mantle - itemid = 811, - type = "equip", - slot = "armor", - level = 50, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- terra mantle - itemid = 811, - type = "deequip", - slot = "armor", - level = 50, - }, - { - -- energy war hammer - itemid = 810, - type = "equip", - slot = "hand", - }, - { - -- energy war hammer - itemid = 810, - type = "deequip", - slot = "hand", - }, - { - -- energy orcish maul - itemid = 809, - type = "equip", - slot = "hand", - }, - { - -- energy orcish maul - itemid = 809, - type = "deequip", - slot = "hand", - }, - { - -- energy cranial basher - itemid = 808, - type = "equip", - slot = "hand", - }, - { - -- energy cranial basher - itemid = 808, - type = "deequip", - slot = "hand", - }, - { - -- energy crystal mace - itemid = 807, - type = "equip", - slot = "hand", - }, - { - -- energy crystal mace - itemid = 807, - type = "deequip", - slot = "hand", - }, - { - -- energy clerical mace - itemid = 806, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- energy clerical mace - itemid = 806, - type = "deequip", - slot = "hand", - }, - { - -- energy war axe - itemid = 805, - type = "equip", - slot = "hand", - }, - { - -- energy war axe - itemid = 805, - type = "deequip", - slot = "hand", - }, - { - -- energy headchopper - itemid = 804, - type = "equip", - slot = "hand", - }, - { - -- energy headchopper - itemid = 804, - type = "deequip", - slot = "hand", - }, - { - -- energy heroic axe - itemid = 803, - type = "equip", - slot = "hand", - }, - { - -- energy heroic axe - itemid = 803, - type = "deequip", - slot = "hand", - }, - { - -- energy knight axe - itemid = 802, - type = "equip", - slot = "hand", - }, - { - -- energy knight axe - itemid = 802, - type = "deequip", - slot = "hand", - }, - { - -- energy barbarian axe - itemid = 801, - type = "equip", - slot = "hand", - }, - { - -- energy barbarian axe - itemid = 801, - type = "deequip", - slot = "hand", - }, - { - -- energy dragon slayer - itemid = 798, - type = "equip", - slot = "hand", - level = 45, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy dragon slayer - itemid = 798, - type = "deequip", - slot = "hand", - }, - { - -- energy blacksteel sword - itemid = 797, - type = "equip", - slot = "hand", - }, - { - -- energy blacksteel sword - itemid = 797, - type = "deequip", - slot = "hand", - }, - { - -- energy mystic blade - itemid = 796, - type = "equip", - slot = "hand", - }, - { - -- energy mystic blade - itemid = 796, - type = "deequip", - slot = "hand", - }, - { - -- energy relic sword - itemid = 795, - type = "equip", - slot = "hand", - }, - { - -- energy relic sword - itemid = 795, - type = "deequip", - slot = "hand", - }, - { - -- energy spike sword - itemid = 794, - type = "equip", - slot = "hand", - }, - { - -- energy spike sword - itemid = 794, - type = "deequip", - slot = "hand", - }, - { - -- earth war hammer - itemid = 793, - type = "equip", - slot = "hand", - }, - { - -- earth war hammer - itemid = 793, - type = "deequip", - slot = "hand", - }, - { - -- earth orcish maul - itemid = 792, - type = "equip", - slot = "hand", - }, - { - -- earth orcish maul - itemid = 792, - type = "deequip", - slot = "hand", - }, - { - -- earth cranial basher - itemid = 791, - type = "equip", - slot = "hand", - }, - { - -- earth cranial basher - itemid = 791, - type = "deequip", - slot = "hand", - }, - { - -- earth crystal mace - itemid = 790, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- earth crystal mace - itemid = 790, - type = "deequip", - slot = "hand", - }, - { - -- earth clerical mace - itemid = 789, - type = "equip", - slot = "hand", - }, - { - -- earth clerical mace - itemid = 789, - type = "deequip", - slot = "hand", - }, - { - -- earth war axe - itemid = 788, - type = "equip", - slot = "hand", - }, - { - -- earth war axe - itemid = 788, - type = "deequip", - slot = "hand", - }, - { - -- earth headchopper - itemid = 787, - type = "equip", - slot = "hand", - }, - { - -- earth headchopper - itemid = 787, - type = "deequip", - slot = "hand", - }, - { - -- earth heroic axe - itemid = 786, - type = "equip", - slot = "hand", - }, - { - -- earth heroic axe - itemid = 786, - type = "deequip", - slot = "hand", - }, - { - -- earth knight axe - itemid = 785, - type = "equip", - slot = "hand", - }, - { - -- earth knight axe - itemid = 785, - type = "deequip", - slot = "hand", - }, - { - -- earth barbarian axe - itemid = 784, - type = "equip", - slot = "hand", - }, - { - -- earth barbarian axe - itemid = 784, - type = "deequip", - slot = "hand", - }, - { - -- earth dragon slayer - itemid = 783, - type = "equip", - slot = "hand", - }, - { - -- earth dragon slayer - itemid = 783, - type = "deequip", - slot = "hand", - }, - { - -- earth blacksteel sword - itemid = 782, - type = "equip", - slot = "hand", - }, - { - -- earth blacksteel sword - itemid = 782, - type = "deequip", - slot = "hand", - }, - { - -- earth mystic blade - itemid = 781, - type = "equip", - slot = "hand", - }, - { - -- earth mystic blade - itemid = 781, - type = "deequip", - slot = "hand", - }, - { - -- earth relic sword - itemid = 780, - type = "equip", - slot = "hand", - }, - { - -- earth relic sword - itemid = 780, - type = "deequip", - slot = "hand", - }, - { - -- earth spike sword - itemid = 779, - type = "equip", - slot = "hand", - }, - { - -- earth spike sword - itemid = 779, - type = "deequip", - slot = "hand", - }, - { - -- earth arrow - itemid = 774, - type = "equip", - slot = "ammo", - }, - { - -- earth arrow - itemid = 774, - type = "deequip", - slot = "ammo", - }, - { - -- flaming arrow - itemid = 763, - type = "equip", - slot = "ammo", - }, - { - -- flaming arrow - itemid = 763, - type = "deequip", - slot = "ammo", - }, - { - -- shiver arrow - itemid = 762, - type = "equip", - slot = "ammo", - }, - { - -- shiver arrow - itemid = 762, - type = "deequip", - slot = "ammo", - }, - { - -- flash arrow - itemid = 761, - type = "equip", - slot = "ammo", - }, - { - -- flash arrow - itemid = 761, - type = "deequip", - slot = "ammo", - }, - { - -- icy war hammer - itemid = 693, - type = "equip", - slot = "hand", - }, - { - -- icy war hammer - itemid = 693, - type = "deequip", - slot = "hand", - }, - { - -- icy orcish maul - itemid = 692, - type = "equip", - slot = "hand", - }, - { - -- icy orcish maul - itemid = 692, - type = "deequip", - slot = "hand", - }, - { - -- icy cranial basher - itemid = 691, - type = "equip", - slot = "hand", - }, - { - -- icy cranial basher - itemid = 691, - type = "deequip", - slot = "hand", - }, - { - -- icy crystal mace - itemid = 690, - type = "equip", - slot = "hand", - }, - { - -- icy crystal mace - itemid = 690, - type = "deequip", - slot = "hand", - }, - { - -- icy clerical mace - itemid = 689, - type = "equip", - slot = "hand", - }, - { - -- icy clerical mace - itemid = 689, - type = "deequip", - slot = "hand", - }, - { - -- icy war axe - itemid = 688, - type = "equip", - slot = "hand", - }, - { - -- icy war axe - itemid = 688, - type = "deequip", - slot = "hand", - }, - { - -- icy headchopper - itemid = 687, - type = "equip", - slot = "hand", - }, - { - -- icy headchopper - itemid = 687, - type = "deequip", - slot = "hand", - }, - { - -- icy heroic axe - itemid = 686, - type = "equip", - slot = "hand", - }, - { - -- icy heroic axe - itemid = 686, - type = "deequip", - slot = "hand", - }, - { - -- icy knight axe - itemid = 685, - type = "equip", - slot = "hand", - }, - { - -- icy knight axe - itemid = 685, - type = "deequip", - slot = "hand", - }, - { - -- icy barbarian axe - itemid = 684, - type = "equip", - slot = "hand", - }, - { - -- icy barbarian axe - itemid = 684, - type = "deequip", - slot = "hand", - }, - { - -- icy dragon slayer - itemid = 683, - type = "equip", - slot = "hand", - }, - { - -- icy dragon slayer - itemid = 683, - type = "deequip", - slot = "hand", - }, - { - -- icy blacksteel sword - itemid = 682, - type = "equip", - slot = "hand", - }, - { - -- icy blacksteel sword - itemid = 682, - type = "deequip", - slot = "hand", - }, - { - -- icy mystic blade - itemid = 681, - type = "equip", - slot = "hand", - }, - { - -- icy mystic blade - itemid = 681, - type = "deequip", - slot = "hand", - }, - { - -- icy relic sword - itemid = 680, - type = "equip", - slot = "hand", - }, - { - -- icy relic sword - itemid = 680, - type = "deequip", - slot = "hand", - }, - { - -- icy spike sword - itemid = 679, - type = "equip", - slot = "hand", - }, - { - -- icy spike sword - itemid = 679, - type = "deequip", - slot = "hand", - }, - { - -- fiery war hammer - itemid = 674, - type = "equip", - slot = "hand", - }, - { - -- fiery war hammer - itemid = 674, - type = "deequip", - slot = "hand", - }, - { - -- fiery orcish maul - itemid = 673, - type = "equip", - slot = "hand", - }, - { - -- fiery orcish maul - itemid = 673, - type = "deequip", - slot = "hand", - }, - { - -- fiery cranial basher - itemid = 672, - type = "equip", - slot = "hand", - }, - { - -- fiery cranial basher - itemid = 672, - type = "deequip", - slot = "hand", - }, - { - -- fiery crystal mace - itemid = 671, - type = "equip", - slot = "hand", - }, - { - -- fiery crystal mace - itemid = 671, - type = "deequip", - slot = "hand", - }, - { - -- fiery clerical mace - itemid = 670, - type = "equip", - slot = "hand", - }, - { - -- fiery clerical mace - itemid = 670, - type = "deequip", - slot = "hand", - }, - { - -- fiery war axe - itemid = 669, - type = "equip", - slot = "hand", - }, - { - -- fiery war axe - itemid = 669, - type = "deequip", - slot = "hand", - }, - { - -- fiery headchopper - itemid = 668, - type = "equip", - slot = "hand", - }, - { - -- fiery headchopper - itemid = 668, - type = "deequip", - slot = "hand", - }, - { - -- fiery heroic axe - itemid = 667, - type = "equip", - slot = "hand", - }, - { - -- fiery heroic axe - itemid = 667, - type = "deequip", - slot = "hand", - }, - { - -- fiery knight axe - itemid = 666, - type = "equip", - slot = "hand", - }, - { - -- fiery knight axe - itemid = 666, - type = "deequip", - slot = "hand", - }, - { - -- fiery barbarian axe - itemid = 665, - type = "equip", - slot = "hand", - }, - { - -- fiery barbarian axe - itemid = 665, - type = "deequip", - slot = "hand", - }, - { - -- fiery dragon slayer - itemid = 664, - type = "equip", - slot = "hand", - }, - { - -- fiery dragon slayer - itemid = 664, - type = "deequip", - slot = "hand", - }, - { - -- fiery blacksteel sword - itemid = 663, - type = "equip", - slot = "hand", - }, - { - -- fiery blacksteel sword - itemid = 663, - type = "deequip", - slot = "hand", - }, - { - -- fiery mystic blade - itemid = 662, - type = "equip", - slot = "hand", - }, - { - -- fiery mystic blade - itemid = 662, - type = "deequip", - slot = "hand", - }, - { - -- fiery relic sword - itemid = 661, - type = "equip", - slot = "hand", - }, - { - -- fiery relic sword - itemid = 661, - type = "deequip", - slot = "hand", - }, - { - -- fiery spike sword - itemid = 660, - type = "equip", - slot = "hand", - }, - { - -- fiery spike sword - itemid = 660, - type = "deequip", - slot = "hand", - }, - { - -- blue legs - itemid = 645, - type = "equip", - slot = "legs", - }, - { - -- blue legs - itemid = 645, - type = "deequip", - slot = "legs", - }, - { - -- family signet ring - itemid = 406, - type = "equip", - slot = "ring", - }, - { - -- family signet ring - itemid = 406, - type = "deequip", - slot = "ring", - }, - { - -- suspicious signet ring - itemid = 349, - type = "equip", - slot = "ring", - }, - { - -- suspicious signet ring - itemid = 349, - type = "deequip", - slot = "ring", - }, - { - -- mining helmet - itemid = 875, - type = "equip", - slot = "head", - }, - { - -- mining helmet - itemid = 875, - type = "deequip", - slot = "head", - }, - { - -- mammoth fur shorts - itemid = 7464, - type = "equip", - slot = "legs", - }, - { - -- mammoth fur shorts - itemid = 7464, - type = "deequip", - slot = "legs", - }, - { - -- mammoth fur cape - itemid = 7463, - type = "equip", - slot = "armor", - }, - { - -- mammoth fur cape - itemid = 7463, - type = "deequip", - slot = "armor", - }, - { - -- ragnir helmet - itemid = 7462, - type = "equip", - slot = "head", - }, - { - -- ragnir helmet - itemid = 7462, - type = "deequip", - slot = "head", - }, - { - -- krimhorn helmet - itemid = 7461, - type = "equip", - slot = "head", - }, - { - -- krimhorn helmet - itemid = 7461, - type = "deequip", - slot = "head", - }, - { - -- norse shield - itemid = 7460, - type = "equip", - slot = "shield", - }, - { - -- norse shield - itemid = 7460, - type = "deequip", - slot = "shield", - }, - { - -- pair of earmuffs - itemid = 7459, - type = "equip", - slot = "head", - }, - { - -- pair of earmuffs - itemid = 7459, - type = "deequip", - slot = "head", - }, - { - -- fur cap - itemid = 7458, - type = "equip", - slot = "head", - }, - { - -- fur cap - itemid = 7458, - type = "deequip", - slot = "head", - }, - { - -- fur boots - itemid = 7457, - type = "equip", - slot = "feet", - }, - { - -- fur boots - itemid = 7457, - type = "deequip", - slot = "feet", - }, - { - -- noble axe - itemid = 7456, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- noble axe - itemid = 7456, - type = "deequip", - slot = "hand", - }, - { - -- mythril axe - itemid = 7455, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- mythril axe - itemid = 7455, - type = "deequip", - slot = "hand", - }, - { - -- glorious axe - itemid = 7454, - type = "equip", - slot = "hand", - level = 30, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glorious axe - itemid = 7454, - type = "deequip", - slot = "hand", - }, - { - -- executioner - itemid = 7453, - type = "equip", - slot = "hand", - level = 85, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- executioner - itemid = 7453, - type = "deequip", - slot = "hand", - }, - { - -- spiked squelcher - itemid = 7452, - type = "equip", - slot = "hand", - level = 30, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiked squelcher - itemid = 7452, - type = "deequip", - slot = "hand", - }, - { - -- shadow sceptre - itemid = 7451, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- shadow sceptre - itemid = 7451, - type = "deequip", - slot = "hand", - }, - { - -- hammer of prophecy - itemid = 7450, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- hammer of prophecy - itemid = 7450, - type = "deequip", - slot = "hand", - }, - { - -- crystal sword - itemid = 7449, - type = "equip", - slot = "hand", - level = 25, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crystal sword - itemid = 7449, - type = "deequip", - slot = "hand", - }, - { - -- elvish bow - itemid = 7438, - type = "equip", - slot = "hand", - }, - { - -- elvish bow - itemid = 7438, - type = "deequip", - slot = "hand", - }, - { - -- sapphire hammer - itemid = 7437, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- sapphire hammer - itemid = 7437, - type = "deequip", - slot = "hand", - }, - { - -- angelic axe - itemid = 7436, - type = "equip", - slot = "hand", - level = 45, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- angelic axe - itemid = 7436, - type = "deequip", - slot = "hand", - }, - { - -- impaler - itemid = 7435, - type = "equip", - slot = "hand", - level = 85, - }, - { - -- impaler - itemid = 7435, - type = "deequip", - slot = "hand", - }, - { - -- royal axe - itemid = 7434, - type = "equip", - slot = "hand", - level = 75, - }, - { - -- royal axe - itemid = 7434, - type = "deequip", - slot = "hand", - }, - { - -- ravenwing - itemid = 7433, - type = "equip", - slot = "hand", - level = 65, - }, - { - -- ravenwing - itemid = 7433, - type = "deequip", - slot = "hand", - }, - { - -- furry club - itemid = 7432, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- furry club - itemid = 7432, - type = "deequip", - slot = "hand", - }, - { - -- demonbone - itemid = 7431, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- demonbone - itemid = 7431, - type = "deequip", - slot = "hand", - }, - { - -- dragonbone staff - itemid = 7430, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- dragonbone staff - itemid = 7430, - type = "deequip", - slot = "hand", - }, - { - -- blessed sceptre - itemid = 7429, - type = "equip", - slot = "hand", - level = 75, - }, - { - -- blessed sceptre - itemid = 7429, - type = "deequip", - slot = "hand", - }, - { - -- bonebreaker - itemid = 7428, - type = "equip", - slot = "hand", - level = 55, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- bonebreaker - itemid = 7428, - type = "deequip", - slot = "hand", - }, - { - -- chaos mace - itemid = 7427, - type = "equip", - slot = "hand", - level = 45, - }, - { - -- chaos mace - itemid = 7427, - type = "deequip", - slot = "hand", - }, - { - -- amber staff - itemid = 7426, - type = "equip", - slot = "hand", - level = 40, - }, - { - -- amber staff - itemid = 7426, - type = "deequip", - slot = "hand", - }, - { - -- taurus mace - itemid = 7425, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- taurus mace - itemid = 7425, - type = "deequip", - slot = "hand", - }, - { - -- lunar staff - itemid = 7424, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- lunar staff - itemid = 7424, - type = "deequip", - slot = "hand", - }, - { - -- skullcrusher - itemid = 7423, - type = "equip", - slot = "hand", - level = 85, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- skullcrusher - itemid = 7423, - type = "deequip", - slot = "hand", - }, - { - -- jade hammer - itemid = 7422, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- jade hammer - itemid = 7422, - type = "deequip", - slot = "hand", - }, - { - -- onyx flail - itemid = 7421, - type = "equip", - slot = "hand", - level = 65, - }, - { - -- onyx flail - itemid = 7421, - type = "deequip", - slot = "hand", - }, - { - -- reaper's axe - itemid = 7420, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- reaper's axe - itemid = 7420, - type = "deequip", - slot = "hand", - }, - { - -- dreaded cleaver - itemid = 7419, - type = "equip", - slot = "hand", - level = 40, - }, - { - -- dreaded cleaver - itemid = 7419, - type = "deequip", - slot = "hand", - }, - { - -- nightmare blade - itemid = 7418, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- nightmare blade - itemid = 7418, - type = "deequip", - slot = "hand", - }, - { - -- runed sword - itemid = 7417, - type = "equip", - slot = "hand", - level = 65, - }, - { - -- runed sword - itemid = 7417, - type = "deequip", - slot = "hand", - }, - { - -- bloody edge - itemid = 7416, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- bloody edge - itemid = 7416, - type = "deequip", - slot = "hand", - level = 55, - }, - { - -- cranial basher - itemid = 7415, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- cranial basher - itemid = 7415, - type = "deequip", - slot = "hand", - }, - { - -- abyss hammer - itemid = 7414, - type = "equip", - slot = "hand", - level = 60, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- abyss hammer - itemid = 7414, - type = "deequip", - slot = "hand", - }, - { - -- titan axe - itemid = 7413, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- titan axe - itemid = 7413, - type = "deequip", - slot = "hand", - }, - { - -- butcher's axe - itemid = 7412, - type = "equip", - slot = "hand", - level = 45, - }, - { - -- butcher's axe - itemid = 7412, - type = "deequip", - slot = "hand", - }, - { - -- ornamented axe - itemid = 7411, - type = "equip", - slot = "hand", - level = 50, - }, - { - -- ornamented axe - itemid = 7411, - type = "deequip", - slot = "hand", - }, - { - -- queen's sceptre - itemid = 7410, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- queen's sceptre - itemid = 7410, - type = "deequip", - slot = "hand", - }, - { - -- northern star - itemid = 7409, - type = "equip", - slot = "hand", - level = 50, - }, - { - -- northern star - itemid = 7409, - type = "deequip", - slot = "hand", - }, - { - -- wyvern fang - itemid = 7408, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- wyvern fang - itemid = 7408, - type = "deequip", - slot = "hand", - }, - { - -- haunted blade - itemid = 7407, - type = "equip", - slot = "hand", - level = 30, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- haunted blade - itemid = 7407, - type = "deequip", - slot = "hand", - }, - { - -- blacksteel sword - itemid = 7406, - type = "equip", - slot = "hand", - level = 35, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blacksteel sword - itemid = 7406, - type = "deequip", - slot = "hand", - level = 35, - }, - { - -- havoc blade - itemid = 7405, - type = "equip", - slot = "hand", - level = 70, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- havoc blade - itemid = 7405, - type = "deequip", - slot = "hand", - }, - { - -- assassin dagger - itemid = 7404, - type = "equip", - slot = "hand", - level = 40, - }, - { - -- assassin dagger - itemid = 7404, - type = "deequip", - slot = "hand", - level = 40, - }, - { - -- berserker - itemid = 7403, - type = "equip", - slot = "hand", - level = 65, - }, - { - -- berserker - itemid = 7403, - type = "deequip", - slot = "hand", - level = 65, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- dragon slayer - itemid = 7402, - type = "equip", - slot = "hand", - level = 45, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- dragon slayer - itemid = 7402, - type = "deequip", - slot = "hand", - }, - { - -- orcish maul - itemid = 7392, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- orcish maul - itemid = 7392, - type = "deequip", - slot = "hand", - }, - { - -- thaian sword - itemid = 7391, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- thaian sword - itemid = 7391, - type = "deequip", - slot = "hand", - }, - { - -- the justice seeker - itemid = 7390, - type = "equip", - slot = "hand", - level = 75, - }, - { - -- the justice seeker - itemid = 7390, - type = "deequip", - slot = "hand", - }, - { - -- heroic axe - itemid = 7389, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- heroic axe - itemid = 7389, - type = "deequip", - slot = "hand", - }, - { - -- vile axe - itemid = 7388, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- vile axe - itemid = 7388, - type = "deequip", - slot = "hand", - }, - { - -- diamond sceptre - itemid = 7387, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- diamond sceptre - itemid = 7387, - type = "deequip", - slot = "hand", - }, - { - -- mercenary sword - itemid = 7386, - type = "equip", - slot = "hand", - level = 40, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mercenary sword - itemid = 7386, - type = "deequip", - slot = "hand", - }, - { - -- crimson sword - itemid = 7385, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- crimson sword - itemid = 7385, - type = "deequip", - slot = "hand", - level = 20, - }, - { - -- mystic blade - itemid = 7384, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- mystic blade - itemid = 7384, - type = "deequip", - slot = "hand", - }, - { - -- relic sword - itemid = 7383, - type = "equip", - slot = "hand", - level = 50, - }, - { - -- relic sword - itemid = 7383, - type = "deequip", - slot = "hand", - }, - { - -- demonrage sword - itemid = 7382, - type = "equip", - slot = "hand", - level = 60, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- demonrage sword - itemid = 7382, - type = "deequip", - slot = "hand", - }, - { - -- mammoth whopper - itemid = 7381, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- mammoth whopper - itemid = 7381, - type = "deequip", - slot = "hand", - }, - { - -- headchopper - itemid = 7380, - type = "equip", - slot = "hand", - level = 35, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- headchopper - itemid = 7380, - type = "deequip", - slot = "hand", - }, - { - -- brutetamer's staff - itemid = 7379, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- brutetamer's staff - itemid = 7379, - type = "deequip", - slot = "hand", - }, - { - -- royal spear - itemid = 7378, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- royal spear - itemid = 7378, - type = "deequip", - slot = "hand", - level = 25, - }, - { - -- assassin star - itemid = 7368, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- assassin star - itemid = 7368, - type = "deequip", - slot = "hand", - level = 80, - }, - { - -- enchanted spear - itemid = 7367, - type = "equip", - slot = "hand", - level = 42, - }, - { - -- enchanted spear - itemid = 7367, - type = "deequip", - slot = "hand", - level = 42, - }, - { - -- onyx arrow - itemid = 7365, - type = "equip", - slot = "ammo", - }, - { - -- onyx arrow - itemid = 7365, - type = "deequip", - slot = "ammo", - }, - { - -- sniper arrow - itemid = 7364, - type = "equip", - slot = "ammo", - }, - { - -- sniper arrow - itemid = 7364, - type = "deequip", - slot = "ammo", - }, - { - -- piercing bolt - itemid = 7363, - type = "equip", - slot = "ammo", - }, - { - -- piercing bolt - itemid = 7363, - type = "deequip", - slot = "ammo", - }, - { - -- flame of life - itemid = 7360, - type = "additem", - }, - { - -- flame of life - itemid = 7359, - type = "stepin", - }, - { - -- fur bag - itemid = 7343, - type = "equip", - slot = "backpack", - }, - { - -- fur bag - itemid = 7343, - type = "deequip", - slot = "backpack", - }, - { - -- fur backpack - itemid = 7342, - type = "equip", - slot = "backpack", - }, - { - -- fur backpack - itemid = 7342, - type = "deequip", - slot = "backpack", - }, - { - -- party hat - itemid = 6578, - type = "equip", - slot = "head", - }, - { - -- party hat - itemid = 6578, - type = "deequip", - slot = "head", - }, - { - -- ruthless axe - itemid = 6553, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ruthless axe - itemid = 6553, - type = "deequip", - slot = "hand", - }, - { - -- santa hat - itemid = 6531, - type = "equip", - slot = "head", - }, - { - -- santa hat - itemid = 6531, - type = "deequip", - slot = "head", - }, - { - -- infernal bolt - itemid = 6528, - type = "equip", - slot = "ammo", - }, - { - -- infernal bolt - itemid = 6528, - type = "deequip", - slot = "ammo", - }, - { - -- the avenger - itemid = 6527, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the avenger - itemid = 6527, - type = "deequip", - slot = "hand", - }, - { - -- necromancer shield - itemid = 6432, - type = "equip", - slot = "shield", - }, - { - -- necromancer shield - itemid = 6432, - type = "deequip", - slot = "shield", - }, - { - -- nightmare shield - itemid = 6390, - type = "equip", - slot = "shield", - }, - { - -- nightmare shield - itemid = 6390, - type = "deequip", - slot = "shield", - }, - { - -- death ring - itemid = 6300, - type = "equip", - slot = "ring", - }, - { - -- death ring - itemid = 6300, - type = "deequip", - slot = "ring", - }, - { - -- death ring - itemid = 6299, - type = "equip", - slot = "ring", - }, - { - -- death ring - itemid = 6299, - type = "deequip", - slot = "ring", - }, - { - -- pair of soft boots - itemid = 6529, - type = "equip", - slot = "feet", - }, - { - -- pair of soft boots - itemid = 6529, - type = "deequip", - slot = "feet", - }, - { - -- tortoise shield - itemid = 6131, - type = "equip", - slot = "shield", - }, - { - -- tortoise shield - itemid = 6131, - type = "deequip", - slot = "shield", - }, - { - -- Dragha's spellbook - itemid = 6120, - type = "equip", - slot = "shield", - }, - { - -- Dragha's spellbook - itemid = 6120, - type = "deequip", - slot = "shield", - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = "equip", - slot = "hand", - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = "deequip", - slot = "hand", - }, - { - -- pirate hat - itemid = 6096, - type = "equip", - slot = "head", - }, - { - -- pirate hat - itemid = 6096, - type = "deequip", - slot = "head", - }, - { - -- pirate shirt - itemid = 6095, - type = "equip", - slot = "armor", - }, - { - -- pirate shirt - itemid = 6095, - type = "deequip", - slot = "armor", - }, - { - -- beach bag - itemid = 5950, - type = "equip", - slot = "backpack", - }, - { - -- beach bag - itemid = 5950, - type = "deequip", - slot = "backpack", - }, - { - -- beach backpack - itemid = 5949, - type = "equip", - slot = "backpack", - }, - { - -- beach backpack - itemid = 5949, - type = "deequip", - slot = "backpack", - }, - { - -- pirate bag - itemid = 5927, - type = "equip", - slot = "backpack", - }, - { - -- pirate bag - itemid = 5927, - type = "deequip", - slot = "backpack", - }, - { - -- pirate backpack - itemid = 5926, - type = "equip", - slot = "backpack", - }, - { - -- pirate backpack - itemid = 5926, - type = "deequip", - slot = "backpack", - }, - { - -- pirate knee breeches - itemid = 5918, - type = "equip", - slot = "legs", - }, - { - -- pirate knee breeches - itemid = 5918, - type = "deequip", - slot = "legs", - }, - { - -- bandana - itemid = 5917, - type = "equip", - slot = "head", - }, - { - -- bandana - itemid = 5917, - type = "deequip", - slot = "head", - }, - { - -- Ferumbras' hat - itemid = 5903, - type = "equip", - slot = "head", - }, - { - -- Ferumbras' hat - itemid = 5903, - type = "deequip", - slot = "head", - }, - { - -- arbalest - itemid = 5803, - type = "equip", - slot = "hand", - level = 75, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- arbalest - itemid = 5803, - type = "deequip", - slot = "hand", - }, - { - -- jewelled backpack - itemid = 5801, - type = "equip", - slot = "backpack", - }, - { - -- jewelled backpack - itemid = 5801, - type = "deequip", - slot = "backpack", - }, - { - -- skull helmet - itemid = 5741, - type = "equip", - slot = "head", - }, - { - -- skull helmet - itemid = 5741, - type = "deequip", - slot = "head", - }, - { - -- pirate boots - itemid = 5461, - type = "equip", - slot = "feet", - }, - { - -- pirate boots - itemid = 5461, - type = "deequip", - slot = "feet", - }, - { - -- helmet of the deep - itemid = 5460, - type = "equip", - slot = "head", - }, - { - -- helmet of the deep - itemid = 5460, - type = "deequip", - slot = "head", - }, - { - -- spectral dress - itemid = 4836, - type = "equip", - slot = "armor", - }, - { - -- spectral dress - itemid = 4836, - type = "deequip", - slot = "armor", - }, - { - -- bast skirt - itemid = 3560, - type = "equip", - slot = "legs", - }, - { - -- bast skirt - itemid = 3560, - type = "deequip", - slot = "legs", - }, - { - -- crocodile boots - itemid = 3556, - type = "equip", - slot = "feet", - }, - { - -- crocodile boots - itemid = 3556, - type = "deequip", - slot = "feet", - }, - { - -- salamander shield - itemid = 3445, - type = "equip", - slot = "shield", - }, - { - -- salamander shield - itemid = 3445, - type = "deequip", - slot = "shield", - }, - { - -- sentinel shield - itemid = 3444, - type = "equip", - slot = "shield", - }, - { - -- sentinel shield - itemid = 3444, - type = "deequip", - slot = "shield", - }, - { - -- tusk shield - itemid = 3443, - type = "equip", - slot = "shield", - }, - { - -- tusk shield - itemid = 3443, - type = "deequip", - slot = "shield", - }, - { - -- bonelord helmet - itemid = 3408, - type = "equip", - slot = "head", - }, - { - -- bonelord helmet - itemid = 3408, - type = "deequip", - slot = "head", - }, - { - -- charmer's tiara - itemid = 3407, - type = "equip", - slot = "head", - }, - { - -- charmer's tiara - itemid = 3407, - type = "deequip", - slot = "head", - }, - { - -- feather headdress - itemid = 3406, - type = "equip", - slot = "head", - }, - { - -- feather headdress - itemid = 3406, - type = "deequip", - slot = "head", - }, - { - -- horseman helmet - itemid = 3405, - type = "equip", - slot = "head", - }, - { - -- horseman helmet - itemid = 3405, - type = "deequip", - slot = "head", - }, - { - -- leopard armor - itemid = 3404, - type = "equip", - slot = "armor", - }, - { - -- leopard armor - itemid = 3404, - type = "deequip", - slot = "armor", - }, - { - -- tribal mask - itemid = 3403, - type = "equip", - slot = "head", - }, - { - -- tribal mask - itemid = 3403, - type = "deequip", - slot = "head", - }, - { - -- banana staff - itemid = 3348, - type = "equip", - slot = "hand", - }, - { - -- banana staff - itemid = 3348, - type = "deequip", - slot = "hand", - }, - { - -- hunting spear - itemid = 3347, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- hunting spear - itemid = 3347, - type = "deequip", - slot = "hand", - level = 20, - }, - { - -- ripper lance - itemid = 3346, - type = "equip", - slot = "hand", - }, - { - -- ripper lance - itemid = 3346, - type = "deequip", - slot = "hand", - }, - { - -- templar scytheblade - itemid = 3345, - type = "equip", - slot = "hand", - }, - { - -- templar scytheblade - itemid = 3345, - type = "deequip", - slot = "hand", - }, - { - -- beastslayer axe - itemid = 3344, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- beastslayer axe - itemid = 3344, - type = "deequip", - slot = "hand", - }, - { - -- lich staff - itemid = 3343, - type = "equip", - slot = "hand", - level = 40, - }, - { - -- lich staff - itemid = 3343, - type = "deequip", - slot = "hand", - }, - { - -- old and used backpack - itemid = 3244, - type = "equip", - slot = "backpack", - }, - { - -- old and used backpack - itemid = 3244, - type = "deequip", - slot = "backpack", - }, - { - -- camouflage backpack - itemid = 2872, - type = "equip", - slot = "backpack", - }, - { - -- camouflage backpack - itemid = 2872, - type = "deequip", - slot = "backpack", - }, - { - -- camouflage bag - itemid = 2864, - type = "equip", - slot = "backpack", - }, - { - -- camouflage bag - itemid = 2864, - type = "deequip", - slot = "backpack", - }, - { - -- post officer's hat - itemid = 3576, - type = "equip", - slot = "head", - }, - { - -- post officer's hat - itemid = 3576, - type = "deequip", - slot = "head", - }, - { - -- wood cape - itemid = 3575, - type = "equip", - slot = "head", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- wood cape - itemid = 3575, - type = "deequip", - slot = "head", - }, - { - -- mystic turban - itemid = 3574, - type = "equip", - slot = "head", - }, - { - -- mystic turban - itemid = 3574, - type = "deequip", - slot = "head", - }, - { - -- magician hat - itemid = 3573, - type = "equip", - slot = "head", - }, - { - -- magician hat - itemid = 3573, - type = "deequip", - slot = "head", - }, - { - -- scarf - itemid = 3572, - type = "equip", - slot = "necklace", - }, - { - -- scarf - itemid = 3572, - type = "deequip", - slot = "necklace", - }, - { - -- ranger's cloak - itemid = 3571, - type = "equip", - slot = "armor", - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ranger's cloak - itemid = 3571, - type = "deequip", - slot = "armor", - }, - { - -- ball gown - itemid = 3570, - type = "equip", - slot = "armor", - }, - { - -- ball gown - itemid = 3570, - type = "deequip", - slot = "armor", - }, - { - -- white dress - itemid = 3569, - type = "equip", - slot = "armor", - }, - { - -- white dress - itemid = 3569, - type = "deequip", - slot = "armor", - }, - { - -- simple dress - itemid = 3568, - type = "equip", - slot = "armor", - }, - { - -- simple dress - itemid = 3568, - type = "deequip", - slot = "armor", - }, - { - -- blue robe - itemid = 3567, - type = "equip", - slot = "armor", - }, - { - -- blue robe - itemid = 3567, - type = "deequip", - slot = "armor", - }, - { - -- red robe - itemid = 3566, - type = "equip", - slot = "armor", - }, - { - -- red robe - itemid = 3566, - type = "deequip", - slot = "armor", - }, - { - -- cape - itemid = 3565, - type = "equip", - slot = "armor", - }, - { - -- cape - itemid = 3565, - type = "deequip", - slot = "armor", - }, - { - -- red tunic - itemid = 3564, - type = "equip", - slot = "armor", - }, - { - -- red tunic - itemid = 3564, - type = "deequip", - slot = "armor", - }, - { - -- green tunic - itemid = 3563, - type = "equip", - slot = "armor", - }, - { - -- green tunic - itemid = 3563, - type = "deequip", - slot = "armor", - }, - { - -- coat - itemid = 3562, - type = "equip", - slot = "armor", - }, - { - -- coat - itemid = 3562, - type = "deequip", - slot = "armor", - }, - { - -- jacket - itemid = 3561, - type = "equip", - slot = "armor", - }, - { - -- jacket - itemid = 3561, - type = "deequip", - slot = "armor", - }, - { - -- leather legs - itemid = 3559, - type = "equip", - slot = "legs", - }, - { - -- leather legs - itemid = 3559, - type = "deequip", - slot = "legs", - }, - { - -- chain legs - itemid = 3558, - type = "equip", - slot = "legs", - }, - { - -- chain legs - itemid = 3558, - type = "deequip", - slot = "legs", - }, - { - -- plate legs - itemid = 3557, - type = "equip", - slot = "legs", - }, - { - -- plate legs - itemid = 3557, - type = "deequip", - slot = "legs", - }, - { - -- golden boots - itemid = 3555, - type = "equip", - slot = "feet", - }, - { - -- golden boots - itemid = 3555, - type = "deequip", - slot = "feet", - }, - { - -- steel boots - itemid = 3554, - type = "equip", - slot = "feet", - }, - { - -- steel boots - itemid = 3554, - type = "deequip", - slot = "feet", - }, - { - -- bunnyslippers - itemid = 3553, - type = "equip", - slot = "feet", - }, - { - -- bunnyslippers - itemid = 3553, - type = "deequip", - slot = "feet", - }, - { - -- leather boots - itemid = 3552, - type = "equip", - slot = "feet", - }, - { - -- leather boots - itemid = 3552, - type = "deequip", - slot = "feet", - }, - { - -- sandals - itemid = 3551, - type = "equip", - slot = "feet", - }, - { - -- sandals - itemid = 3551, - type = "deequip", - slot = "feet", - }, - { - -- patched boots - itemid = 3550, - type = "equip", - slot = "feet", - }, - { - -- patched boots - itemid = 3550, - type = "deequip", - slot = "feet", - }, - { - -- pair of soft boots - itemid = 3549, - type = "equip", - slot = "feet", - }, - { - -- pair of soft boots - itemid = 3549, - type = "deequip", - slot = "feet", - }, - { - -- scythe - itemid = 3453, - type = "equip", - slot = "hand", - }, - { - -- scythe - itemid = 3453, - type = "deequip", - slot = "hand", - }, - { - -- power bolt - itemid = 3450, - type = "equip", - slot = "ammo", - }, - { - -- power bolt - itemid = 3450, - type = "deequip", - slot = "ammo", - }, - { - -- arrow - itemid = 3447, - type = "equip", - slot = "ammo", - }, - { - -- arrow - itemid = 3447, - type = "deequip", - slot = "ammo", - }, - { - -- bolt - itemid = 3446, - type = "equip", - slot = "ammo", - }, - { - -- bolt - itemid = 3446, - type = "deequip", - slot = "ammo", - }, - { - -- tempest shield - itemid = 3442, - type = "equip", - slot = "shield", - }, - { - -- tempest shield - itemid = 3442, - type = "deequip", - slot = "shield", - }, - { - -- bone shield - itemid = 3441, - type = "equip", - slot = "shield", - }, - { - -- bone shield - itemid = 3441, - type = "deequip", - slot = "shield", - }, - { - -- scarab shield - itemid = 3440, - type = "equip", - slot = "shield", - }, - { - -- scarab shield - itemid = 3440, - type = "deequip", - slot = "shield", - }, - { - -- phoenix shield - itemid = 3439, - type = "equip", - slot = "shield", - }, - { - -- phoenix shield - itemid = 3439, - type = "deequip", - slot = "shield", - }, - { - -- eagle shield - itemid = 3438, - type = "equip", - slot = "shield", - }, - { - -- eagle shield - itemid = 3438, - type = "deequip", - slot = "shield", - }, - { - -- amazon shield - itemid = 3437, - type = "equip", - slot = "shield", - }, - { - -- amazon shield - itemid = 3437, - type = "deequip", - slot = "shield", - }, - { - -- medusa shield - itemid = 3436, - type = "equip", - slot = "shield", - }, - { - -- medusa shield - itemid = 3436, - type = "deequip", - slot = "shield", - }, - { - -- castle shield - itemid = 3435, - type = "equip", - slot = "shield", - }, - { - -- castle shield - itemid = 3435, - type = "deequip", - slot = "shield", - }, - { - -- vampire shield - itemid = 3434, - type = "equip", - slot = "shield", - }, - { - -- vampire shield - itemid = 3434, - type = "deequip", - slot = "shield", - }, - { - -- griffin shield - itemid = 3433, - type = "equip", - slot = "shield", - }, - { - -- griffin shield - itemid = 3433, - type = "deequip", - slot = "shield", - }, - { - -- ancient shield - itemid = 3432, - type = "equip", - slot = "shield", - }, - { - -- ancient shield - itemid = 3432, - type = "deequip", - slot = "shield", - }, - { - -- viking shield - itemid = 3431, - type = "equip", - slot = "shield", - }, - { - -- viking shield - itemid = 3431, - type = "deequip", - slot = "shield", - }, - { - -- copper shield - itemid = 3430, - type = "equip", - slot = "shield", - }, - { - -- copper shield - itemid = 3430, - type = "deequip", - slot = "shield", - }, - { - -- black shield - itemid = 3429, - type = "equip", - slot = "shield", - }, - { - -- black shield - itemid = 3429, - type = "deequip", - slot = "shield", - }, - { - -- tower shield - itemid = 3428, - type = "equip", - slot = "shield", - }, - { - -- tower shield - itemid = 3428, - type = "deequip", - slot = "shield", - }, - { - -- rose shield - itemid = 3427, - type = "equip", - slot = "shield", - }, - { - -- rose shield - itemid = 3427, - type = "deequip", - slot = "shield", - }, - { - -- studded shield - itemid = 3426, - type = "equip", - slot = "shield", - }, - { - -- studded shield - itemid = 3426, - type = "deequip", - slot = "shield", - }, - { - -- dwarven shield - itemid = 3425, - type = "equip", - slot = "shield", - }, - { - -- dwarven shield - itemid = 3425, - type = "deequip", - slot = "shield", - }, - { - -- ornamented shield - itemid = 3424, - type = "equip", - slot = "shield", - }, - { - -- ornamented shield - itemid = 3424, - type = "deequip", - slot = "shield", - }, - { - -- blessed shield - itemid = 3423, - type = "equip", - slot = "shield", - }, - { - -- blessed shield - itemid = 3423, - type = "deequip", - slot = "shield", - }, - { - -- great shield - itemid = 3422, - type = "equip", - slot = "shield", - }, - { - -- great shield - itemid = 3422, - type = "deequip", - slot = "shield", - }, - { - -- dark shield - itemid = 3421, - type = "equip", - slot = "shield", - }, - { - -- dark shield - itemid = 3421, - type = "deequip", - slot = "shield", - }, - { - -- demon shield - itemid = 3420, - type = "equip", - slot = "shield", - }, - { - -- demon shield - itemid = 3420, - type = "deequip", - slot = "shield", - }, - { - -- crown shield - itemid = 3419, - type = "equip", - slot = "shield", - }, - { - -- crown shield - itemid = 3419, - type = "deequip", - slot = "shield", - }, - { - -- bonelord shield - itemid = 3418, - type = "equip", - slot = "shield", - }, - { - -- bonelord shield - itemid = 3418, - type = "deequip", - slot = "shield", - }, - { - -- shield of honour - itemid = 3417, - type = "equip", - slot = "shield", - }, - { - -- shield of honour - itemid = 3417, - type = "deequip", - slot = "shield", - }, - { - -- dragon shield - itemid = 3416, - type = "equip", - slot = "shield", - }, - { - -- dragon shield - itemid = 3416, - type = "deequip", - slot = "shield", - }, - { - -- guardian shield - itemid = 3415, - type = "equip", - slot = "shield", - }, - { - -- guardian shield - itemid = 3415, - type = "deequip", - slot = "shield", - }, - { - -- mastermind shield - itemid = 3414, - type = "equip", - slot = "shield", - }, - { - -- mastermind shield - itemid = 3414, - type = "deequip", - slot = "shield", - }, - { - -- battle shield - itemid = 3413, - type = "equip", - slot = "shield", - }, - { - -- battle shield - itemid = 3413, - type = "deequip", - slot = "shield", - }, - { - -- wooden shield - itemid = 3412, - type = "equip", - slot = "shield", - }, - { - -- wooden shield - itemid = 3412, - type = "deequip", - slot = "shield", - }, - { - -- brass shield - itemid = 3411, - type = "equip", - slot = "shield", - }, - { - -- brass shield - itemid = 3411, - type = "deequip", - slot = "shield", - }, - { - -- plate shield - itemid = 3410, - type = "equip", - slot = "shield", - }, - { - -- plate shield - itemid = 3410, - type = "deequip", - slot = "shield", - }, - { - -- steel shield - itemid = 3409, - type = "equip", - slot = "shield", - }, - { - -- steel shield - itemid = 3409, - type = "deequip", - slot = "shield", - }, - { - -- native armor - itemid = 3402, - type = "equip", - slot = "armor", - }, - { - -- native armor - itemid = 3402, - type = "deequip", - slot = "armor", - }, - { - -- elven legs - itemid = 3401, - type = "equip", - slot = "legs", - }, - { - -- elven legs - itemid = 3401, - type = "deequip", - slot = "legs", - }, - { - -- dragon scale helmet - itemid = 3400, - type = "equip", - slot = "head", - }, - { - -- dragon scale helmet - itemid = 3400, - type = "deequip", - slot = "head", - }, - { - -- elven mail - itemid = 3399, - type = "equip", - slot = "armor", - }, - { - -- elven mail - itemid = 3399, - type = "deequip", - slot = "armor", - }, - { - -- dwarven legs - itemid = 3398, - type = "equip", - slot = "legs", - }, - { - -- dwarven legs - itemid = 3398, - type = "deequip", - slot = "legs", - }, - { - -- dwarven armor - itemid = 3397, - type = "equip", - slot = "armor", - }, - { - -- dwarven armor - itemid = 3397, - type = "deequip", - slot = "armor", - }, - { - -- dwarven helmet - itemid = 3396, - type = "equip", - slot = "head", - }, - { - -- dwarven helmet - itemid = 3396, - type = "deequip", - slot = "head", - }, - { - -- ceremonial mask - itemid = 3395, - type = "equip", - slot = "head", - }, - { - -- ceremonial mask - itemid = 3395, - type = "deequip", - slot = "head", - }, - { - -- amazon armor - itemid = 3394, - type = "equip", - slot = "armor", - level = 60, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- amazon armor - itemid = 3394, - type = "deequip", - slot = "armor", - level = 60, - }, - { - -- amazon helmet - itemid = 3393, - type = "equip", - slot = "head", - }, - { - -- amazon helmet - itemid = 3393, - type = "deequip", - slot = "head", - }, - { - -- royal helmet - itemid = 3392, - type = "equip", - slot = "head", - }, - { - -- royal helmet - itemid = 3392, - type = "deequip", - slot = "head", - }, - { - -- crusader helmet - itemid = 3391, - type = "equip", - slot = "head", - }, - { - -- crusader helmet - itemid = 3391, - type = "deequip", - slot = "head", - }, - { - -- horned helmet - itemid = 3390, - type = "equip", - slot = "head", - }, - { - -- horned helmet - itemid = 3390, - type = "deequip", - slot = "head", - }, - { - -- demon legs - itemid = 3389, - type = "equip", - slot = "legs", - }, - { - -- demon legs - itemid = 3389, - type = "deequip", - slot = "legs", - }, - { - -- demon armor - itemid = 3388, - type = "equip", - slot = "armor", - }, - { - -- demon armor - itemid = 3388, - type = "deequip", - slot = "armor", - }, - { - -- demon helmet - itemid = 3387, - type = "equip", - slot = "head", - }, - { - -- demon helmet - itemid = 3387, - type = "deequip", - slot = "head", - }, - { - -- dragon scale mail - itemid = 3386, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- dragon scale mail - itemid = 3386, - type = "deequip", - slot = "armor", - }, - { - -- crown helmet - itemid = 3385, - type = "equip", - slot = "head", - }, - { - -- crown helmet - itemid = 3385, - type = "deequip", - slot = "head", - }, - { - -- dark helmet - itemid = 3384, - type = "equip", - slot = "head", - }, - { - -- dark helmet - itemid = 3384, - type = "deequip", - slot = "head", - }, - { - -- dark armor - itemid = 3383, - type = "equip", - slot = "armor", - }, - { - -- dark armor - itemid = 3383, - type = "deequip", - slot = "armor", - }, - { - -- crown legs - itemid = 3382, - type = "equip", - slot = "legs", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crown legs - itemid = 3382, - type = "deequip", - slot = "legs", - }, - { - -- crown armor - itemid = 3381, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- crown armor - itemid = 3381, - type = "deequip", - slot = "armor", - }, - { - -- noble armor - itemid = 3380, - type = "equip", - slot = "armor", - }, - { - -- noble armor - itemid = 3380, - type = "deequip", - slot = "armor", - }, - { - -- doublet - itemid = 3379, - type = "equip", - slot = "armor", - }, - { - -- doublet - itemid = 3379, - type = "deequip", - slot = "armor", - }, - { - -- studded armor - itemid = 3378, - type = "equip", - slot = "armor", - }, - { - -- studded armor - itemid = 3378, - type = "deequip", - slot = "armor", - }, - { - -- scale armor - itemid = 3377, - type = "equip", - slot = "armor", - }, - { - -- scale armor - itemid = 3377, - type = "deequip", - slot = "armor", - }, - { - -- studded helmet - itemid = 3376, - type = "equip", - slot = "head", - }, - { - -- studded helmet - itemid = 3376, - type = "deequip", - slot = "head", - }, - { - -- soldier helmet - itemid = 3375, - type = "equip", - slot = "head", - }, - { - -- soldier helmet - itemid = 3375, - type = "deequip", - slot = "head", - }, - { - -- legion helmet - itemid = 3374, - type = "equip", - slot = "head", - }, - { - -- legion helmet - itemid = 3374, - type = "deequip", - slot = "head", - }, - { - -- strange helmet - itemid = 3373, - type = "equip", - slot = "head", - }, - { - -- strange helmet - itemid = 3373, - type = "deequip", - slot = "head", - }, - { - -- brass legs - itemid = 3372, - type = "equip", - slot = "legs", - }, - { - -- brass legs - itemid = 3372, - type = "deequip", - slot = "legs", - }, - { - -- knight legs - itemid = 3371, - type = "equip", - slot = "legs", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- knight legs - itemid = 3371, - type = "deequip", - slot = "legs", - }, - { - -- knight armor - itemid = 3370, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- knight armor - itemid = 3370, - type = "deequip", - slot = "armor", - }, - { - -- warrior helmet - itemid = 3369, - type = "equip", - slot = "head", - }, - { - -- warrior helmet - itemid = 3369, - type = "deequip", - slot = "head", - }, - { - -- winged helmet - itemid = 3368, - type = "equip", - slot = "head", - }, - { - -- winged helmet - itemid = 3368, - type = "deequip", - slot = "head", - }, - { - -- viking helmet - itemid = 3367, - type = "equip", - slot = "head", - }, - { - -- viking helmet - itemid = 3367, - type = "deequip", - slot = "head", - }, - { - -- magic plate armor - itemid = 3366, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- magic plate armor - itemid = 3366, - type = "deequip", - slot = "armor", - }, - { - -- golden helmet - itemid = 3365, - type = "equip", - slot = "head", - }, - { - -- golden helmet - itemid = 3365, - type = "deequip", - slot = "head", - }, - { - -- golden legs - itemid = 3364, - type = "equip", - slot = "legs", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- golden legs - itemid = 3364, - type = "deequip", - slot = "legs", - }, - { - -- dragon scale legs - itemid = 3363, - type = "equip", - slot = "legs", - }, - { - -- dragon scale legs - itemid = 3363, - type = "deequip", - slot = "legs", - }, - { - -- studded legs - itemid = 3362, - type = "equip", - slot = "legs", - }, - { - -- studded legs - itemid = 3362, - type = "deequip", - slot = "legs", - }, - { - -- leather armor - itemid = 3361, - type = "equip", - slot = "armor", - }, - { - -- leather armor - itemid = 3361, - type = "deequip", - slot = "armor", - }, - { - -- golden armor - itemid = 3360, - type = "equip", - slot = "armor", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- golden armor - itemid = 3360, - type = "deequip", - slot = "armor", - }, - { - -- brass armor - itemid = 3359, - type = "equip", - slot = "armor", - }, - { - -- brass armor - itemid = 3359, - type = "deequip", - slot = "armor", - }, - { - -- chain armor - itemid = 3358, - type = "equip", - slot = "armor", - }, - { - -- chain armor - itemid = 3358, - type = "deequip", - slot = "armor", - }, - { - -- plate armor - itemid = 3357, - type = "equip", - slot = "armor", - }, - { - -- plate armor - itemid = 3357, - type = "deequip", - slot = "armor", - }, - { - -- devil helmet - itemid = 3356, - type = "equip", - slot = "head", - }, - { - -- devil helmet - itemid = 3356, - type = "deequip", - slot = "head", - }, - { - -- leather helmet - itemid = 3355, - type = "equip", - slot = "head", - }, - { - -- leather helmet - itemid = 3355, - type = "deequip", - slot = "head", - }, - { - -- brass helmet - itemid = 3354, - type = "equip", - slot = "head", - }, - { - -- brass helmet - itemid = 3354, - type = "deequip", - slot = "head", - }, - { - -- iron helmet - itemid = 3353, - type = "equip", - slot = "head", - }, - { - -- iron helmet - itemid = 3353, - type = "deequip", - slot = "head", - }, - { - -- chain helmet - itemid = 3352, - type = "equip", - slot = "head", - }, - { - -- chain helmet - itemid = 3352, - type = "deequip", - slot = "head", - }, - { - -- steel helmet - itemid = 3351, - type = "equip", - slot = "head", - }, - { - -- steel helmet - itemid = 3351, - type = "deequip", - slot = "head", - }, - { - -- bow - itemid = 3350, - type = "equip", - slot = "hand", - }, - { - -- bow - itemid = 3350, - type = "deequip", - slot = "hand", - }, - { - -- crossbow - itemid = 3349, - type = "equip", - slot = "hand", - }, - { - -- crossbow - itemid = 3349, - type = "deequip", - slot = "hand", - }, - { - -- war axe - itemid = 3342, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- war axe - itemid = 3342, - type = "deequip", - slot = "hand", - }, - { - -- arcane staff - itemid = 3341, - type = "equip", - slot = "hand", - level = 75, - }, - { - -- arcane staff - itemid = 3341, - type = "deequip", - slot = "hand", - }, - { - -- heavy mace - itemid = 3340, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- heavy mace - itemid = 3340, - type = "deequip", - slot = "hand", - }, - { - -- djinn blade - itemid = 3339, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- djinn blade - itemid = 3339, - type = "deequip", - slot = "hand", - }, - { - -- bone sword - itemid = 3338, - type = "equip", - slot = "hand", - }, - { - -- bone sword - itemid = 3338, - type = "deequip", - slot = "hand", - }, - { - -- bone club - itemid = 3337, - type = "equip", - slot = "hand", - }, - { - -- bone club - itemid = 3337, - type = "deequip", - slot = "hand", - }, - { - -- studded club - itemid = 3336, - type = "equip", - slot = "hand", - }, - { - -- studded club - itemid = 3336, - type = "deequip", - slot = "hand", - }, - { - -- twin axe - itemid = 3335, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- twin axe - itemid = 3335, - type = "deequip", - slot = "hand", - }, - { - -- pharaoh sword - itemid = 3334, - type = "equip", - slot = "hand", - level = 45, - }, - { - -- pharaoh sword - itemid = 3334, - type = "deequip", - slot = "hand", - }, - { - -- crystal mace - itemid = 3333, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- crystal mace - itemid = 3333, - type = "deequip", - slot = "hand", - }, - { - -- hammer of wrath - itemid = 3332, - type = "equip", - slot = "hand", - level = 65, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- hammer of wrath - itemid = 3332, - type = "deequip", - slot = "hand", - }, - { - -- ravager's axe - itemid = 3331, - type = "equip", - slot = "hand", - level = 70, - }, - { - -- ravager's axe - itemid = 3331, - type = "deequip", - slot = "hand", - }, - { - -- heavy machete - itemid = 3330, - type = "equip", - slot = "hand", - }, - { - -- heavy machete - itemid = 3330, - type = "deequip", - slot = "hand", - }, - { - -- daramian axe - itemid = 3329, - type = "equip", - slot = "hand", - }, - { - -- daramian axe - itemid = 3329, - type = "deequip", - slot = "hand", - }, - { - -- daramian waraxe - itemid = 3328, - type = "equip", - slot = "hand", - level = 25, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- daramian waraxe - itemid = 3328, - type = "deequip", - slot = "hand", - }, - { - -- daramian mace - itemid = 3327, - type = "equip", - slot = "hand", - }, - { - -- daramian mace - itemid = 3327, - type = "deequip", - slot = "hand", - }, - { - -- epee - itemid = 3326, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- epee - itemid = 3326, - type = "deequip", - slot = "hand", - }, - { - -- light mace - itemid = 3325, - type = "equip", - slot = "hand", - }, - { - -- light mace - itemid = 3325, - type = "deequip", - slot = "hand", - }, - { - -- skull staff - itemid = 3324, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- skull staff - itemid = 3324, - type = "deequip", - slot = "hand", - }, - { - -- dwarven axe - itemid = 3323, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- dwarven axe - itemid = 3323, - type = "deequip", - slot = "hand", - }, - { - -- dragon hammer - itemid = 3322, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- dragon hammer - itemid = 3322, - type = "deequip", - slot = "hand", - }, - { - -- enchanted staff - itemid = 3321, - type = "equip", - slot = "hand", - }, - { - -- enchanted staff - itemid = 3321, - type = "deequip", - slot = "hand", - }, - { - -- fire axe - itemid = 3320, - type = "equip", - slot = "hand", - level = 35, - }, - { - -- fire axe - itemid = 3320, - type = "deequip", - slot = "hand", - }, - { - -- stonecutter axe - itemid = 3319, - type = "equip", - slot = "hand", - level = 90, - }, - { - -- stonecutter axe - itemid = 3319, - type = "deequip", - slot = "hand", - }, - { - -- knight axe - itemid = 3318, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- knight axe - itemid = 3318, - type = "deequip", - slot = "hand", - }, - { - -- barbarian axe - itemid = 3317, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- barbarian axe - itemid = 3317, - type = "deequip", - slot = "hand", - }, - { - -- orcish axe - itemid = 3316, - type = "equip", - slot = "hand", - }, - { - -- orcish axe - itemid = 3316, - type = "deequip", - slot = "hand", - }, - { - -- guardian halberd - itemid = 3315, - type = "equip", - slot = "hand", - level = 55, - }, - { - -- guardian halberd - itemid = 3315, - type = "deequip", - slot = "hand", - }, - { - -- naginata - itemid = 3314, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- naginata - itemid = 3314, - type = "deequip", - slot = "hand", - }, - { - -- obsidian lance - itemid = 3313, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- obsidian lance - itemid = 3313, - type = "deequip", - slot = "hand", - }, - { - -- silver mace - itemid = 3312, - type = "equip", - slot = "hand", - level = 45, - }, - { - -- silver mace - itemid = 3312, - type = "deequip", - slot = "hand", - }, - { - -- clerical mace - itemid = 3311, - type = "equip", - slot = "hand", - level = 20, - }, - { - -- clerical mace - itemid = 3311, - type = "deequip", - slot = "hand", - }, - { - -- iron hammer - itemid = 3310, - type = "equip", - slot = "hand", - }, - { - -- iron hammer - itemid = 3310, - type = "deequip", - slot = "hand", - }, - { - -- thunder hammer - itemid = 3309, - type = "equip", - slot = "hand", - level = 85, - }, - { - -- thunder hammer - itemid = 3309, - type = "deequip", - slot = "hand", - }, - { - -- machete - itemid = 3308, - type = "equip", - slot = "hand", - }, - { - -- machete - itemid = 3308, - type = "deequip", - slot = "hand", - }, - { - -- scimitar - itemid = 3307, - type = "equip", - slot = "hand", - }, - { - -- scimitar - itemid = 3307, - type = "deequip", - slot = "hand", - }, - { - -- golden sickle - itemid = 3306, - type = "equip", - slot = "hand", - }, - { - -- golden sickle - itemid = 3306, - type = "deequip", - slot = "hand", - }, - { - -- battle hammer - itemid = 3305, - type = "equip", - slot = "hand", - }, - { - -- battle hammer - itemid = 3305, - type = "deequip", - slot = "hand", - }, - { - -- crowbar - itemid = 3304, - type = "equip", - slot = "hand", - }, - { - -- crowbar - itemid = 3304, - type = "deequip", - slot = "hand", - }, - { - -- great axe - itemid = 3303, - type = "equip", - slot = "hand", - level = 95, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- great axe - itemid = 3303, - type = "deequip", - slot = "hand", - }, - { - -- dragon lance - itemid = 3302, - type = "equip", - slot = "hand", - level = 60, - }, - { - -- dragon lance - itemid = 3302, - type = "deequip", - slot = "hand", - }, - { - -- broadsword - itemid = 3301, - type = "equip", - slot = "hand", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- broadsword - itemid = 3301, - type = "deequip", - slot = "hand", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- katana - itemid = 3300, - type = "equip", - slot = "hand", - }, - { - -- katana - itemid = 3300, - type = "deequip", - slot = "hand", - }, - { - -- poison dagger - itemid = 3299, - type = "equip", - slot = "hand", - }, - { - -- poison dagger - itemid = 3299, - type = "deequip", - slot = "hand", - }, - { - -- throwing knife - itemid = 3298, - type = "equip", - slot = "hand", - }, - { - -- throwing knife - itemid = 3298, - type = "deequip", - slot = "hand", - }, - { - -- serpent sword - itemid = 3297, - type = "equip", - slot = "hand", - }, - { - -- serpent sword - itemid = 3297, - type = "deequip", - slot = "hand", - }, - { - -- warlord sword - itemid = 3296, - type = "equip", - slot = "hand", - level = 120, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- warlord sword - itemid = 3296, - type = "deequip", - slot = "hand", - }, - { - -- bright sword - itemid = 3295, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- bright sword - itemid = 3295, - type = "deequip", - slot = "hand", - level = 30, - }, - { - -- short sword - itemid = 3294, - type = "equip", - slot = "hand", - }, - { - -- short sword - itemid = 3294, - type = "deequip", - slot = "hand", - }, - { - -- sickle - itemid = 3293, - type = "equip", - slot = "hand", - }, - { - -- sickle - itemid = 3293, - type = "deequip", - slot = "hand", - }, - { - -- combat knife - itemid = 3292, - type = "equip", - slot = "hand", - }, - { - -- combat knife - itemid = 3292, - type = "deequip", - slot = "hand", - }, - { - -- knife - itemid = 3291, - type = "equip", - slot = "hand", - }, - { - -- knife - itemid = 3291, - type = "deequip", - slot = "hand", - }, - { - -- silver dagger - itemid = 3290, - type = "equip", - slot = "hand", - }, - { - -- silver dagger - itemid = 3290, - type = "deequip", - slot = "hand", - }, - { - -- staff - itemid = 3289, - type = "equip", - slot = "hand", - }, - { - -- staff - itemid = 3289, - type = "deequip", - slot = "hand", - }, - { - -- magic sword - itemid = 3288, - type = "equip", - slot = "hand", - level = 80, - }, - { - -- magic sword - itemid = 3288, - type = "deequip", - slot = "hand", - }, - { - -- throwing star - itemid = 3287, - type = "equip", - slot = "hand", - }, - { - -- throwing star - itemid = 3287, - type = "deequip", - slot = "hand", - }, - { - -- mace - itemid = 3286, - type = "equip", - slot = "hand", - }, - { - -- mace - itemid = 3286, - type = "deequip", - slot = "hand", - }, - { - -- longsword - itemid = 3285, - type = "equip", - slot = "hand", - }, - { - -- longsword - itemid = 3285, - type = "deequip", - slot = "hand", - }, - { - -- ice rapier - itemid = 3284, - type = "equip", - slot = "hand", - }, - { - -- ice rapier - itemid = 3284, - type = "deequip", - slot = "hand", - }, - { - -- carlin sword - itemid = 3283, - type = "equip", - slot = "hand", - }, - { - -- carlin sword - itemid = 3283, - type = "deequip", - slot = "hand", - }, - { - -- morning star - itemid = 3282, - type = "equip", - slot = "hand", - }, - { - -- morning star - itemid = 3282, - type = "deequip", - slot = "hand", - }, - { - -- giant sword - itemid = 3281, - type = "equip", - slot = "hand", - level = 55, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- giant sword - itemid = 3281, - type = "deequip", - slot = "hand", - }, - { - -- fire sword - itemid = 3280, - type = "equip", - slot = "hand", - level = 30, - }, - { - -- fire sword - itemid = 3280, - type = "deequip", - slot = "hand", - }, - { - -- war hammer - itemid = 3279, - type = "equip", - slot = "hand", - level = 50, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- war hammer - itemid = 3279, - type = "deequip", - slot = "hand", - }, - { - -- magic longsword - itemid = 3278, - type = "equip", - slot = "hand", - level = 140, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- magic longsword - itemid = 3278, - type = "deequip", - slot = "hand", - }, - { - -- spear - itemid = 3277, - type = "equip", - slot = "hand", - }, - { - -- spear - itemid = 3277, - type = "deequip", - slot = "hand", - }, - { - -- hatchet - itemid = 3276, - type = "equip", - slot = "hand", - }, - { - -- hatchet - itemid = 3276, - type = "deequip", - slot = "hand", - }, - { - -- double axe - itemid = 3275, - type = "equip", - slot = "hand", - level = 25, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- double axe - itemid = 3275, - type = "deequip", - slot = "hand", - }, - { - -- axe - itemid = 3274, - type = "equip", - slot = "hand", - }, - { - -- axe - itemid = 3274, - type = "deequip", - slot = "hand", - }, - { - -- sabre - itemid = 3273, - type = "equip", - slot = "hand", - }, - { - -- sabre - itemid = 3273, - type = "deequip", - slot = "hand", - }, - { - -- rapier - itemid = 3272, - type = "equip", - slot = "hand", - }, - { - -- rapier - itemid = 3272, - type = "deequip", - slot = "hand", - }, - { - -- spike sword - itemid = 3271, - type = "equip", - slot = "hand", - }, - { - -- spike sword - itemid = 3271, - type = "deequip", - slot = "hand", - }, - { - -- club - itemid = 3270, - type = "equip", - slot = "hand", - }, - { - -- club - itemid = 3270, - type = "deequip", - slot = "hand", - }, - { - -- halberd - itemid = 3269, - type = "equip", - slot = "hand", - level = 25, - }, - { - -- halberd - itemid = 3269, - type = "deequip", - slot = "hand", - }, - { - -- hand axe - itemid = 3268, - type = "equip", - slot = "hand", - }, - { - -- hand axe - itemid = 3268, - type = "deequip", - slot = "hand", - }, - { - -- dagger - itemid = 3267, - type = "equip", - slot = "hand", - }, - { - -- dagger - itemid = 3267, - type = "deequip", - slot = "hand", - }, - { - -- battle axe - itemid = 3266, - type = "equip", - slot = "hand", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- battle axe - itemid = 3266, - type = "deequip", - slot = "hand", - }, - { - -- two handed sword - itemid = 3265, - type = "equip", - slot = "hand", - level = 20, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- two handed sword - itemid = 3265, - type = "deequip", - slot = "hand", - }, - { - -- sword - itemid = 3264, - type = "equip", - slot = "hand", - }, - { - -- sword - itemid = 3264, - type = "deequip", - slot = "hand", - }, - { - -- backpack of holding - itemid = 3253, - type = "equip", - slot = "backpack", - }, - { - -- backpack of holding - itemid = 3253, - type = "deequip", - slot = "backpack", - }, - { - -- boots of waterwalking - itemid = 3246, - type = "equip", - slot = "feet", - }, - { - -- boots of waterwalking - itemid = 3246, - type = "deequip", - slot = "feet", - }, - { - -- ring of wishes - itemid = 3245, - type = "equip", - slot = "ring", - }, - { - -- ring of wishes - itemid = 3245, - type = "deequip", - slot = "ring", - }, - { - -- helmet of the ancients - itemid = 3230, - type = "equip", - slot = "head", - }, - { - -- helmet of the ancients - itemid = 3230, - type = "deequip", - slot = "head", - }, - { - -- helmet of the ancients - itemid = 3229, - type = "equip", - slot = "head", - }, - { - -- helmet of the ancients - itemid = 3229, - type = "deequip", - slot = "head", - }, - { - -- damaged helmet - itemid = 3226, - type = "equip", - slot = "head", - }, - { - -- damaged helmet - itemid = 3226, - type = "deequip", - slot = "head", - }, - { - -- hat of the mad - itemid = 3210, - type = "equip", - slot = "head", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- hat of the mad - itemid = 3210, - type = "deequip", - slot = "head", - }, - { - -- giant smithhammer - itemid = 3208, - type = "equip", - slot = "hand", - }, - { - -- giant smithhammer - itemid = 3208, - type = "deequip", - slot = "hand", - }, - { - -- paw amulet - itemid = 3102, - type = "equip", - slot = "necklace", - }, - { - -- paw amulet - itemid = 3102, - type = "deequip", - slot = "necklace", - }, - { - -- ring of healing - itemid = 3100, - type = "equip", - slot = "ring", - }, - { - -- ring of healing - itemid = 3100, - type = "deequip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3099, - type = "equip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3099, - type = "deequip", - slot = "ring", - }, - { - -- ring of healing - itemid = 3098, - type = "equip", - slot = "ring", - }, - { - -- ring of healing - itemid = 3098, - type = "deequip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3097, - type = "equip", - slot = "ring", - }, - { - -- dwarven ring - itemid = 3097, - type = "deequip", - slot = "ring", - }, - { - -- club ring - itemid = 3096, - type = "equip", - slot = "ring", - }, - { - -- club ring - itemid = 3096, - type = "deequip", - slot = "ring", - }, - { - -- axe ring - itemid = 3095, - type = "equip", - slot = "ring", - }, - { - -- axe ring - itemid = 3095, - type = "deequip", - slot = "ring", - }, - { - -- sword ring - itemid = 3094, - type = "equip", - slot = "ring", - }, - { - -- sword ring - itemid = 3094, - type = "deequip", - slot = "ring", - }, - { - -- club ring - itemid = 3093, - type = "equip", - slot = "ring", - }, - { - -- club ring - itemid = 3093, - type = "deequip", - slot = "ring", - }, - { - -- axe ring - itemid = 3092, - type = "equip", - slot = "ring", - }, - { - -- axe ring - itemid = 3092, - type = "deequip", - slot = "ring", - }, - { - -- sword ring - itemid = 3091, - type = "equip", - slot = "ring", - }, - { - -- sword ring - itemid = 3091, - type = "deequip", - slot = "ring", - }, - { - -- time ring - itemid = 3090, - type = "equip", - slot = "ring", - }, - { - -- time ring - itemid = 3090, - type = "deequip", - slot = "ring", - }, - { - -- life ring - itemid = 3089, - type = "equip", - slot = "ring", - }, - { - -- life ring - itemid = 3089, - type = "deequip", - slot = "ring", - }, - { - -- energy ring - itemid = 3088, - type = "equip", - slot = "ring", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- energy ring - itemid = 3088, - type = "deequip", - slot = "ring", - }, - { - -- power ring - itemid = 3087, - type = "equip", - slot = "ring", - }, - { - -- power ring - itemid = 3087, - type = "deequip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3086, - type = "equip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3086, - type = "deequip", - slot = "ring", - }, - { - -- dragon necklace - itemid = 3085, - type = "equip", - slot = "necklace", - }, - { - -- dragon necklace - itemid = 3085, - type = "deequip", - slot = "necklace", - }, - { - -- protection amulet - itemid = 3084, - type = "equip", - slot = "necklace", - }, - { - -- protection amulet - itemid = 3084, - type = "deequip", - slot = "necklace", - }, - { - -- garlic necklace - itemid = 3083, - type = "equip", - slot = "necklace", - }, - { - -- garlic necklace - itemid = 3083, - type = "deequip", - slot = "necklace", - }, - { - -- elven amulet - itemid = 3082, - type = "equip", - slot = "necklace", - }, - { - -- elven amulet - itemid = 3082, - type = "deequip", - slot = "necklace", - }, - { - -- stone skin amulet - itemid = 3081, - type = "equip", - slot = "necklace", - }, - { - -- stone skin amulet - itemid = 3081, - type = "deequip", - slot = "necklace", - }, - { - -- amulet of life - itemid = 3080, - type = "equip", - slot = "necklace", - }, - { - -- amulet of life - itemid = 3080, - type = "deequip", - slot = "necklace", - }, - { - -- boots of haste - itemid = 3079, - type = "equip", - slot = "feet", - }, - { - -- boots of haste - itemid = 3079, - type = "deequip", - slot = "feet", - }, - { - -- wand of dragonbreath - itemid = 3075, - type = "equip", - slot = "hand", - level = 13, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of dragonbreath - itemid = 3075, - type = "deequip", - slot = "hand", - level = 13, - }, - { - -- wand of vortex - itemid = 3074, - type = "equip", - slot = "hand", - level = 6, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of vortex - itemid = 3074, - type = "deequip", - slot = "hand", - level = 6, - }, - { - -- wand of cosmic energy - itemid = 3073, - type = "equip", - slot = "hand", - level = 26, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of cosmic energy - itemid = 3073, - type = "deequip", - slot = "hand", - level = 26, - }, - { - -- wand of decay - itemid = 3072, - type = "equip", - slot = "hand", - level = 19, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of decay - itemid = 3072, - type = "deequip", - slot = "hand", - level = 19, - }, - { - -- wand of inferno - itemid = 3071, - type = "equip", - slot = "hand", - level = 33, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of inferno - itemid = 3071, - type = "deequip", - slot = "hand", - level = 33, - }, - { - -- moonlight rod - itemid = 3070, - type = "equip", - slot = "hand", - level = 13, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- moonlight rod - itemid = 3070, - type = "deequip", - slot = "hand", - level = 13, - }, - { - -- necrotic rod - itemid = 3069, - type = "equip", - slot = "hand", - level = 19, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- necrotic rod - itemid = 3069, - type = "deequip", - slot = "hand", - level = 19, - }, - { - -- hailstorm rod - itemid = 3067, - type = "equip", - slot = "hand", - level = 33, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- hailstorm rod - itemid = 3067, - type = "deequip", - slot = "hand", - level = 33, - }, - { - -- snakebite rod - itemid = 3066, - type = "equip", - slot = "hand", - level = 6, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- snakebite rod - itemid = 3066, - type = "deequip", - slot = "hand", - level = 6, - }, - { - -- terra rod - itemid = 3065, - type = "equip", - slot = "hand", - level = 26, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- terra rod - itemid = 3065, - type = "deequip", - slot = "hand", - level = 26, - }, - { - -- gold ring - itemid = 3063, - type = "equip", - slot = "ring", - }, - { - -- gold ring - itemid = 3063, - type = "deequip", - slot = "ring", - }, - { - -- spellbook - itemid = 3059, - type = "equip", - slot = "shield", - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- spellbook - itemid = 3059, - type = "deequip", - slot = "shield", - }, - { - -- amulet of loss - itemid = 3057, - type = "equip", - slot = "necklace", - }, - { - -- amulet of loss - itemid = 3057, - type = "deequip", - slot = "necklace", - }, - { - -- bronze amulet - itemid = 3056, - type = "equip", - slot = "necklace", - }, - { - -- bronze amulet - itemid = 3056, - type = "deequip", - slot = "necklace", - }, - { - -- platinum amulet - itemid = 3055, - type = "equip", - slot = "necklace", - }, - { - -- platinum amulet - itemid = 3055, - type = "deequip", - slot = "necklace", - }, - { - -- silver amulet - itemid = 3054, - type = "equip", - slot = "necklace", - }, - { - -- silver amulet - itemid = 3054, - type = "deequip", - slot = "necklace", - }, - { - -- time ring - itemid = 3053, - type = "equip", - slot = "ring", - }, - { - -- time ring - itemid = 3053, - type = "deequip", - slot = "ring", - }, - { - -- life ring - itemid = 3052, - type = "equip", - slot = "ring", - }, - { - -- life ring - itemid = 3052, - type = "deequip", - slot = "ring", - }, - { - -- energy ring - itemid = 3051, - type = "equip", - slot = "ring", - vocation = { - { "Knight", true }, - { "Paladin", true, true }, - { "Elite Knight" }, - { "Royal Paladin" }, - }, - }, - { - -- energy ring - itemid = 3051, - type = "deequip", - slot = "ring", - }, - { - -- power ring - itemid = 3050, - type = "equip", - slot = "ring", - }, - { - -- power ring - itemid = 3050, - type = "deequip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3049, - type = "equip", - slot = "ring", - }, - { - -- stealth ring - itemid = 3049, - type = "deequip", - slot = "ring", - }, - { - -- might ring - itemid = 3048, - type = "equip", - slot = "ring", - }, - { - -- might ring - itemid = 3048, - type = "deequip", - slot = "ring", - }, - { - -- strange talisman - itemid = 3045, - type = "equip", - slot = "necklace", - }, - { - -- strange talisman - itemid = 3045, - type = "deequip", - slot = "necklace", - }, - { - -- ancient amulet - itemid = 3025, - type = "equip", - slot = "necklace", - }, - { - -- ancient amulet - itemid = 3025, - type = "deequip", - slot = "necklace", - }, - { - -- ancient tiara - itemid = 3022, - type = "equip", - slot = "head", - }, - { - -- ancient tiara - itemid = 3022, - type = "deequip", - slot = "head", - }, - { - -- sapphire amulet - itemid = 3021, - type = "equip", - slot = "necklace", - }, - { - -- sapphire amulet - itemid = 3021, - type = "deequip", - slot = "necklace", - }, - { - -- demonbone amulet - itemid = 3019, - type = "equip", - slot = "necklace", - }, - { - -- demonbone amulet - itemid = 3019, - type = "deequip", - slot = "necklace", - }, - { - -- scarab amulet - itemid = 3018, - type = "equip", - slot = "necklace", - }, - { - -- scarab amulet - itemid = 3018, - type = "deequip", - slot = "necklace", - }, - { - -- ruby necklace - itemid = 3016, - type = "equip", - slot = "necklace", - }, - { - -- ruby necklace - itemid = 3016, - type = "deequip", - slot = "necklace", - }, - { - -- silver necklace - itemid = 3015, - type = "equip", - slot = "necklace", - }, - { - -- silver necklace - itemid = 3015, - type = "deequip", - slot = "necklace", - }, - { - -- star amulet - itemid = 3014, - type = "equip", - slot = "necklace", - }, - { - -- star amulet - itemid = 3014, - type = "deequip", - slot = "necklace", - }, - { - -- golden amulet - itemid = 3013, - type = "equip", - slot = "necklace", - }, - { - -- golden amulet - itemid = 3013, - type = "deequip", - slot = "necklace", - }, - { - -- wolf tooth chain - itemid = 3012, - type = "equip", - slot = "necklace", - }, - { - -- wolf tooth chain - itemid = 3012, - type = "deequip", - slot = "necklace", - }, - { - -- crown - itemid = 3011, - type = "equip", - slot = "head", - }, - { - -- crown - itemid = 3011, - type = "deequip", - slot = "head", - }, - { - -- bronze necklace - itemid = 3009, - type = "equip", - slot = "necklace", - }, - { - -- bronze necklace - itemid = 3009, - type = "deequip", - slot = "necklace", - }, - { - -- crystal necklace - itemid = 3008, - type = "equip", - slot = "necklace", - }, - { - -- crystal necklace - itemid = 3008, - type = "deequip", - slot = "necklace", - }, - { - -- crystal ring - itemid = 3007, - type = "equip", - slot = "ring", - }, - { - -- crystal ring - itemid = 3007, - type = "deequip", - slot = "ring", - }, - { - -- ring of the sky - itemid = 3006, - type = "equip", - slot = "ring", - }, - { - -- ring of the sky - itemid = 3006, - type = "deequip", - slot = "ring", - }, - { - -- wedding ring - itemid = 3004, - type = "equip", - slot = "ring", - }, - { - -- wedding ring - itemid = 3004, - type = "deequip", - slot = "ring", - }, - { - -- snowball - itemid = 2992, - type = "equip", - slot = "hand", - }, - { - -- snowball - itemid = 2992, - type = "deequip", - slot = "hand", - }, - { - -- golden backpack - itemid = 2871, - type = "equip", - slot = "backpack", - }, - { - -- golden backpack - itemid = 2871, - type = "deequip", - slot = "backpack", - }, - { - -- grey backpack - itemid = 2870, - type = "equip", - slot = "backpack", - }, - { - -- grey backpack - itemid = 2870, - type = "deequip", - slot = "backpack", - }, - { - -- blue backpack - itemid = 2869, - type = "equip", - slot = "backpack", - }, - { - -- blue backpack - itemid = 2869, - type = "deequip", - slot = "backpack", - }, - { - -- purple backpack - itemid = 2868, - type = "equip", - slot = "backpack", - }, - { - -- purple backpack - itemid = 2868, - type = "deequip", - slot = "backpack", - }, - { - -- red backpack - itemid = 2867, - type = "equip", - slot = "backpack", - }, - { - -- red backpack - itemid = 2867, - type = "deequip", - slot = "backpack", - }, - { - -- yellow backpack - itemid = 2866, - type = "equip", - slot = "backpack", - }, - { - -- yellow backpack - itemid = 2866, - type = "deequip", - slot = "backpack", - }, - { - -- green backpack - itemid = 2865, - type = "equip", - slot = "backpack", - }, - { - -- green backpack - itemid = 2865, - type = "deequip", - slot = "backpack", - }, - { - -- golden bag - itemid = 2863, - type = "equip", - slot = "backpack", - }, - { - -- golden bag - itemid = 2863, - type = "deequip", - slot = "backpack", - }, - { - -- grey bag - itemid = 2862, - type = "equip", - slot = "backpack", - }, - { - -- grey bag - itemid = 2862, - type = "deequip", - slot = "backpack", - }, - { - -- blue bag - itemid = 2861, - type = "equip", - slot = "backpack", - }, - { - -- blue bag - itemid = 2861, - type = "deequip", - slot = "backpack", - }, - { - -- purple bag - itemid = 2860, - type = "equip", - slot = "backpack", - }, - { - -- purple bag - itemid = 2860, - type = "deequip", - slot = "backpack", - }, - { - -- red bag - itemid = 2859, - type = "equip", - slot = "backpack", - }, - { - -- red bag - itemid = 2859, - type = "deequip", - slot = "backpack", - }, - { - -- yellow bag - itemid = 2858, - type = "equip", - slot = "backpack", - }, - { - -- yellow bag - itemid = 2858, - type = "deequip", - slot = "backpack", - }, - { - -- green bag - itemid = 2857, - type = "equip", - slot = "backpack", - }, - { - -- green bag - itemid = 2857, - type = "deequip", - slot = "backpack", - }, - { - -- backpack - itemid = 2854, - type = "equip", - slot = "backpack", - }, - { - -- backpack - itemid = 2854, - type = "deequip", - slot = "backpack", - }, - { - -- bag - itemid = 2853, - type = "equip", - slot = "backpack", - }, - { - -- bag - itemid = 2853, - type = "deequip", - slot = "backpack", - }, - { - -- searing fire - itemid = 2138, - type = "stepin", - }, - { - -- searing fire - itemid = 2138, - type = "additem", - }, - { - -- searing fire - itemid = 2137, - type = "stepin", - }, - { - -- searing fire - itemid = 2137, - type = "additem", - }, - { - -- smoke - itemid = 2136, - type = "stepin", - }, - { - -- smoke - itemid = 2136, - type = "additem", - }, - { - -- energy field - itemid = 2135, - type = "stepin", - }, - { - -- energy field - itemid = 2135, - type = "additem", - }, - { - -- poison gas - itemid = 2134, - type = "stepin", - }, - { - -- poison gas - itemid = 2134, - type = "additem", - }, - { - -- fire field - itemid = 2133, - type = "stepin", - }, - { - -- fire field - itemid = 2133, - type = "additem", - }, - { - -- fire field - itemid = 2132, - type = "stepin", - }, - { - -- fire field - itemid = 2132, - type = "additem", - }, - { - -- fire field - itemid = 21465, - type = "stepin", - }, - { - -- fire field - itemid = 21465, - type = "additem", - }, - { - -- rush wood - itemid = 2130, - type = "stepin", - }, - { - -- rush wood - itemid = 2130, - type = "additem", - }, - { - -- magic wall - itemid = 2129, - type = "stepin", - }, - { - -- magic wall - itemid = 2129, - type = "additem", - }, - { - -- magic wall - itemid = 2128, - type = "stepin", - }, - { - -- magic wall - itemid = 2128, - type = "additem", - }, - { - -- poison field - itemid = 2121, - type = "stepin", - }, - { - -- poison field - itemid = 2121, - type = "additem", - }, - { - -- energy field - itemid = 2126, - type = "stepin", - }, - { - -- energy field - itemid = 2126, - type = "additem", - }, - { - -- fire field - itemid = 2125, - type = "stepin", - }, - { - -- fire field - itemid = 2125, - type = "additem", - }, - { - -- fire field - itemid = 2124, - type = "stepin", - }, - { - -- fire field - itemid = 2124, - type = "additem", - }, - { - -- fire field - itemid = 2123, - type = "stepin", - }, - { - -- fire field - itemid = 2123, - type = "additem", - }, - { - -- energy field - itemid = 2122, - type = "stepin", - }, - { - -- energy field - itemid = 2122, - type = "additem", - }, - { - -- poison field - itemid = 105, - type = "stepin", - }, - { - -- poison field - itemid = 105, - type = "additem", - }, - { - -- fire field - itemid = 2120, - type = "stepin", - }, - { - -- fire field - itemid = 2120, - type = "additem", - }, - { - -- fire field - itemid = 2119, - type = "stepin", - }, - { - -- fire field - itemid = 2119, - type = "additem", - }, - { - -- fire field - itemid = 2118, - type = "stepin", - }, - { - -- fire field - itemid = 2118, - type = "additem", - }, - { - -- campfire - itemid = 2000, - type = "stepin", - }, - { - -- campfire - itemid = 2000, - type = "additem", - }, - { - -- campfire - itemid = 1999, - type = "stepin", - }, - { - -- campfire - itemid = 1999, - type = "additem", - }, - { - -- campfire - itemid = 1998, - type = "stepin", - }, - { - -- campfire - itemid = 1998, - type = "additem", - }, - { - -- small stone - itemid = 1781, - type = "equip", - slot = "hand", - }, - { - -- small stone - itemid = 1781, - type = "deequip", - slot = "hand", - }, -} - -for _, i in ipairs(items) do - local movement = MoveEvent() - movement:id(i.itemid or i.itemId) - - if i.type then - movement:type(i.type) - end - if i.slot then - movement:slot(i.slot) - end - if i.level then - movement:level(i.level) - end - if i.vocation then - for _, v in ipairs(i.vocation) do - movement:vocation(v[1], v[2] or false, v[3] or false) - end - end - movement:register() -end diff --git a/data-otservbr-global/scripts/weapons/unscripted_weapons.lua b/data-otservbr-global/scripts/weapons/unscripted_weapons.lua deleted file mode 100644 index 667e242afaf..00000000000 --- a/data-otservbr-global/scripts/weapons/unscripted_weapons.lua +++ /dev/null @@ -1,5380 +0,0 @@ -local weapons = { - { - -- grand sanguine rod - itemId = 43886, - type = WEAPON_WAND, - wandType = "earth", - level = 600, - mana = 20, - damage = { 100, 124 }, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- sanguine rod - itemId = 43885, - type = WEAPON_WAND, - wandType = "earth", - level = 600, - mana = 20, - damage = { 100, 124 }, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- grand sanguine coil - itemId = 43883, - type = WEAPON_WAND, - wandType = "energy", - level = 250, - mana = 21, - damage = { 103, 125 }, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- sanguine coil - itemId = 43882, - type = WEAPON_WAND, - wandType = "fire", - level = 250, - mana = 21, - damage = { 113, 125 }, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- grand sanguine crossbow - itemId = 43880, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine crossbow - itemId = 43879, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- grand sanguine bow - itemId = 43878, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- sanguine bow - itemId = 43877, - type = WEAPON_DISTANCE, - level = 600, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- grand sanguine battleaxe - itemId = 43875, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine battleaxe - itemId = 43874, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine bludgeon - itemId = 43873, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine bludgeon - itemId = 43872, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine razor - itemId = 43871, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine razor - itemId = 43870, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine hatchet - itemId = 43869, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine hatchet - itemId = 43868, - type = WEAPON_AXE, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine cudgel - itemId = 43867, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine cudgel - itemId = 43866, - type = WEAPON_CLUB, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- grand sanguine blade - itemId = 43865, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sanguine blade - itemId = 43864, - type = WEAPON_SWORD, - level = 600, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- broken macuahuitl - itemid = 40530, - type = WEAPON_SWORD, - }, - { - -- naga rod - itemId = 39163, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = { 90, 110 }, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- naga wand - itemId = 39162, - type = WEAPON_WAND, - wandType = "energy", - level = 250, - mana = 21, - damage = { 90, 120 }, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- naga crossbow - itemId = 39159, - type = WEAPON_DISTANCE, - level = 300, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- naga club - itemId = 39157, - type = WEAPON_CLUB, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga axe - itemId = 39156, - type = WEAPON_AXE, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- naga sword - itemId = 39155, - type = WEAPON_SWORD, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch rod - itemId = 36675, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = { 85, 105 }, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- eldritch rod - itemId = 36674, - type = WEAPON_WAND, - wandType = "ice", - level = 250, - mana = 22, - damage = { 85, 105 }, - unproperly = true, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- gilded eldritch wand - itemId = 36669, - type = WEAPON_WAND, - wandType = "fire", - level = 250, - mana = 22, - damage = { 85, 105 }, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- eldritch wand - itemId = 36668, - type = WEAPON_WAND, - wandType = "fire", - level = 250, - mana = 22, - damage = { 85, 105 }, - unproperly = true, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- gilded eldritch bow - itemId = 36665, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- eldritch bow - itemId = 36664, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- gilded eldritch greataxe - itemId = 36662, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch greataxe - itemId = 36661, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch warmace - itemId = 36660, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch warmace - itemId = 36659, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- gilded eldritch claymore - itemId = 36658, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- eldritch claymore - itemId = 36657, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spectral bolt (no decay) - itemId = 35902, - type = WEAPON_AMMO, - level = 150, - unproperly = true, - action = "removecount", - }, - { - -- jungle wand - itemId = 35522, - type = WEAPON_WAND, - wandType = "earth", - level = 150, - mana = 19, - damage = { 80, 100 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- jungle rod - itemId = 35521, - type = WEAPON_WAND, - wandType = "ice", - level = 150, - mana = 19, - damage = { 80, 100 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- jungle bow - itemId = 35518, - type = WEAPON_DISTANCE, - level = 150, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- throwing axe - itemId = 35515, - type = WEAPON_AXE, - level = 150, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- jungle flail - itemId = 35514, - type = WEAPON_CLUB, - level = 150, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion longsword - itemId = 34155, - type = WEAPON_SWORD, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion hammer - itemId = 34254, - type = WEAPON_CLUB, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion axe - itemId = 34253, - type = WEAPON_AXE, - level = 270, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- lion wand - itemId = 34152, - type = WEAPON_WAND, - wandType = "ice", - level = 220, - mana = 21, - damage = { 89, 109 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- lion rod - itemId = 34151, - type = WEAPON_WAND, - wandType = "ice", - level = 270, - mana = 20, - damage = { 85, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- lion longbow - itemId = 34150, - type = WEAPON_DISTANCE, - level = 270, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulhexer rod - itemId = 34091, - type = WEAPON_WAND, - wandType = "ice", - level = 400, - mana = 21, - damage = { 98, 118 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- soultainter wand - itemId = 34090, - type = WEAPON_WAND, - wandType = "death", - level = 400, - mana = 21, - damage = { 100, 120 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- soulpiercer crossbow - itemId = 34089, - type = WEAPON_DISTANCE, - level = 400, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulbleeder bow - itemId = 34088, - type = WEAPON_DISTANCE, - level = 400, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- soulmaimer club - itemId = 34087, - type = WEAPON_CLUB, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcrusher club - itemId = 34086, - type = WEAPON_CLUB, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- souleater axe - itemId = 34085, - type = WEAPON_AXE, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulbiter axe - itemId = 34084, - type = WEAPON_AXE, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulshredder sword - itemId = 34083, - type = WEAPON_SWORD, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- soulcutter sword - itemId = 34082, - type = WEAPON_SWORD, - level = 400, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- phantasmal axe - itemid = 32616, - type = WEAPON_AXE, - level = 180, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- meat hammer - itemid = 32093, - type = WEAPON_CLUB, - }, - { - -- tagralt blade - itemid = 31614, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- bow of cataclysm - itemid = 31581, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mortal mace - itemid = 31580, - type = WEAPON_CLUB, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra rod - itemid = 30400, - type = WEAPON_WAND, - wandType = "earth", - level = 220, - mana = 21, - damage = { 70, 110 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- cobra wand - itemid = 30399, - type = WEAPON_WAND, - wandType = "energy", - level = 270, - mana = 22, - damage = { 94, 100 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- cobra sword - itemid = 30398, - type = WEAPON_SWORD, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra axe - itemid = 30396, - type = WEAPON_AXE, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra club - itemid = 30395, - type = WEAPON_CLUB, - level = 220, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cobra crossbow - itemid = 30393, - type = WEAPON_DISTANCE, - level = 220, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ice hatchet - itemid = 30283, - type = WEAPON_AXE, - }, - { - -- energized limb - itemid = 29425, - type = WEAPON_WAND, - wandType = "fire", - level = 180, - mana = 24, - damage = { 88, 108 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- winterblade - itemid = 29422, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- summerblade - itemid = 29421, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- resizer - itemid = 29419, - type = WEAPON_CLUB, - level = 230, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- living vine bow - itemid = 29417, - type = WEAPON_DISTANCE, - level = 220, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- golden axe - itemid = 29286, - type = WEAPON_AXE, - }, - { - -- wand of destruction test - itemid = 28479, - type = WEAPON_WAND, - }, - { - -- umbral master bow test - itemid = 28478, - type = WEAPON_DISTANCE, - }, - { - -- sorcerer test weapon - itemid = 28466, - type = WEAPON_WAND, - }, - { - -- bow of destruction test - itemid = 28465, - type = WEAPON_DISTANCE, - }, - { - -- test weapon for knights - itemid = 28464, - type = WEAPON_SWORD, - }, - { - -- sulphurous demonbone - itemid = 28832, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- unliving demonbone - itemid = 28831, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- energized demonbone - itemid = 28830, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- rotten demonbone - itemid = 28829, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- deepling fork - itemid = 28826, - type = WEAPON_WAND, - wandType = "ice", - level = 230, - mana = 23, - damage = { 80, 120 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- deepling ceremonial dagger - itemid = 28825, - type = WEAPON_WAND, - wandType = "ice", - level = 180, - mana = 23, - damage = { 86, 98 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- falcon mace - itemid = 28725, - type = WEAPON_CLUB, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon battleaxe - itemid = 28724, - type = WEAPON_AXE, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon longsword - itemid = 28723, - type = WEAPON_SWORD, - level = 300, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- falcon bow - itemid = 28718, - type = WEAPON_DISTANCE, - level = 300, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- falcon wand - itemid = 28717, - type = WEAPON_WAND, - wandType = "energy", - level = 300, - mana = 21, - damage = { 86, 102 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- falcon rod - itemid = 28716, - type = WEAPON_WAND, - wandType = "earth", - level = 300, - mana = 20, - damage = { 87, 101 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- gnome sword - itemid = 27651, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mallet handle - itemid = 27525, - type = WEAPON_CLUB, - }, - { - -- strange mallet - itemid = 27523, - type = WEAPON_CLUB, - }, - { - -- rod of destruction - itemid = 27458, - type = WEAPON_WAND, - wandType = "ice", - level = 200, - mana = 20, - damage = { 80, 110 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of destruction - itemid = 27457, - type = WEAPON_WAND, - wandType = "energy", - level = 200, - mana = 20, - damage = { 80, 110 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of destruction - itemid = 27456, - type = WEAPON_DISTANCE, - level = 200, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of destruction - itemid = 27455, - type = WEAPON_DISTANCE, - level = 200, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of destruction - itemid = 27454, - type = WEAPON_CLUB, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of destruction - itemid = 27453, - type = WEAPON_CLUB, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of destruction - itemid = 27452, - type = WEAPON_AXE, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of destruction - itemid = 27451, - type = WEAPON_AXE, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of destruction - itemid = 27450, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of destruction - itemid = 27449, - type = WEAPON_SWORD, - level = 200, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ornate carving hammer - itemid = 26061, - type = WEAPON_CLUB, - }, - { - -- valuable carving hammer - itemid = 26060, - type = WEAPON_CLUB, - }, - { - -- plain carving hammer - itemid = 26059, - type = WEAPON_CLUB, - }, - { - -- ornate carving mace - itemid = 26058, - type = WEAPON_CLUB, - }, - { - -- valuable carving mace - itemid = 26057, - type = WEAPON_CLUB, - }, - { - -- plain carving mace - itemid = 26056, - type = WEAPON_CLUB, - }, - { - -- ornate carving chopper - itemid = 26055, - type = WEAPON_AXE, - }, - { - -- valuable carving chopper - itemid = 26054, - type = WEAPON_AXE, - }, - { - -- plain carving chopper - itemid = 26053, - type = WEAPON_AXE, - }, - { - -- ornate carving axe - itemid = 26052, - type = WEAPON_AXE, - }, - { - -- valuable carving axe - itemid = 26051, - type = WEAPON_AXE, - }, - { - -- plain carving axe - itemid = 26050, - type = WEAPON_AXE, - }, - { - -- ornate carving slayer - itemid = 26049, - type = WEAPON_SWORD, - }, - { - -- valuable carving slayer - itemid = 26048, - type = WEAPON_SWORD, - }, - { - -- plain carving slayer - itemid = 26047, - type = WEAPON_SWORD, - }, - { - -- ornate carving blade - itemid = 26046, - type = WEAPON_SWORD, - }, - { - -- valuable carving blade - itemid = 26045, - type = WEAPON_SWORD, - }, - { - -- plain carving blade - itemid = 26044, - type = WEAPON_SWORD, - }, - { - -- ornate remedy hammer - itemid = 26031, - type = WEAPON_CLUB, - }, - { - -- valuable remedy hammer - itemid = 26030, - type = WEAPON_CLUB, - }, - { - -- plain remedy hammer - itemid = 26029, - type = WEAPON_CLUB, - }, - { - -- ornate remedy mace - itemid = 26028, - type = WEAPON_CLUB, - }, - { - -- valuable remedy mace - itemid = 26027, - type = WEAPON_CLUB, - }, - { - -- plain remedy mace - itemid = 26026, - type = WEAPON_CLUB, - }, - { - -- ornate remedy chopper - itemid = 26025, - type = WEAPON_AXE, - }, - { - -- valuable remedy chopper - itemid = 26024, - type = WEAPON_AXE, - }, - { - -- plain remedy chopper - itemid = 26023, - type = WEAPON_AXE, - }, - { - -- ornate remedy axe - itemid = 26022, - type = WEAPON_AXE, - }, - { - -- valuable remedy axe - itemid = 26021, - type = WEAPON_AXE, - }, - { - -- plain remedy axe - itemid = 26020, - type = WEAPON_AXE, - }, - { - -- ornate remedy slayer - itemid = 26019, - type = WEAPON_SWORD, - }, - { - -- valuable remedy slayer - itemid = 26018, - type = WEAPON_SWORD, - }, - { - -- plain remedy slayer - itemid = 26017, - type = WEAPON_SWORD, - }, - { - -- ornate remedy blade - itemid = 26016, - type = WEAPON_SWORD, - }, - { - -- valuable remedy blade - itemid = 26015, - type = WEAPON_SWORD, - }, - { - -- plain remedy blade - itemid = 26014, - type = WEAPON_SWORD, - }, - { - -- ornate mayhem hammer - itemid = 26000, - type = WEAPON_CLUB, - }, - { - -- valuable mayhem hammer - itemid = 25999, - type = WEAPON_CLUB, - }, - { - -- plain mayhem hammer - itemid = 25998, - type = WEAPON_CLUB, - }, - { - -- ornate mayhem mace - itemid = 25997, - type = WEAPON_CLUB, - }, - { - -- valuable mayhem mace - itemid = 25996, - type = WEAPON_CLUB, - }, - { - -- plain mayhem mace - itemid = 25995, - type = WEAPON_CLUB, - }, - { - -- ornate mayhem chopper - itemid = 25994, - type = WEAPON_AXE, - }, - { - -- valuable mayhem chopper - itemid = 25993, - type = WEAPON_AXE, - }, - { - -- plain mayhem chopper - itemid = 25992, - type = WEAPON_AXE, - }, - { - -- ornate mayhem axe - itemid = 25991, - type = WEAPON_AXE, - }, - { - -- valuable mayhem axe - itemid = 25990, - type = WEAPON_AXE, - }, - { - -- plain mayhem axe - itemid = 25989, - type = WEAPON_AXE, - }, - { - -- ornate mayhem slayer - itemid = 25988, - type = WEAPON_SWORD, - }, - { - -- valuable mayhem slayer - itemid = 25987, - type = WEAPON_SWORD, - }, - { - -- plain mayhem slayer - itemid = 25986, - type = WEAPON_SWORD, - }, - { - -- ornate mayhem blade - itemid = 25985, - type = WEAPON_SWORD, - }, - { - -- valuable mayhem blade - itemid = 25984, - type = WEAPON_SWORD, - }, - { - -- plain mayhem blade - itemid = 25983, - type = WEAPON_SWORD, - }, - { - -- energy war hammer replica - itemid = 25974, - type = WEAPON_CLUB, - }, - { - -- energy orcish maul replica - itemid = 25973, - type = WEAPON_CLUB, - }, - { - -- energy basher replica - itemid = 25972, - type = WEAPON_CLUB, - }, - { - -- energy crystal mace replica - itemid = 25971, - type = WEAPON_CLUB, - }, - { - -- energy clerical mace replica - itemid = 25970, - type = WEAPON_CLUB, - }, - { - -- energy war axe replica - itemid = 25969, - type = WEAPON_AXE, - }, - { - -- energy headchopper replica - itemid = 25968, - type = WEAPON_AXE, - }, - { - -- energy heroic axe replica - itemid = 25967, - type = WEAPON_AXE, - }, - { - -- energy knight axe replica - itemid = 25966, - type = WEAPON_AXE, - }, - { - -- energy barbarian axe replica - itemid = 25965, - type = WEAPON_AXE, - }, - { - -- energy dragon slayer replica - itemid = 25964, - type = WEAPON_SWORD, - }, - { - -- energy blacksteel replica - itemid = 25963, - type = WEAPON_SWORD, - }, - { - -- energy mystic blade replica - itemid = 25962, - type = WEAPON_SWORD, - }, - { - -- energy relic sword replica - itemid = 25961, - type = WEAPON_SWORD, - }, - { - -- energy spike sword replica - itemid = 25960, - type = WEAPON_SWORD, - }, - { - -- earth war hammer replica - itemid = 25959, - type = WEAPON_CLUB, - }, - { - -- earth orcish maul replica - itemid = 25958, - type = WEAPON_CLUB, - }, - { - -- earth basher replica - itemid = 25957, - type = WEAPON_CLUB, - }, - { - -- earth crystal mace replica - itemid = 25956, - type = WEAPON_CLUB, - }, - { - -- earth clerical mace replica - itemid = 25955, - type = WEAPON_CLUB, - }, - { - -- earth war axe replica - itemid = 25954, - type = WEAPON_AXE, - }, - { - -- earth headchopper replica - itemid = 25953, - type = WEAPON_AXE, - }, - { - -- earth heroic axe replica - itemid = 25952, - type = WEAPON_AXE, - }, - { - -- earth knight axe replica - itemid = 25951, - type = WEAPON_AXE, - }, - { - -- earth barbarian axe replica - itemid = 25950, - type = WEAPON_AXE, - }, - { - -- earth dragon slayer replica - itemid = 25949, - type = WEAPON_SWORD, - }, - { - -- earth blacksteel replica - itemid = 25948, - type = WEAPON_SWORD, - }, - { - -- earth mystic blade replica - itemid = 25947, - type = WEAPON_SWORD, - }, - { - -- earth relic sword replica - itemid = 25946, - type = WEAPON_SWORD, - }, - { - -- earth spike sword replica - itemid = 25945, - type = WEAPON_SWORD, - }, - { - -- icy war hammer replica - itemid = 25944, - type = WEAPON_CLUB, - }, - { - -- icy orcish maul replica - itemid = 25943, - type = WEAPON_CLUB, - }, - { - -- icy basher replica - itemid = 25942, - type = WEAPON_CLUB, - }, - { - -- icy crystal mace replica - itemid = 25941, - type = WEAPON_CLUB, - }, - { - -- icy clerical mace replica - itemid = 25940, - type = WEAPON_CLUB, - }, - { - -- icy war axe replica - itemid = 25939, - type = WEAPON_AXE, - }, - { - -- icy headchopper replica - itemid = 25938, - type = WEAPON_AXE, - }, - { - -- icy heroic axe replica - itemid = 25937, - type = WEAPON_AXE, - }, - { - -- icy knight axe replica - itemid = 25936, - type = WEAPON_AXE, - }, - { - -- icy barbarian axe replica - itemid = 25935, - type = WEAPON_AXE, - }, - { - -- icy dragon slayer replica - itemid = 25934, - type = WEAPON_SWORD, - }, - { - -- icy blacksteel replica - itemid = 25933, - type = WEAPON_SWORD, - }, - { - -- icy mystic blade replica - itemid = 25932, - type = WEAPON_SWORD, - }, - { - -- icy relic sword replica - itemid = 25931, - type = WEAPON_SWORD, - }, - { - -- icy spike sword replica - itemid = 25930, - type = WEAPON_SWORD, - }, - { - -- fiery war hammer replica - itemid = 25929, - type = WEAPON_CLUB, - }, - { - -- fiery orcish maul replica - itemid = 25928, - type = WEAPON_CLUB, - }, - { - -- fiery basher replica - itemid = 25927, - type = WEAPON_CLUB, - }, - { - -- fiery crystal mace replica - itemid = 25926, - type = WEAPON_CLUB, - }, - { - -- fiery clerical mace replica - itemid = 25925, - type = WEAPON_CLUB, - }, - { - -- fiery war axe replica - itemid = 25924, - type = WEAPON_AXE, - }, - { - -- fiery headchopper replica - itemid = 25923, - type = WEAPON_AXE, - }, - { - -- fiery heroic axe replica - itemid = 25922, - type = WEAPON_AXE, - }, - { - -- fiery knight axe replica - itemid = 25921, - type = WEAPON_AXE, - }, - { - -- fiery barbarian axe replica - itemid = 25920, - type = WEAPON_AXE, - }, - { - -- fiery dragon slayer replica - itemid = 25919, - type = WEAPON_SWORD, - }, - { - -- fiery blacksteel replica - itemid = 25918, - type = WEAPON_SWORD, - }, - { - -- fiery mystic blade replica - itemid = 25917, - type = WEAPON_SWORD, - }, - { - -- fiery relic sword replica - itemid = 25916, - type = WEAPON_SWORD, - }, - { - -- fiery spike sword replica - itemid = 25915, - type = WEAPON_SWORD, - }, - { - -- wand of darkness - itemid = 25760, - type = WEAPON_WAND, - wandType = "death", - level = 41, - mana = 15, - damage = { 80, 100 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- royal star - itemid = 25759, - type = WEAPON_MISSILE, - level = 120, - unproperly = true, - breakchance = 30, - }, - { - -- spectral bolt - itemid = 25758, - type = WEAPON_AMMO, - level = 150, - unproperly = true, - action = "removecount", - }, - { - -- leaf star - itemid = 25735, - type = WEAPON_MISSILE, - level = 60, - unproperly = true, - breakchance = 40, - }, - { - -- dream blossom staff - itemid = 25700, - type = WEAPON_WAND, - wandType = "energy", - level = 80, - mana = 18, - damage = { 63, 77 }, - vocation = { - { "Sorcerer", true }, - { "Druid", true, true }, - { "Master Sorcerer" }, - { "Elder Druid" }, - }, - }, - { - -- rod of carving - itemid = 23339, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of carving - itemid = 23335, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of carving - itemid = 23331, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of carving - itemid = 23327, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of carving - itemid = 23323, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of carving - itemid = 23319, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of carving - itemid = 23315, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of carving - itemid = 23311, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of carving - itemid = 23307, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of carving - itemid = 23303, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rod of remedy - itemid = 23299, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of remedy - itemid = 23295, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of remedy - itemid = 23291, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of remedy - itemid = 23287, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of remedy - itemid = 23283, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of remedy - itemid = 23279, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of remedy - itemid = 23275, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of remedy - itemid = 23271, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of remedy - itemid = 23267, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of remedy - itemid = 23263, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rod of mayhem - itemid = 23232, - type = WEAPON_WAND, - wandType = "ice", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of mayhem - itemid = 23231, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 18, - damage = { 70, 105 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crossbow of mayhem - itemid = 23230, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- bow of mayhem - itemid = 23229, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hammer of mayhem - itemid = 23228, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mace of mayhem - itemid = 23227, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chopper of mayhem - itemid = 23226, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe of mayhem - itemid = 23225, - type = WEAPON_AXE, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- slayer of mayhem - itemid = 23224, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blade of mayhem - itemid = 23223, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- rift crossbow - itemid = 22867, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- rift bow - itemid = 22866, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ferumbras' staff (enchanted) - itemid = 22766, - type = WEAPON_WAND, - wandType = "energy", - level = 100, - mana = 19, - damage = { 80, 110 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- ferumbras' staff (failed) - itemid = 22765, - type = WEAPON_WAND, - wandType = "energy", - level = 65, - mana = 17, - damage = { 65, 95 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- Ferumbras' staff - itemid = 22764, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - }, - { - -- maimer - itemid = 22762, - type = WEAPON_CLUB, - level = 150, - unproperly = true, - }, - { - -- Impaler of the igniter - itemid = 22760, - type = WEAPON_SWORD, - level = 150, - unproperly = true, - }, - { - -- plague bite - itemid = 22759, - type = WEAPON_AXE, - level = 150, - unproperly = true, - }, - { - -- rift lance - itemid = 22727, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- ogre sceptra - itemid = 22183, - type = WEAPON_WAND, - wandType = "earth", - level = 37, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- ogre choppa - itemid = 22172, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- ogre klubba - itemid = 22171, - type = WEAPON_AXE, - level = 50, - unproperly = true, - }, - { - -- simple arrow - itemid = 21470, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- the chiller - itemid = 21350, - type = WEAPON_WAND, - wandType = "ice", - level = 1, - mana = 1, - damage = { 4, 8 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- the scorcher - itemid = 21348, - type = WEAPON_WAND, - wandType = "fire", - level = 1, - mana = 1, - damage = { 4, 8 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- one hit wonder - itemid = 21219, - type = WEAPON_CLUB, - level = 70, - unproperly = true, - }, - { - -- glooth axe - itemid = 21180, - type = WEAPON_AXE, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth blade - itemid = 21179, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- glooth club - itemid = 21178, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- cowtana - itemid = 21177, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - }, - { - -- execowtioner axe - itemid = 21176, - type = WEAPON_AXE, - level = 55, - unproperly = true, - }, - { - -- mino lance - itemid = 21174, - type = WEAPON_AXE, - level = 45, - unproperly = true, - }, - { - -- moohtant cudgel - itemid = 21173, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - }, - { - -- glooth whip - itemid = 21172, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- metal bat - itemid = 21171, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - }, - { - -- glooth spear - itemid = 21158, - type = WEAPON_MISSILE, - level = 60, - unproperly = true, - breakchance = 2, - }, - { - -- umbral master crossbow - itemid = 20087, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral crossbow - itemid = 20086, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crude umbral crossbow - itemid = 20085, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral master bow - itemid = 20084, - type = WEAPON_DISTANCE, - level = 250, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral bow - itemid = 20083, - type = WEAPON_DISTANCE, - level = 120, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crude umbral bow - itemid = 20082, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- umbral master hammer - itemid = 20081, - type = WEAPON_CLUB, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral hammer - itemid = 20080, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral hammer - itemid = 20079, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master mace - itemid = 20078, - type = WEAPON_CLUB, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral mace - itemid = 20077, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral mace - itemid = 20076, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master chopper - itemid = 20075, - type = WEAPON_AXE, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral chopper - itemid = 20074, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral chopper - itemid = 20073, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master axe - itemid = 20072, - type = WEAPON_AXE, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral axe - itemid = 20071, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral axe - itemid = 20070, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral master slayer - itemid = 20069, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral slayer - itemid = 20068, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral slayer - itemid = 20067, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral masterblade - itemid = 20066, - type = WEAPON_SWORD, - level = 250, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- umbral blade - itemid = 20065, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crude umbral blade - itemid = 20064, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icicle bow - itemid = 19362, - type = WEAPON_DISTANCE, - unproperly = true, - }, - { - -- triple bolt crossbow - itemid = 19356, - type = WEAPON_DISTANCE, - level = 70, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- spiky club - itemid = 17859, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- pair of iron fists - itemid = 17828, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- swampling club - itemid = 17824, - type = WEAPON_CLUB, - }, - { - -- life preserver - itemid = 17813, - type = WEAPON_CLUB, - level = 15, - unproperly = true, - }, - { - -- ratana - itemid = 17812, - type = WEAPON_SWORD, - level = 15, - unproperly = true, - }, - { - -- sorc and druid staff - itemid = 17111, - type = WEAPON_WAND, - wandType = "energy", - level = 1, - mana = 2, - damage = { 8, 18 }, - vocation = { - { "None", true }, - }, - }, - { - -- mean paladin spear - itemid = 17110, - type = WEAPON_MISSILE, - breakchance = 3, - vocation = { - { "None", true }, - }, - }, - { - -- mean knight sword - itemid = 17109, - type = WEAPON_SWORD, - unproperly = true, - vocation = { - { "None", true }, - }, - }, - { - -- shiny blade - itemid = 16175, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - }, - { - -- mycological bow - itemid = 16164, - type = WEAPON_DISTANCE, - level = 105, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- crystal crossbow - itemid = 16163, - type = WEAPON_DISTANCE, - level = 90, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- mycological mace - itemid = 16162, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - }, - { - -- crystalline axe - itemid = 16161, - type = WEAPON_AXE, - level = 120, - unproperly = true, - }, - { - -- crystalline sword - itemid = 16160, - type = WEAPON_SWORD, - level = 62, - unproperly = true, - }, - { - -- envenomed arrow - itemid = 16143, - type = WEAPON_AMMO, - level = 70, - unproperly = true, - action = "removecount", - }, - { - -- drill bolt - itemid = 16142, - type = WEAPON_AMMO, - level = 70, - unproperly = true, - action = "removecount", - }, - { - -- prismatic bolt - itemid = 16141, - type = WEAPON_AMMO, - level = 90, - unproperly = true, - action = "removecount", - }, - { - -- glacial rod - itemid = 16118, - type = WEAPON_WAND, - wandType = "ice", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- muck rod - itemid = 16117, - type = WEAPON_WAND, - wandType = "earth", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- wand of everblazing - itemid = 16115, - type = WEAPON_WAND, - wandType = "fire", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of defiance - itemid = 16096, - type = WEAPON_WAND, - wandType = "energy", - level = 65, - mana = 17, - damage = { 75, 95 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- crystalline arrow - itemid = 15793, - type = WEAPON_AMMO, - level = 90, - unproperly = true, - action = "removecount", - }, - { - -- crystal bolt - itemid = 15792, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- thorn spitter - itemid = 14768, - type = WEAPON_DISTANCE, - level = 150, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- vortex bolt - itemid = 14252, - type = WEAPON_AMMO, - level = 40, - unproperly = true, - action = "removecount", - }, - { - -- tarsal arrow - itemid = 14251, - type = WEAPON_AMMO, - level = 30, - unproperly = true, - action = "removecount", - }, - { - -- deepling squelcher - itemid = 14250, - type = WEAPON_CLUB, - level = 48, - unproperly = true, - }, - { - -- ornate crossbow - itemid = 14247, - type = WEAPON_DISTANCE, - level = 50, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hive bow - itemid = 14246, - type = WEAPON_DISTANCE, - level = 85, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- hive scythe - itemid = 14089, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- guardian axe - itemid = 14043, - type = WEAPON_AXE, - level = 50, - unproperly = true, - }, - { - -- warrior's axe - itemid = 14040, - type = WEAPON_AXE, - level = 40, - unproperly = true, - }, - { - -- ornate mace - itemid = 14001, - type = WEAPON_CLUB, - level = 90, - unproperly = true, - }, - { - -- deepling axe - itemid = 13991, - type = WEAPON_AXE, - level = 80, - unproperly = true, - }, - { - -- deepling staff - itemid = 13987, - type = WEAPON_CLUB, - level = 38, - unproperly = true, - }, - { - -- shimmer wand - itemid = 12741, - type = WEAPON_WAND, - wandType = "energy", - level = 40, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- shimmer bow - itemid = 12733, - type = WEAPON_DISTANCE, - level = 40, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- shimmer rod - itemid = 12732, - type = WEAPON_WAND, - wandType = "ice", - level = 40, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- shimmer sword - itemid = 12731, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - }, - { - -- heavy trident - itemid = 12683, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- wooden sword - itemid = 12673, - type = WEAPON_SWORD, - }, - { - -- wand of dimensions - itemid = 12603, - type = WEAPON_WAND, - wandType = "death", - level = 37, - mana = 9, - damage = { 44, 62 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- blade of corruption - itemid = 11693, - type = WEAPON_SWORD, - level = 82, - unproperly = true, - }, - { - -- snake god's sceptre - itemid = 11692, - type = WEAPON_CLUB, - level = 82, - unproperly = true, - }, - { - -- twiceslicer - itemid = 11657, - type = WEAPON_SWORD, - level = 58, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Zaoan halberd - itemid = 10406, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- twin hooks - itemid = 10392, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- drachaku - itemid = 10391, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Zaoan sword - itemid = 10390, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - }, - { - -- sai - itemid = 10389, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- drakinata - itemid = 10388, - type = WEAPON_AXE, - level = 60, - unproperly = true, - }, - { - -- incredible mumpiz slayer - itemid = 9396, - type = WEAPON_SWORD, - }, - { - -- poet's fencing quill - itemid = 9387, - type = WEAPON_SWORD, - }, - { - -- farmer's avenger - itemid = 9386, - type = WEAPON_AXE, - }, - { - -- club of the fury - itemid = 9385, - type = WEAPON_CLUB, - }, - { - -- scythe of the reaper - itemid = 9384, - type = WEAPON_AXE, - }, - { - -- musician's bow - itemid = 9378, - type = WEAPON_DISTANCE, - }, - { - -- stale bread of ancientness - itemid = 9376, - type = WEAPON_CLUB, - }, - { - -- pointed rabbitslayer - itemid = 9375, - type = WEAPON_SWORD, - }, - { - -- glutton's mace - itemid = 9373, - type = WEAPON_CLUB, - }, - { - -- the calamity - itemid = 8104, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the epiphany - itemid = 8103, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - }, - { - -- emerald sword - itemid = 8102, - type = WEAPON_SWORD, - level = 100, - unproperly = true, - }, - { - -- the stomper - itemid = 8101, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- obsidian truncheon - itemid = 8100, - type = WEAPON_CLUB, - level = 100, - unproperly = true, - }, - { - -- dark trinity mace - itemid = 8099, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - }, - { - -- demonwing axe - itemid = 8098, - type = WEAPON_AXE, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- solar axe - itemid = 8097, - type = WEAPON_AXE, - level = 130, - unproperly = true, - }, - { - -- hellforged axe - itemid = 8096, - type = WEAPON_AXE, - level = 110, - unproperly = true, - }, - { - -- wand of voodoo - itemid = 8094, - type = WEAPON_WAND, - wandType = "death", - level = 42, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of draconia - itemid = 8093, - type = WEAPON_WAND, - wandType = "fire", - level = 22, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of starmstorm - itemid = 8092, - type = WEAPON_WAND, - wandType = "energy", - level = 37, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- springsprout rod - itemid = 8084, - type = WEAPON_WAND, - wandType = "earth", - level = 37, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- northwind rod - itemid = 8083, - type = WEAPON_WAND, - wandType = "ice", - level = 22, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- underworld rod - itemid = 8082, - type = WEAPON_WAND, - wandType = "death", - level = 42, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- elethriel's elemental bow - itemid = 8030, - type = WEAPON_DISTANCE, - level = 70, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- silkweaver bow - itemid = 8029, - type = WEAPON_DISTANCE, - level = 40, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- yol's bow - itemid = 8028, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- composite hornbow - itemid = 8027, - type = WEAPON_DISTANCE, - level = 50, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- warsinger bow - itemid = 8026, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- ironworker - itemid = 8025, - type = WEAPON_DISTANCE, - level = 80, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- devileye - itemid = 8024, - type = WEAPON_DISTANCE, - level = 100, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- royal crossbow - itemid = 8023, - type = WEAPON_DISTANCE, - level = 130, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- chain bolter - itemid = 8022, - type = WEAPON_DISTANCE, - level = 60, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- modified crossbow - itemid = 8021, - type = WEAPON_DISTANCE, - level = 45, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- jagged sword - itemid = 7774, - type = WEAPON_SWORD, - }, - { - -- steel axe - itemid = 7773, - type = WEAPON_AXE, - }, - { - -- crimson sword - itemid = 860, - type = WEAPON_SWORD, - }, - { - -- energy war hammer - itemid = 810, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy orcish maul - itemid = 809, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- energy cranial basher - itemid = 808, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- energy crystal mace - itemid = 807, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- energy clerical mace - itemid = 806, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- energy war axe - itemid = 805, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy headchopper - itemid = 804, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy heroic axe - itemid = 803, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- energy knight axe - itemid = 802, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- energy barbarian axe - itemid = 801, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- energy dragon slayer - itemid = 798, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy blacksteel sword - itemid = 797, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- energy mystic blade - itemid = 796, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- energy relic sword - itemid = 795, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- energy spike sword - itemid = 794, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- earth war hammer - itemid = 793, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth orcish maul - itemid = 792, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- earth cranial basher - itemid = 791, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- earth crystal mace - itemid = 790, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- earth clerical mace - itemid = 789, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- earth war axe - itemid = 788, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth headchopper - itemid = 787, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth heroic axe - itemid = 786, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- earth knight axe - itemid = 785, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- earth barbarian axe - itemid = 784, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- earth dragon slayer - itemid = 783, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth blacksteel sword - itemid = 782, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- earth mystic blade - itemid = 781, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- earth relic sword - itemid = 780, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- earth spike sword - itemid = 779, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- earth arrow - itemid = 774, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- flaming arrow - itemid = 763, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- shiver arrow - itemid = 762, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- flash arrow - itemid = 761, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- icy war hammer - itemid = 693, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy orcish maul - itemid = 692, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- icy cranial basher - itemid = 691, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- icy crystal mace - itemid = 690, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- icy clerical mace - itemid = 689, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- icy war axe - itemid = 688, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy headchopper - itemid = 687, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy heroic axe - itemid = 686, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- icy knight axe - itemid = 685, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- icy barbarian axe - itemid = 684, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- icy dragon slayer - itemid = 683, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy blacksteel sword - itemid = 682, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- icy mystic blade - itemid = 681, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- icy relic sword - itemid = 680, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- icy spike sword - itemid = 679, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- fiery war hammer - itemid = 674, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery orcish maul - itemid = 673, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- fiery cranial basher - itemid = 672, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- fiery crystal mace - itemid = 671, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - action = "removecharge", - }, - { - -- fiery clerical mace - itemid = 670, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- fiery war axe - itemid = 669, - type = WEAPON_AXE, - level = 65, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery headchopper - itemid = 668, - type = WEAPON_AXE, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery heroic axe - itemid = 667, - type = WEAPON_AXE, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- fiery knight axe - itemid = 666, - type = WEAPON_AXE, - level = 25, - unproperly = true, - action = "removecharge", - }, - { - -- fiery barbarian axe - itemid = 665, - type = WEAPON_AXE, - level = 20, - unproperly = true, - action = "removecharge", - }, - { - -- fiery dragon slayer - itemid = 664, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery blacksteel sword - itemid = 663, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - action = "removecharge", - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fiery mystic blade - itemid = 662, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - action = "removecharge", - }, - { - -- fiery relic sword - itemid = 661, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - action = "removecharge", - }, - { - -- fiery spike sword - itemid = 660, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- noble axe - itemid = 7456, - type = WEAPON_AXE, - level = 35, - unproperly = true, - }, - { - -- mythril axe - itemid = 7455, - type = WEAPON_AXE, - level = 80, - unproperly = true, - }, - { - -- glorious axe - itemid = 7454, - type = WEAPON_AXE, - level = 30, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- executioner - itemid = 7453, - type = WEAPON_AXE, - level = 85, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spiked squelcher - itemid = 7452, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- shadow sceptre - itemid = 7451, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - }, - { - -- hammer of prophecy - itemid = 7450, - type = WEAPON_CLUB, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crystal sword - itemid = 7449, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- elvish bow - itemid = 7438, - type = WEAPON_DISTANCE, - }, - { - -- sapphire hammer - itemid = 7437, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- angelic axe - itemid = 7436, - type = WEAPON_AXE, - level = 45, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- impaler - itemid = 7435, - type = WEAPON_AXE, - level = 85, - unproperly = true, - }, - { - -- royal axe - itemid = 7434, - type = WEAPON_AXE, - level = 75, - unproperly = true, - }, - { - -- ravenwing - itemid = 7433, - type = WEAPON_AXE, - level = 65, - unproperly = true, - }, - { - -- furry club - itemid = 7432, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- demonbone - itemid = 7431, - type = WEAPON_CLUB, - level = 80, - unproperly = true, - }, - { - -- dragonbone staff - itemid = 7430, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- blessed sceptre - itemid = 7429, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - }, - { - -- bonebreaker - itemid = 7428, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- chaos mace - itemid = 7427, - type = WEAPON_CLUB, - level = 45, - unproperly = true, - }, - { - -- amber staff - itemid = 7426, - type = WEAPON_CLUB, - level = 40, - unproperly = true, - }, - { - -- taurus mace - itemid = 7425, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- lunar staff - itemid = 7424, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- skullcrusher - itemid = 7423, - type = WEAPON_CLUB, - level = 85, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- jade hammer - itemid = 7422, - type = WEAPON_CLUB, - level = 70, - unproperly = true, - }, - { - -- onyx flail - itemid = 7421, - type = WEAPON_CLUB, - level = 65, - unproperly = true, - }, - { - -- reaper's axe - itemid = 7420, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- dreaded cleaver - itemid = 7419, - type = WEAPON_AXE, - level = 40, - unproperly = true, - }, - { - -- nightmare blade - itemid = 7418, - type = WEAPON_SWORD, - level = 70, - unproperly = true, - }, - { - -- runed sword - itemid = 7417, - type = WEAPON_SWORD, - level = 65, - unproperly = true, - }, - { - -- bloody edge - itemid = 7416, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - }, - { - -- cranial basher - itemid = 7415, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - }, - { - -- abyss hammer - itemid = 7414, - type = WEAPON_CLUB, - level = 60, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- titan axe - itemid = 7413, - type = WEAPON_AXE, - level = 40, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- butcher's axe - itemid = 7412, - type = WEAPON_AXE, - level = 45, - unproperly = true, - }, - { - -- ornamented axe - itemid = 7411, - type = WEAPON_AXE, - level = 50, - unproperly = true, - }, - { - -- queen's sceptre - itemid = 7410, - type = WEAPON_CLUB, - level = 55, - unproperly = true, - }, - { - -- northern star - itemid = 7409, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - }, - { - -- wyvern fang - itemid = 7408, - type = WEAPON_SWORD, - level = 25, - unproperly = true, - }, - { - -- haunted blade - itemid = 7407, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- blacksteel sword - itemid = 7406, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- havoc blade - itemid = 7405, - type = WEAPON_SWORD, - level = 70, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- assassin dagger - itemid = 7404, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - }, - { - -- berserker - itemid = 7403, - type = WEAPON_SWORD, - level = 65, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- dragon slayer - itemid = 7402, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- orcish maul - itemid = 7392, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - }, - { - -- thaian sword - itemid = 7391, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- the justice seeker - itemid = 7390, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - }, - { - -- heroic axe - itemid = 7389, - type = WEAPON_AXE, - level = 60, - unproperly = true, - }, - { - -- vile axe - itemid = 7388, - type = WEAPON_AXE, - level = 55, - unproperly = true, - }, - { - -- diamond sceptre - itemid = 7387, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- mercenary sword - itemid = 7386, - type = WEAPON_SWORD, - level = 40, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- crimson sword - itemid = 7385, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - }, - { - -- mystic blade - itemid = 7384, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - }, - { - -- relic sword - itemid = 7383, - type = WEAPON_SWORD, - level = 50, - unproperly = true, - }, - { - -- demonrage sword - itemid = 7382, - type = WEAPON_SWORD, - level = 60, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- mammoth whopper - itemid = 7381, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- headchopper - itemid = 7380, - type = WEAPON_AXE, - level = 35, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- brutetamer's staff - itemid = 7379, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- royal spear - itemid = 7378, - type = WEAPON_MISSILE, - level = 25, - unproperly = true, - breakchance = 3, - }, - { - -- assassin star - itemid = 7368, - type = WEAPON_MISSILE, - level = 80, - unproperly = true, - breakchance = 33, - }, - { - -- enchanted spear - itemid = 7367, - type = WEAPON_MISSILE, - level = 42, - unproperly = true, - breakchance = 1, - }, - { - -- onyx arrow - itemid = 7365, - type = WEAPON_AMMO, - level = 40, - unproperly = true, - action = "removecount", - }, - { - -- sniper arrow - itemid = 7364, - type = WEAPON_AMMO, - level = 20, - unproperly = true, - action = "removecount", - }, - { - -- piercing bolt - itemid = 7363, - type = WEAPON_AMMO, - level = 30, - unproperly = true, - action = "removecount", - }, - { - -- ruthless axe - itemid = 6553, - type = WEAPON_AXE, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- infernal bolt - itemid = 6528, - type = WEAPON_AMMO, - level = 110, - unproperly = true, - action = "removecount", - }, - { - -- the avenger - itemid = 6527, - type = WEAPON_SWORD, - level = 75, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- Ron the Ripper's sabre - itemid = 6101, - type = WEAPON_SWORD, - }, - { - -- arbalest - itemid = 5803, - type = WEAPON_DISTANCE, - level = 75, - unproperly = true, - vocation = { - { "Paladin", true }, - { "Royal Paladin" }, - }, - }, - { - -- banana staff - itemid = 3348, - type = WEAPON_CLUB, - }, - { - -- hunting spear - itemid = 3347, - type = WEAPON_MISSILE, - level = 20, - unproperly = true, - breakchance = 6, - }, - { - -- ripper lance - itemid = 3346, - type = WEAPON_AXE, - }, - { - -- templar scytheblade - itemid = 3345, - type = WEAPON_SWORD, - }, - { - -- beastslayer axe - itemid = 3344, - type = WEAPON_AXE, - level = 30, - unproperly = true, - }, - { - -- lich staff - itemid = 3343, - type = WEAPON_CLUB, - level = 40, - unproperly = true, - }, - { - -- scythe - itemid = 3453, - type = WEAPON_CLUB, - }, - { - -- power bolt - itemid = 3450, - type = WEAPON_AMMO, - level = 55, - unproperly = true, - action = "removecount", - }, - { - -- arrow - itemid = 3447, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- bolt - itemid = 3446, - type = WEAPON_AMMO, - action = "removecount", - }, - { - -- bow - itemid = 3350, - type = WEAPON_DISTANCE, - }, - { - -- crossbow - itemid = 3349, - type = WEAPON_DISTANCE, - }, - { - -- war axe - itemid = 3342, - type = WEAPON_AXE, - level = 65, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- arcane staff - itemid = 3341, - type = WEAPON_CLUB, - level = 75, - unproperly = true, - }, - { - -- heavy mace - itemid = 3340, - type = WEAPON_CLUB, - level = 70, - unproperly = true, - }, - { - -- djinn blade - itemid = 3339, - type = WEAPON_SWORD, - level = 35, - unproperly = true, - }, - { - -- bone sword - itemid = 3338, - type = WEAPON_SWORD, - }, - { - -- bone club - itemid = 3337, - type = WEAPON_CLUB, - }, - { - -- studded club - itemid = 3336, - type = WEAPON_CLUB, - }, - { - -- twin axe - itemid = 3335, - type = WEAPON_AXE, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- pharaoh sword - itemid = 3334, - type = WEAPON_SWORD, - level = 45, - unproperly = true, - }, - { - -- crystal mace - itemid = 3333, - type = WEAPON_CLUB, - level = 35, - unproperly = true, - }, - { - -- hammer of wrath - itemid = 3332, - type = WEAPON_CLUB, - level = 65, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- ravager's axe - itemid = 3331, - type = WEAPON_AXE, - level = 70, - unproperly = true, - }, - { - -- heavy machete - itemid = 3330, - type = WEAPON_SWORD, - }, - { - -- daramian axe - itemid = 3329, - type = WEAPON_AXE, - }, - { - -- daramian waraxe - itemid = 3328, - type = WEAPON_AXE, - level = 25, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- daramian mace - itemid = 3327, - type = WEAPON_CLUB, - }, - { - -- epee - itemid = 3326, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - }, - { - -- light mace - itemid = 3325, - type = WEAPON_CLUB, - }, - { - -- skull staff - itemid = 3324, - type = WEAPON_CLUB, - level = 30, - unproperly = true, - }, - { - -- dwarven axe - itemid = 3323, - type = WEAPON_AXE, - level = 20, - unproperly = true, - }, - { - -- dragon hammer - itemid = 3322, - type = WEAPON_CLUB, - level = 25, - unproperly = true, - }, - { - -- enchanted staff - itemid = 3321, - type = WEAPON_CLUB, - }, - { - -- fire axe - itemid = 3320, - type = WEAPON_AXE, - level = 35, - unproperly = true, - }, - { - -- stonecutter axe - itemid = 3319, - type = WEAPON_AXE, - level = 90, - unproperly = true, - }, - { - -- knight axe - itemid = 3318, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- barbarian axe - itemid = 3317, - type = WEAPON_AXE, - level = 20, - unproperly = true, - }, - { - -- orcish axe - itemid = 3316, - type = WEAPON_AXE, - }, - { - -- guardian halberd - itemid = 3315, - type = WEAPON_AXE, - level = 55, - unproperly = true, - }, - { - -- naginata - itemid = 3314, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- obsidian lance - itemid = 3313, - type = WEAPON_AXE, - level = 20, - unproperly = true, - }, - { - -- silver mace - itemid = 3312, - type = WEAPON_CLUB, - level = 45, - unproperly = true, - }, - { - -- clerical mace - itemid = 3311, - type = WEAPON_CLUB, - level = 20, - unproperly = true, - }, - { - -- iron hammer - itemid = 3310, - type = WEAPON_CLUB, - }, - { - -- thunder hammer - itemid = 3309, - type = WEAPON_CLUB, - level = 85, - unproperly = true, - }, - { - -- machete - itemid = 3308, - type = WEAPON_SWORD, - }, - { - -- scimitar - itemid = 3307, - type = WEAPON_SWORD, - }, - { - -- golden sickle - itemid = 3306, - type = WEAPON_AXE, - }, - { - -- battle hammer - itemid = 3305, - type = WEAPON_CLUB, - }, - { - -- crowbar - itemid = 3304, - type = WEAPON_CLUB, - }, - { - -- great axe - itemid = 3303, - type = WEAPON_AXE, - level = 95, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- dragon lance - itemid = 3302, - type = WEAPON_AXE, - level = 60, - unproperly = true, - }, - { - -- broadsword - itemid = 3301, - type = WEAPON_SWORD, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- katana - itemid = 3300, - type = WEAPON_SWORD, - }, - { - -- poison dagger - itemid = 3299, - type = WEAPON_SWORD, - }, - { - -- throwing knife - itemid = 3298, - type = WEAPON_MISSILE, - breakchance = 7, - }, - { - -- serpent sword - itemid = 3297, - type = WEAPON_SWORD, - }, - { - -- warlord sword - itemid = 3296, - type = WEAPON_SWORD, - level = 120, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- bright sword - itemid = 3295, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - }, - { - -- short sword - itemid = 3294, - type = WEAPON_SWORD, - }, - { - -- sickle - itemid = 3293, - type = WEAPON_AXE, - }, - { - -- combat knife - itemid = 3292, - type = WEAPON_SWORD, - }, - { - -- knife - itemid = 3291, - type = WEAPON_SWORD, - }, - { - -- silver dagger - itemid = 3290, - type = WEAPON_SWORD, - }, - { - -- staff - itemid = 3289, - type = WEAPON_CLUB, - }, - { - -- magic sword - itemid = 3288, - type = WEAPON_SWORD, - level = 80, - unproperly = true, - }, - { - -- throwing star - itemid = 3287, - type = WEAPON_MISSILE, - breakchance = 10, - }, - { - -- mace - itemid = 3286, - type = WEAPON_CLUB, - }, - { - -- longsword - itemid = 3285, - type = WEAPON_SWORD, - }, - { - -- ice rapier - itemid = 3284, - type = WEAPON_SWORD, - action = "removecharge", - }, - { - -- carlin sword - itemid = 3283, - type = WEAPON_SWORD, - }, - { - -- morning star - itemid = 3282, - type = WEAPON_CLUB, - }, - { - -- giant sword - itemid = 3281, - type = WEAPON_SWORD, - level = 55, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- fire sword - itemid = 3280, - type = WEAPON_SWORD, - level = 30, - unproperly = true, - }, - { - -- war hammer - itemid = 3279, - type = WEAPON_CLUB, - level = 50, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- magic longsword - itemid = 3278, - type = WEAPON_SWORD, - level = 140, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- spear - itemid = 3277, - type = WEAPON_MISSILE, - breakchance = 3, - }, - { - -- hatchet - itemid = 3276, - type = WEAPON_AXE, - }, - { - -- double axe - itemid = 3275, - type = WEAPON_AXE, - level = 25, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- axe - itemid = 3274, - type = WEAPON_AXE, - }, - { - -- sabre - itemid = 3273, - type = WEAPON_SWORD, - }, - { - -- rapier - itemid = 3272, - type = WEAPON_SWORD, - }, - { - -- spike sword - itemid = 3271, - type = WEAPON_SWORD, - }, - { - -- club - itemid = 3270, - type = WEAPON_CLUB, - }, - { - -- halberd - itemid = 3269, - type = WEAPON_AXE, - level = 25, - unproperly = true, - }, - { - -- hand axe - itemid = 3268, - type = WEAPON_AXE, - }, - { - -- dagger - itemid = 3267, - type = WEAPON_SWORD, - }, - { - -- battle axe - itemid = 3266, - type = WEAPON_AXE, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- two handed sword - itemid = 3265, - type = WEAPON_SWORD, - level = 20, - unproperly = true, - vocation = { - { "Knight", true }, - { "Elite Knight" }, - }, - }, - { - -- sword - itemid = 3264, - type = WEAPON_SWORD, - }, - { - -- giant smithhammer - itemid = 3208, - type = WEAPON_CLUB, - }, - { - -- wand of dragonbreath - itemid = 3075, - type = WEAPON_WAND, - wandType = "fire", - level = 13, - mana = 3, - damage = { 13, 25 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of vortex - itemid = 3074, - type = WEAPON_WAND, - wandType = "energy", - level = 6, - mana = 1, - damage = { 8, 18 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of cosmic energy - itemid = 3073, - type = WEAPON_WAND, - wandType = "energy", - level = 26, - mana = 8, - damage = { 37, 53 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of decay - itemid = 3072, - type = WEAPON_WAND, - wandType = "death", - level = 19, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- wand of inferno - itemid = 3071, - type = WEAPON_WAND, - wandType = "fire", - level = 33, - mana = 8, - damage = { 56, 74 }, - vocation = { - { "Sorcerer", true }, - { "Master Sorcerer" }, - }, - }, - { - -- moonlight rod - itemid = 3070, - type = WEAPON_WAND, - wandType = "ice", - level = 13, - mana = 3, - damage = { 13, 25 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- necrotic rod - itemid = 3069, - type = WEAPON_WAND, - wandType = "death", - level = 19, - mana = 5, - damage = { 23, 37 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- hailstorm rod - itemid = 3067, - type = WEAPON_WAND, - wandType = "ice", - level = 33, - mana = 13, - damage = { 56, 74 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- snakebit rod - itemid = 3066, - type = WEAPON_WAND, - wandType = "earth", - level = 6, - mana = 2, - damage = { 8, 18 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- terra rod - itemid = 3065, - type = WEAPON_WAND, - wandType = "earth", - level = 26, - mana = 8, - damage = { 37, 53 }, - vocation = { - { "Druid", true }, - { "Elder Druid" }, - }, - }, - { - -- snowball - itemid = 2992, - type = WEAPON_MISSILE, - action = "removecount", - }, - { - -- small stone - itemid = 1781, - type = WEAPON_MISSILE, - breakchance = 3, - }, -} - -for _, w in ipairs(weapons) do - local weapon = Weapon(w.type) - weapon:id(w.itemid or w.itemId) - - if w.action then - weapon:action(w.action) - end - if w.breakchance or w.breakChance then - weapon:breakChance(w.breakchance or w.breakChance) - end - if w.level then - weapon:level(w.level) - end - if w.mana then - weapon:mana(w.mana) - end - if w.unproperly then - weapon:wieldUnproperly(w.unproperly) - end - if w.damage then - weapon:damage(w.damage[1], w.damage[2]) - end - if w.wandtype or w.wandType then - weapon:element(w.wandtype or w.wandType) - end - if w.vocation then - for _, v in ipairs(w.vocation) do - weapon:vocation(v[1], v[2] or false, v[3] or false) - end - end - - weapon:register() -end diff --git a/data/items/items.xml b/data/items/items.xml index 40cdc597c63..1e33fc81453 100644 --- a/data/items/items.xml +++ b/data/items/items.xml @@ -41,6 +41,9 @@ + + + @@ -710,6 +713,9 @@ + + + @@ -805,6 +811,9 @@ + + + @@ -1104,6 +1113,9 @@ + + + @@ -1138,12 +1150,18 @@ + + + + + + @@ -1173,6 +1191,11 @@ + + + + + @@ -1181,6 +1204,13 @@ + + + + + + + @@ -1189,6 +1219,13 @@ + + + + + + + @@ -1196,6 +1233,14 @@ + + + + + + + + @@ -1203,6 +1248,14 @@ + + + + + + + + @@ -1211,6 +1264,13 @@ + + + + + + + @@ -1219,6 +1279,13 @@ + + + + + + + @@ -1227,6 +1294,13 @@ + + + + + + + @@ -1234,6 +1308,14 @@ + + + + + + + + @@ -1241,6 +1323,14 @@ + + + + + + + + @@ -1249,6 +1339,13 @@ + + + + + + + @@ -1257,6 +1354,13 @@ + + + + + + + @@ -1265,6 +1369,13 @@ + + + + + + + @@ -1272,6 +1383,13 @@ + + + + + + + @@ -1279,6 +1397,14 @@ + + + + + + + + @@ -1303,6 +1429,11 @@ + + + + + @@ -1311,6 +1442,13 @@ + + + + + + + @@ -1319,6 +1457,13 @@ + + + + + + + @@ -1326,6 +1471,14 @@ + + + + + + + + @@ -1333,6 +1486,14 @@ + + + + + + + + @@ -1341,6 +1502,13 @@ + + + + + + + @@ -1349,6 +1517,13 @@ + + + + + + + @@ -1357,6 +1532,13 @@ + + + + + + + @@ -1364,6 +1546,14 @@ + + + + + + + + @@ -1371,6 +1561,14 @@ + + + + + + + + @@ -1379,6 +1577,13 @@ + + + + + + + @@ -1387,6 +1592,13 @@ + + + + + + + @@ -1395,6 +1607,13 @@ + + + + + + + @@ -1402,6 +1621,13 @@ + + + + + + + @@ -1409,6 +1635,14 @@ + + + + + + + + @@ -1843,6 +2077,13 @@ + + + + + + + @@ -1853,6 +2094,13 @@ + + + + + + + @@ -1863,6 +2111,13 @@ + + + + + + + @@ -1929,6 +2184,13 @@ + + + + + + + @@ -1945,6 +2207,11 @@ + + + + + @@ -1953,6 +2220,13 @@ + + + + + + + @@ -1961,6 +2235,13 @@ + + + + + + + @@ -1968,6 +2249,14 @@ + + + + + + + + @@ -1975,6 +2264,14 @@ + + + + + + + + @@ -1983,6 +2280,13 @@ + + + + + + + @@ -1991,6 +2295,13 @@ + + + + + + + @@ -1999,6 +2310,13 @@ + + + + + + + @@ -2006,6 +2324,14 @@ + + + + + + + + @@ -2013,6 +2339,14 @@ + + + + + + + + @@ -2021,6 +2355,13 @@ + + + + + + + @@ -2029,6 +2370,13 @@ + + + + + + + @@ -2037,6 +2385,13 @@ + + + + + + + @@ -2044,6 +2399,13 @@ + + + + + + + @@ -2051,6 +2413,14 @@ + + + + + + + + @@ -2058,6 +2428,11 @@ + + + + + @@ -2066,6 +2441,13 @@ + + + + + + + @@ -2074,6 +2456,13 @@ + + + + + + + @@ -2081,6 +2470,14 @@ + + + + + + + + @@ -2088,6 +2485,14 @@ + + + + + + + + @@ -2100,6 +2505,13 @@ + + + + + + + @@ -2108,6 +2520,13 @@ + + + + + + + @@ -2116,6 +2535,13 @@ + + + + + + + @@ -2123,6 +2549,14 @@ + + + + + + + + @@ -2130,6 +2564,14 @@ + + + + + + + + @@ -2138,6 +2580,13 @@ + + + + + + + @@ -2146,6 +2595,13 @@ + + + + + + + @@ -2154,6 +2610,13 @@ + + + + + + + @@ -2161,6 +2624,13 @@ + + + + + + + @@ -2168,6 +2638,14 @@ + + + + + + + + @@ -2175,6 +2653,11 @@ + + + + + @@ -2182,6 +2665,11 @@ + + + + + @@ -2190,6 +2678,11 @@ + + + + + @@ -2199,6 +2692,10 @@ + + + + @@ -2208,6 +2705,10 @@ + + + + @@ -2217,6 +2718,10 @@ + + + + @@ -2226,6 +2731,10 @@ + + + + @@ -2236,6 +2745,11 @@ + + + + + @@ -2244,6 +2758,11 @@ + + + + + @@ -2254,6 +2773,11 @@ + + + + + @@ -2261,6 +2785,11 @@ + + + + + @@ -2268,6 +2797,11 @@ + + + + + @@ -2275,6 +2809,11 @@ + + + + + @@ -2282,6 +2821,11 @@ + + + + + @@ -2289,6 +2833,11 @@ + + + + + @@ -2296,6 +2845,11 @@ + + + + + @@ -2303,6 +2857,10 @@ + + + + @@ -2310,6 +2868,10 @@ + + + + @@ -2317,6 +2879,10 @@ + + + + @@ -2324,6 +2890,10 @@ + + + + @@ -2388,6 +2958,10 @@ + + + + @@ -2458,6 +3032,9 @@ + + + @@ -2487,6 +3064,9 @@ + + + @@ -2529,6 +3109,9 @@ + + + @@ -2543,12 +3126,18 @@ + + + + + + @@ -3269,6 +3858,11 @@ + + + + + @@ -3635,6 +4229,9 @@ + + + @@ -3645,12 +4242,18 @@ + + + + + + @@ -3660,6 +4263,9 @@ + + + @@ -3669,6 +4275,9 @@ + + + @@ -3678,6 +4287,9 @@ + + + @@ -3687,11 +4299,17 @@ + + + + + + @@ -3701,6 +4319,9 @@ + + + @@ -3712,9 +4333,15 @@ + + + + + + @@ -3722,6 +4349,9 @@ + + + @@ -3742,12 +4372,18 @@ + + + + + + @@ -3759,6 +4395,9 @@ + + + @@ -3768,11 +4407,17 @@ + + + + + + @@ -3783,6 +4428,9 @@ + + + @@ -3793,6 +4441,9 @@ + + + @@ -5285,6 +5936,9 @@ + + + @@ -5293,6 +5947,9 @@ + + + @@ -5308,41 +5965,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -5351,6 +6032,9 @@ + + + @@ -5359,6 +6043,9 @@ + + + @@ -5367,6 +6054,9 @@ + + + @@ -5375,6 +6065,9 @@ + + + @@ -5383,6 +6076,9 @@ + + + @@ -5391,6 +6087,9 @@ + + + @@ -5399,6 +6098,9 @@ + + + @@ -5407,6 +6109,9 @@ + + + @@ -5880,6 +6585,11 @@ + + + + + @@ -5928,6 +6638,9 @@ + + + @@ -5935,18 +6648,30 @@ + + + + + + + + + + + + @@ -5955,27 +6680,45 @@ + + + + + + + + + + + + + + + + + + @@ -5984,10 +6727,16 @@ + + + + + + @@ -5996,6 +6745,9 @@ + + + @@ -6008,6 +6760,9 @@ + + + @@ -6020,6 +6775,9 @@ + + + @@ -6105,6 +6863,9 @@ + + + @@ -6133,6 +6894,9 @@ + + + @@ -6140,6 +6904,9 @@ + + + @@ -6147,6 +6914,9 @@ + + + @@ -6154,6 +6924,10 @@ + + + + @@ -6161,6 +6935,9 @@ + + + @@ -6168,6 +6945,9 @@ + + + @@ -6176,12 +6956,18 @@ + + + + + + @@ -6190,10 +6976,16 @@ + + + + + + @@ -6214,6 +7006,10 @@ + + + + @@ -6230,6 +7026,9 @@ + + + @@ -6239,6 +7038,16 @@ + + + + + + + + + + @@ -6247,6 +7056,16 @@ + + + + + + + + + + @@ -6255,6 +7074,16 @@ + + + + + + + + + + @@ -6267,6 +7096,16 @@ + + + + + + + + + + @@ -6275,6 +7114,16 @@ + + + + + + + + + + @@ -6282,6 +7131,16 @@ + + + + + + + + + + @@ -6289,6 +7148,16 @@ + + + + + + + + + + @@ -6296,6 +7165,16 @@ + + + + + + + + + + @@ -6303,6 +7182,16 @@ + + + + + + + + + + @@ -6315,6 +7204,16 @@ + + + + + + + + + + @@ -6333,10 +7232,16 @@ + + + + + + @@ -6346,6 +7251,9 @@ + + + @@ -6360,6 +7268,9 @@ + + + @@ -6368,6 +7279,9 @@ + + + @@ -6376,6 +7290,9 @@ + + + @@ -6384,6 +7301,9 @@ + + + @@ -6394,6 +7314,9 @@ + + + @@ -6403,6 +7326,9 @@ + + + @@ -6413,6 +7339,10 @@ + + + + @@ -6426,6 +7356,9 @@ + + + @@ -6434,6 +7367,9 @@ + + + @@ -6441,6 +7377,9 @@ + + + @@ -6448,6 +7387,9 @@ + + + @@ -6455,6 +7397,9 @@ + + + @@ -6464,6 +7409,9 @@ + + + @@ -6473,6 +7421,9 @@ + + + @@ -6482,6 +7433,9 @@ + + + @@ -6489,12 +7443,18 @@ + + + + + + @@ -6505,6 +7465,9 @@ + + + @@ -6517,6 +7480,9 @@ + + + @@ -6527,6 +7493,9 @@ + + + @@ -6971,6 +7940,10 @@ + + + + @@ -6986,6 +7959,10 @@ + + + + @@ -7059,6 +8036,9 @@ + + + @@ -7074,6 +8054,9 @@ + + + @@ -7081,6 +8064,9 @@ + + + @@ -7165,14 +8151,23 @@ + + + + + + + + + @@ -7204,6 +8199,9 @@ + + + @@ -7258,6 +8256,10 @@ + + + + @@ -7266,6 +8268,13 @@ + + + + + + + @@ -7274,6 +8283,12 @@ + + + + + + @@ -7281,6 +8296,10 @@ + + + + @@ -7288,6 +8307,10 @@ + + + + @@ -7296,6 +8319,12 @@ + + + + + + @@ -7303,6 +8332,10 @@ + + + + @@ -7319,6 +8352,10 @@ + + + + @@ -7327,6 +8364,10 @@ + + + + @@ -7335,6 +8376,10 @@ + + + + @@ -7342,6 +8387,10 @@ + + + + @@ -7350,6 +8399,13 @@ + + + + + + + @@ -7357,6 +8413,10 @@ + + + + @@ -7366,6 +8426,11 @@ + + + + + @@ -7375,6 +8440,13 @@ + + + + + + + @@ -7390,6 +8462,13 @@ + + + + + + + @@ -7400,6 +8479,12 @@ + + + + + + @@ -7416,6 +8501,13 @@ + + + + + + + @@ -7423,6 +8515,10 @@ + + + + @@ -7431,6 +8527,10 @@ + + + + @@ -7441,6 +8541,11 @@ + + + + + @@ -7448,6 +8553,10 @@ + + + + @@ -7455,6 +8564,10 @@ + + + + @@ -7464,6 +8577,11 @@ + + + + + @@ -7480,6 +8598,12 @@ + + + + + + @@ -7488,6 +8612,10 @@ + + + + @@ -7495,6 +8623,10 @@ + + + + @@ -7502,6 +8634,10 @@ + + + + @@ -7509,6 +8645,10 @@ + + + + @@ -7516,6 +8656,10 @@ + + + + @@ -7523,6 +8667,10 @@ + + + + @@ -7539,6 +8687,12 @@ + + + + + + @@ -7548,6 +8702,13 @@ + + + + + + + @@ -7557,6 +8718,10 @@ + + + + @@ -7566,6 +8731,11 @@ + + + + + @@ -7574,6 +8744,10 @@ + + + + @@ -7582,6 +8756,10 @@ + + + + @@ -7597,6 +8775,11 @@ + + + + + @@ -7613,6 +8796,12 @@ + + + + + + @@ -7629,6 +8818,13 @@ + + + + + + + @@ -7637,6 +8833,10 @@ + + + + @@ -7644,6 +8844,10 @@ + + + + @@ -7651,6 +8855,10 @@ + + + + @@ -7659,6 +8867,10 @@ + + + + @@ -7666,6 +8878,10 @@ + + + + @@ -7682,6 +8898,12 @@ + + + + + + @@ -7689,6 +8911,10 @@ + + + + @@ -7704,6 +8930,12 @@ + + + + + + @@ -7720,6 +8952,12 @@ + + + + + + @@ -7728,6 +8966,12 @@ + + + + + + @@ -7736,6 +8980,12 @@ + + + + + + @@ -7751,6 +9001,12 @@ + + + + + + @@ -7758,6 +9014,10 @@ + + + + @@ -7773,6 +9033,12 @@ + + + + + + @@ -7788,6 +9054,12 @@ + + + + + + @@ -7804,6 +9076,12 @@ + + + + + + @@ -7814,6 +9092,12 @@ + + + + + + @@ -7825,6 +9109,10 @@ + + + + @@ -7832,6 +9120,12 @@ + + + + + + @@ -7847,6 +9141,12 @@ + + + + + + @@ -7863,6 +9163,12 @@ + + + + + + @@ -7870,6 +9176,10 @@ + + + + @@ -7884,6 +9194,12 @@ + + + + + + @@ -7891,6 +9207,10 @@ + + + + @@ -7899,6 +9219,13 @@ + + + + + + + @@ -7906,6 +9233,10 @@ + + + + @@ -7913,6 +9244,10 @@ + + + + @@ -7927,6 +9262,12 @@ + + + + + + @@ -7942,6 +9283,13 @@ + + + + + + + @@ -7957,6 +9305,12 @@ + + + + + + @@ -7965,6 +9319,12 @@ + + + + + + @@ -7980,6 +9340,13 @@ + + + + + + + @@ -7988,6 +9355,10 @@ + + + + @@ -7996,6 +9367,10 @@ + + + + @@ -8003,6 +9378,10 @@ + + + + @@ -8018,6 +9397,12 @@ + + + + + + @@ -8034,6 +9419,12 @@ + + + + + + @@ -8050,6 +9441,12 @@ + + + + + + @@ -8065,6 +9462,13 @@ + + + + + + + @@ -8074,6 +9478,12 @@ + + + + + + @@ -8089,6 +9499,12 @@ + + + + + + @@ -8097,6 +9513,10 @@ + + + + @@ -8105,6 +9525,10 @@ + + + + @@ -8114,6 +9538,13 @@ + + + + + + + @@ -8122,6 +9553,10 @@ + + + + @@ -8137,6 +9572,10 @@ + + + + @@ -8145,41 +9584,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + @@ -8194,11 +9658,17 @@ + + + + + + @@ -8213,26 +9683,43 @@ + + + + + + + + + + + + + + + + + @@ -8247,6 +9734,9 @@ + + + @@ -8261,17 +9751,27 @@ + + + + + + + + + + @@ -8285,6 +9785,9 @@ + + + @@ -8299,51 +9802,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -8358,6 +9893,9 @@ + + + @@ -8372,21 +9910,35 @@ + + + + + + + + + + + + + + @@ -8400,6 +9952,9 @@ + + + @@ -8414,6 +9969,10 @@ + + + + @@ -8428,6 +9987,9 @@ + + + @@ -8442,16 +10004,25 @@ + + + + + + + + + @@ -8465,6 +10036,9 @@ + + + @@ -8479,6 +10053,9 @@ + + + @@ -8492,6 +10069,9 @@ + + + @@ -8507,11 +10087,19 @@ + + + + + + + + @@ -8526,6 +10114,9 @@ + + + @@ -8541,12 +10132,18 @@ + + + + + + @@ -8561,27 +10158,42 @@ + + + + + + + + + + + + + + + @@ -8596,20 +10208,32 @@ + + + + + + + + + + + + @@ -8623,6 +10247,9 @@ + + + @@ -8638,30 +10265,45 @@ + + + + + + + + + + + + + + + @@ -8678,12 +10320,18 @@ + + + + + + @@ -8699,12 +10347,18 @@ + + + + + + @@ -8720,6 +10374,9 @@ + + + @@ -8735,6 +10392,9 @@ + + + @@ -8751,12 +10411,18 @@ + + + + + + @@ -8773,6 +10439,9 @@ + + + @@ -8780,6 +10449,9 @@ + + + @@ -8796,24 +10468,36 @@ + + + + + + + + + + + + @@ -8829,6 +10513,9 @@ + + + @@ -8836,12 +10523,18 @@ + + + + + + @@ -8857,12 +10550,18 @@ + + + + + + @@ -8878,6 +10577,9 @@ + + + @@ -8894,6 +10596,9 @@ + + + @@ -8909,6 +10614,9 @@ + + + @@ -8924,6 +10632,9 @@ + + + @@ -8939,12 +10650,18 @@ + + + + + + @@ -8961,18 +10678,27 @@ + + + + + + + + + @@ -8988,12 +10714,18 @@ + + + + + + @@ -9009,12 +10741,18 @@ + + + + + + @@ -9024,6 +10762,11 @@ + + + + + @@ -9033,6 +10776,11 @@ + + + + + @@ -9060,6 +10808,13 @@ + + + + + + + @@ -9076,6 +10831,10 @@ + + + + @@ -9338,6 +11097,9 @@ + + + @@ -9346,6 +11108,9 @@ + + + @@ -9353,6 +11118,9 @@ + + + @@ -9361,6 +11129,9 @@ + + + @@ -9368,6 +11139,9 @@ + + + @@ -9376,6 +11150,9 @@ + + + @@ -9384,6 +11161,9 @@ + + + @@ -9392,56 +11172,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -9457,27 +11270,46 @@ + + + + + + + + + + + + + + + + + + + @@ -9491,12 +11323,18 @@ + + + + + + @@ -9504,11 +11342,18 @@ + + + + + + + @@ -10307,6 +12152,11 @@ + + + + + @@ -12267,6 +14117,9 @@ + + + @@ -13072,6 +14925,9 @@ + + + @@ -13080,6 +14936,9 @@ + + + @@ -13658,6 +15517,9 @@ + + + @@ -13777,6 +15639,9 @@ + + + @@ -13791,6 +15656,13 @@ + + + + + + + @@ -13985,7 +15857,7 @@ - + @@ -14007,6 +15879,9 @@ + + + @@ -14062,11 +15937,17 @@ + + + + + + @@ -14101,11 +15982,17 @@ + + + + + + @@ -14117,7 +16004,7 @@ - + @@ -14211,11 +16098,17 @@ + + + + + + @@ -15015,11 +16908,17 @@ + + + + + + @@ -15042,6 +16941,10 @@ + + + + @@ -15129,6 +17032,9 @@ + + + @@ -15158,6 +17064,9 @@ + + + @@ -15381,6 +17290,9 @@ + + + @@ -15393,6 +17305,9 @@ + + + @@ -15792,6 +17707,9 @@ + + + @@ -15830,6 +17748,9 @@ + + + @@ -16078,6 +17999,13 @@ + + + + + + + @@ -16087,12 +18015,22 @@ + + + + + + + + + + @@ -16103,6 +18041,9 @@ + + + @@ -16186,6 +18127,13 @@ + + + + + + + @@ -16263,6 +18211,9 @@ + + + @@ -17189,11 +19140,17 @@ + + + + + + @@ -17247,11 +19204,17 @@ + + + + + + @@ -17264,6 +19227,13 @@ + + + + + + + @@ -17273,6 +19243,13 @@ + + + + + + + @@ -17282,6 +19259,13 @@ + + + + + + + @@ -17292,6 +19276,9 @@ + + + @@ -17301,6 +19288,13 @@ + + + + + + + @@ -17310,6 +19304,13 @@ + + + + + + + @@ -17364,6 +19365,13 @@ + + + + + + + @@ -17372,6 +19380,12 @@ + + + + + + @@ -17388,6 +19402,13 @@ + + + + + + + @@ -17396,6 +19417,12 @@ + + + + + + @@ -17411,6 +19438,13 @@ + + + + + + + @@ -17426,6 +19460,12 @@ + + + + + + @@ -17442,6 +19482,12 @@ + + + + + + @@ -17457,6 +19503,12 @@ + + + + + + @@ -17466,6 +19518,13 @@ + + + + + + + @@ -17474,6 +19533,12 @@ + + + + + + @@ -17482,6 +19547,12 @@ + + + + + + @@ -17498,6 +19569,12 @@ + + + + + + @@ -17506,6 +19583,12 @@ + + + + + + @@ -17521,6 +19604,13 @@ + + + + + + + @@ -17537,6 +19627,12 @@ + + + + + + @@ -17588,6 +19684,13 @@ + + + + + + + @@ -17603,6 +19706,13 @@ + + + + + + + @@ -17618,6 +19728,12 @@ + + + + + + @@ -17633,6 +19749,13 @@ + + + + + + + @@ -17649,6 +19772,13 @@ + + + + + + + @@ -17664,6 +19794,13 @@ + + + + + + + @@ -17679,6 +19816,12 @@ + + + + + + @@ -17687,6 +19830,12 @@ + + + + + + @@ -17700,6 +19849,12 @@ + + + + + + @@ -17708,6 +19863,12 @@ + + + + + + @@ -17722,6 +19883,12 @@ + + + + + + @@ -17730,6 +19897,13 @@ + + + + + + + @@ -17746,6 +19920,13 @@ + + + + + + + @@ -17762,6 +19943,12 @@ + + + + + + @@ -17777,6 +19964,12 @@ + + + + + + @@ -17792,6 +19985,12 @@ + + + + + + @@ -17807,6 +20006,12 @@ + + + + + + @@ -17822,6 +20027,12 @@ + + + + + + @@ -17829,6 +20040,12 @@ + + + + + + @@ -17843,6 +20060,12 @@ + + + + + + @@ -17851,6 +20074,12 @@ + + + + + + @@ -17866,6 +20095,13 @@ + + + + + + + @@ -17881,6 +20117,12 @@ + + + + + + @@ -17889,6 +20131,12 @@ + + + + + + @@ -17904,6 +20152,12 @@ + + + + + + @@ -17913,6 +20167,12 @@ + + + + + + @@ -17922,6 +20182,13 @@ + + + + + + + @@ -17938,6 +20205,12 @@ + + + + + + @@ -17953,6 +20226,12 @@ + + + + + + @@ -17968,6 +20247,12 @@ + + + + + + @@ -17976,6 +20261,12 @@ + + + + + + @@ -17984,6 +20275,12 @@ + + + + + + @@ -18000,6 +20297,12 @@ + + + + + + @@ -18015,6 +20318,12 @@ + + + + + + @@ -18023,6 +20332,13 @@ + + + + + + + @@ -18038,6 +20354,12 @@ + + + + + + @@ -18055,6 +20377,10 @@ + + + + @@ -18105,6 +20431,13 @@ + + + + + + + @@ -18112,6 +20445,13 @@ + + + + + + + @@ -18126,6 +20466,12 @@ + + + + + + @@ -18141,6 +20487,13 @@ + + + + + + + @@ -18156,6 +20509,13 @@ + + + + + + + @@ -18164,6 +20524,13 @@ + + + + + + + @@ -18179,6 +20546,12 @@ + + + + + + @@ -18193,6 +20566,12 @@ + + + + + + @@ -18201,6 +20580,9 @@ + + + @@ -18215,11 +20597,17 @@ + + + + + + @@ -18235,16 +20623,25 @@ + + + + + + + + + @@ -18260,11 +20657,17 @@ + + + + + + @@ -18330,6 +20733,9 @@ + + + @@ -18581,6 +20987,9 @@ + + + @@ -18632,6 +21041,10 @@ + + + + @@ -18640,6 +21053,10 @@ + + + + @@ -18955,6 +21372,10 @@ + + + + @@ -18964,12 +21385,20 @@ + + + + + + + + @@ -19037,6 +21466,13 @@ + + + + + + + @@ -19053,6 +21489,13 @@ + + + + + + + @@ -19070,6 +21513,13 @@ + + + + + + + @@ -19086,6 +21536,13 @@ + + + + + + + @@ -19101,6 +21558,13 @@ + + + + + + + @@ -19118,6 +21582,13 @@ + + + + + + + @@ -19135,6 +21606,13 @@ + + + + + + + @@ -19143,6 +21621,13 @@ + + + + + + + @@ -19159,6 +21644,13 @@ + + + + + + + @@ -19167,6 +21659,13 @@ + + + + + + + @@ -19193,6 +21692,11 @@ + + + + + @@ -19200,6 +21704,11 @@ + + + + + @@ -19208,6 +21717,11 @@ + + + + + @@ -19216,6 +21730,11 @@ + + + + + @@ -19223,39 +21742,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -19263,6 +21811,11 @@ + + + + + @@ -19270,6 +21823,11 @@ + + + + + @@ -19277,6 +21835,11 @@ + + + + + @@ -19284,6 +21847,11 @@ + + + + + @@ -19292,6 +21860,11 @@ + + + + + @@ -19300,6 +21873,11 @@ + + + + + @@ -19308,6 +21886,11 @@ + + + + + @@ -19316,6 +21899,11 @@ + + + + + @@ -19323,6 +21911,11 @@ + + + + + @@ -19330,6 +21923,11 @@ + + + + + @@ -19337,6 +21935,11 @@ + + + + + @@ -19351,6 +21954,11 @@ + + + + + @@ -19358,12 +21966,22 @@ + + + + + + + + + + @@ -19379,12 +21997,20 @@ + + + + + + + + @@ -19407,6 +22033,11 @@ + + + + + @@ -19423,6 +22054,11 @@ + + + + + @@ -19430,6 +22066,11 @@ + + + + + @@ -19437,6 +22078,11 @@ + + + + + @@ -19444,6 +22090,11 @@ + + + + + @@ -19451,6 +22102,11 @@ + + + + + @@ -19461,6 +22117,11 @@ + + + + + @@ -19470,6 +22131,11 @@ + + + + + @@ -19480,6 +22146,11 @@ + + + + + @@ -19493,6 +22164,11 @@ + + + + + @@ -19506,6 +22182,16 @@ + + + + + + + + + + @@ -19519,6 +22205,16 @@ + + + + + + + + + + @@ -19527,6 +22223,16 @@ + + + + + + + + + + @@ -19535,6 +22241,11 @@ + + + + + @@ -19551,6 +22262,16 @@ + + + + + + + + + + @@ -19563,6 +22284,16 @@ + + + + + + + + + + @@ -19575,11 +22306,25 @@ + + + + + + + + + + + + + + @@ -19595,6 +22340,12 @@ + + + + + + @@ -19610,6 +22361,12 @@ + + + + + + @@ -19625,6 +22382,13 @@ + + + + + + + @@ -19633,6 +22397,12 @@ + + + + + + @@ -19648,6 +22418,12 @@ + + + + + + @@ -19662,6 +22438,13 @@ + + + + + + + @@ -19677,6 +22460,12 @@ + + + + + + @@ -19691,6 +22480,12 @@ + + + + + + @@ -19698,6 +22493,13 @@ + + + + + + + @@ -20731,17 +23533,28 @@ + + + + + + + + + + + @@ -20749,6 +23562,11 @@ + + + + + @@ -20759,6 +23577,11 @@ + + + + + @@ -21147,14 +23970,23 @@ + + + + + + + + + @@ -21166,6 +23998,9 @@ + + + @@ -21178,6 +24013,10 @@ + + + + @@ -21187,6 +24026,10 @@ + + + + @@ -21553,6 +24396,11 @@ + + + + + @@ -21697,6 +24545,9 @@ + + + @@ -21962,18 +24813,27 @@ + + + + + + + + + @@ -21996,6 +24856,9 @@ + + + @@ -22186,6 +25049,10 @@ + + + + @@ -22196,6 +25063,10 @@ + + + + @@ -22205,6 +25076,10 @@ + + + + @@ -22215,6 +25090,10 @@ + + + + @@ -22332,6 +25211,9 @@ + + + @@ -22339,6 +25221,10 @@ + + + + @@ -22353,6 +25239,9 @@ + + + @@ -22361,6 +25250,10 @@ + + + + @@ -22368,6 +25261,10 @@ + + + + @@ -22383,6 +25280,9 @@ + + + @@ -22398,6 +25298,10 @@ + + + + @@ -22413,6 +25317,9 @@ + + + @@ -22428,6 +25335,9 @@ + + + @@ -22441,6 +25351,9 @@ + + + @@ -22454,11 +25367,17 @@ + + + + + + @@ -22467,6 +25386,10 @@ + + + + @@ -22474,6 +25397,10 @@ + + + + @@ -22482,6 +25409,10 @@ + + + + @@ -22489,6 +25420,10 @@ + + + + @@ -22513,6 +25448,10 @@ + + + + @@ -22525,6 +25464,10 @@ + + + + @@ -22539,6 +25482,10 @@ + + + + @@ -22555,17 +25502,26 @@ + + + + + + + + + @@ -22617,6 +25573,9 @@ + + + @@ -22625,6 +25584,9 @@ + + + @@ -22772,6 +25734,9 @@ + + + @@ -22796,6 +25761,9 @@ + + + @@ -22834,6 +25802,9 @@ + + + @@ -22842,11 +25813,17 @@ + + + + + + @@ -22855,6 +25832,9 @@ + + + @@ -22863,6 +25843,9 @@ + + + @@ -22942,11 +25925,11 @@ - + - + @@ -22994,7 +25977,7 @@ - + @@ -23024,7 +26007,7 @@ - + @@ -23035,10 +26018,14 @@ + + + + - + @@ -23062,7 +26049,7 @@ - + @@ -23088,7 +26075,7 @@ - + @@ -23575,6 +26562,11 @@ + + + + + @@ -23585,6 +26577,11 @@ + + + + + @@ -23593,6 +26590,9 @@ + + + @@ -23710,7 +26710,7 @@ - + @@ -23730,10 +26730,9 @@ - + - + @@ -23742,15 +26741,14 @@ - - + + - + @@ -23819,11 +26817,11 @@ - + - + @@ -23831,7 +26829,7 @@ - + @@ -23850,7 +26848,7 @@ - + @@ -23870,7 +26868,7 @@ - + @@ -23878,11 +26876,11 @@ - + - + @@ -23899,8 +26897,7 @@ - + @@ -23917,6 +26914,11 @@ + + + + + @@ -23925,11 +26927,17 @@ + + + + + + @@ -23938,6 +26946,9 @@ + + + @@ -23946,6 +26957,9 @@ + + + @@ -24038,6 +27052,9 @@ + + + @@ -24160,6 +27177,11 @@ + + + + + @@ -24174,6 +27196,10 @@ + + + + @@ -24181,12 +27207,18 @@ + + + + + + @@ -24202,6 +27234,12 @@ + + + + + + @@ -24210,6 +27248,13 @@ + + + + + + + @@ -24225,6 +27270,12 @@ + + + + + + @@ -24233,6 +27284,13 @@ + + + + + + + @@ -24248,6 +27306,13 @@ + + + + + + + @@ -24322,6 +27387,12 @@ + + + + + + @@ -24337,7 +27408,7 @@ - + @@ -24345,10 +27416,13 @@ + + + - + @@ -24377,7 +27451,7 @@ - + @@ -24442,6 +27516,11 @@ + + + + + @@ -24449,6 +27528,11 @@ + + + + + @@ -24504,7 +27588,7 @@ - + @@ -24515,10 +27599,15 @@ + + + + + - + @@ -24543,6 +27632,9 @@ + + + @@ -24572,6 +27664,9 @@ + + + @@ -25143,7 +28238,7 @@ - + @@ -25151,9 +28246,8 @@ - - + + @@ -25162,9 +28256,9 @@ - - - + + + @@ -25241,6 +28335,9 @@ + + + @@ -25351,7 +28448,7 @@ - + @@ -25417,11 +28514,17 @@ + + + + + + @@ -25741,6 +28844,11 @@ + + + + + @@ -25780,6 +28888,13 @@ + + + + + + + @@ -25859,6 +28974,10 @@ + + + + @@ -25914,6 +29033,11 @@ + + + + + @@ -25921,6 +29045,11 @@ + + + + + @@ -25937,6 +29066,11 @@ + + + + + @@ -25952,6 +29086,11 @@ + + + + + @@ -25964,6 +29103,11 @@ + + + + + @@ -25978,6 +29122,12 @@ + + + + + + @@ -25992,6 +29142,12 @@ + + + + + + @@ -26005,6 +29161,9 @@ + + + @@ -26016,16 +29175,22 @@ + + + + + + - + @@ -26712,7 +29877,7 @@ - + @@ -27216,15 +30381,21 @@ + + + + + + - - + + @@ -27359,6 +30530,10 @@ + + + + @@ -27379,6 +30554,16 @@ + + + + + + + + + + @@ -27487,6 +30672,10 @@ + + + + @@ -27497,6 +30686,10 @@ + + + + @@ -27512,6 +30705,10 @@ + + + + @@ -27552,6 +30749,12 @@ + + + + + + @@ -27647,6 +30850,12 @@ + + + + + + @@ -27658,6 +30867,16 @@ + + + + + + + + + + @@ -27672,6 +30891,13 @@ + + + + + + + @@ -27688,6 +30914,9 @@ + + + @@ -27706,6 +30935,16 @@ + + + + + + + + + + @@ -28678,6 +31917,12 @@ + + + + + + @@ -28688,6 +31933,10 @@ + + + + @@ -28695,6 +31944,12 @@ + + + + + + @@ -28716,6 +31971,11 @@ + + + + + @@ -28732,6 +31992,11 @@ + + + + + @@ -28739,6 +32004,10 @@ + + + + @@ -28746,6 +32015,11 @@ + + + + + @@ -28755,6 +32029,11 @@ + + + + + @@ -28771,6 +32050,11 @@ + + + + + @@ -28778,6 +32062,11 @@ + + + + + @@ -28795,6 +32084,11 @@ + + + + + @@ -28809,6 +32103,12 @@ + + + + + + @@ -28972,6 +32272,12 @@ + + + + + + @@ -28990,6 +32296,9 @@ + + + @@ -28998,6 +32307,12 @@ + + + + + + @@ -29043,7 +32358,7 @@ - + @@ -29059,11 +32374,11 @@ - + - + @@ -29088,6 +32403,11 @@ + + + + + @@ -29095,6 +32415,10 @@ + + + + @@ -29110,6 +32434,9 @@ + + + @@ -29124,6 +32451,12 @@ + + + + + + @@ -29330,6 +32663,13 @@ + + + + + + + @@ -29340,6 +32680,13 @@ + + + + + + + @@ -29348,6 +32695,9 @@ + + + @@ -29356,6 +32706,9 @@ + + + @@ -29370,6 +32723,12 @@ + + + + + + @@ -29379,6 +32738,13 @@ + + + + + + + @@ -29388,6 +32754,13 @@ + + + + + + + @@ -29434,6 +32807,9 @@ + + + @@ -29566,6 +32942,13 @@ + + + + + + + @@ -29575,6 +32958,11 @@ + + + + + @@ -30207,6 +33595,11 @@ + + + + + @@ -30216,6 +33609,13 @@ + + + + + + + @@ -30677,6 +34077,16 @@ + + + + + + + + + + @@ -30693,6 +34103,9 @@ + + + @@ -30701,6 +34114,9 @@ + + + @@ -30723,6 +34139,11 @@ + + + + + @@ -30731,6 +34152,11 @@ + + + + + @@ -30739,6 +34165,11 @@ + + + + + @@ -30749,6 +34180,11 @@ + + + + + @@ -30758,6 +34194,10 @@ + + + + @@ -30765,6 +34205,11 @@ + + + + + @@ -30781,6 +34226,11 @@ + + + + + @@ -30788,6 +34238,11 @@ + + + + + @@ -30799,6 +34254,11 @@ + + + + + @@ -30808,6 +34268,10 @@ + + + + @@ -30818,6 +34282,10 @@ + + + + @@ -30826,6 +34294,16 @@ + + + + + + + + + + @@ -30835,6 +34313,11 @@ + + + + + @@ -30844,6 +34327,16 @@ + + + + + + + + + + @@ -30853,10 +34346,20 @@ + + + + + + + + + + - + @@ -30876,7 +34379,7 @@ - + @@ -30904,7 +34407,7 @@ - + @@ -30929,7 +34432,7 @@ - + @@ -30947,6 +34450,13 @@ + + + + + + + @@ -30956,6 +34466,13 @@ + + + + + + + @@ -30966,6 +34483,13 @@ + + + + + + + @@ -31029,6 +34553,12 @@ + + + + + + @@ -31046,6 +34576,12 @@ + + + + + + @@ -31062,6 +34598,12 @@ + + + + + + @@ -31072,6 +34614,13 @@ + + + + + + + @@ -31089,6 +34638,13 @@ + + + + + + + @@ -31140,6 +34696,12 @@ + + + + + + @@ -31354,6 +34916,10 @@ + + + + @@ -31516,6 +35082,12 @@ + + + + + + @@ -31526,6 +35098,12 @@ + + + + + + @@ -31533,6 +35111,16 @@ + + + + + + + + + + @@ -32384,6 +35972,9 @@ + + + @@ -32393,6 +35984,12 @@ + + + + + + @@ -32408,6 +36005,12 @@ + + + + + + @@ -32436,7 +36039,7 @@ - + @@ -32447,6 +36050,10 @@ + + + + @@ -32457,7 +36064,7 @@ - + @@ -32465,21 +36072,30 @@ + + + + + + + + + + - - + + - + @@ -32492,11 +36108,14 @@ + + + - - + + @@ -32525,6 +36144,9 @@ + + + @@ -32540,11 +36162,11 @@ - + - + @@ -32557,6 +36179,12 @@ + + + + + + @@ -34861,8 +38489,7 @@ - + @@ -34883,6 +38510,9 @@ + + + @@ -35159,7 +38789,7 @@ - + @@ -35307,9 +38937,9 @@ - - - + + + @@ -35600,6 +39230,9 @@ + + + @@ -35629,6 +39262,9 @@ + + + @@ -35794,12 +39430,23 @@ + + + + + + + + + + + @@ -35815,12 +39462,18 @@ + + + + + + @@ -35844,6 +39497,11 @@ + + + + + @@ -35860,6 +39518,9 @@ + + + @@ -35872,6 +39533,10 @@ + + + + @@ -35888,6 +39553,9 @@ + + + @@ -35904,6 +39572,9 @@ + + + @@ -35911,6 +39582,9 @@ + + + @@ -35937,6 +39611,11 @@ + + + + + @@ -36157,6 +39836,9 @@ + + + @@ -36219,6 +39901,13 @@ + + + + + + + @@ -36234,6 +39923,13 @@ + + + + + + + @@ -36250,6 +39946,13 @@ + + + + + + + @@ -36258,6 +39961,13 @@ + + + + + + + @@ -36273,6 +39983,13 @@ + + + + + + + @@ -36289,6 +40006,13 @@ + + + + + + + @@ -36297,6 +40021,13 @@ + + + + + + + @@ -36312,6 +40043,13 @@ + + + + + + + @@ -36328,6 +40066,13 @@ + + + + + + + @@ -36336,6 +40081,13 @@ + + + + + + + @@ -36351,6 +40103,13 @@ + + + + + + + @@ -36367,6 +40126,13 @@ + + + + + + + @@ -36375,6 +40141,13 @@ + + + + + + + @@ -36390,6 +40163,13 @@ + + + + + + + @@ -36406,6 +40186,13 @@ + + + + + + + @@ -36414,6 +40201,13 @@ + + + + + + + @@ -36429,6 +40223,13 @@ + + + + + + + @@ -36445,6 +40246,13 @@ + + + + + + + @@ -36455,6 +40263,13 @@ + + + + + + + @@ -36472,6 +40287,13 @@ + + + + + + + @@ -36490,6 +40312,13 @@ + + + + + + + @@ -36500,6 +40329,13 @@ + + + + + + + @@ -36517,6 +40353,13 @@ + + + + + + + @@ -36535,6 +40378,13 @@ + + + + + + + @@ -36546,6 +40396,11 @@ + + + + + @@ -36562,6 +40417,11 @@ + + + + + @@ -36578,6 +40438,11 @@ + + + + + @@ -36707,6 +40572,9 @@ + + + @@ -36876,6 +40744,10 @@ + + + + @@ -36884,6 +40756,9 @@ + + + @@ -36915,19 +40790,18 @@ - + - + - + @@ -36938,7 +40812,7 @@ - + @@ -36961,6 +40835,9 @@ + + + @@ -37247,6 +41124,9 @@ + + + @@ -37772,7 +41652,7 @@ - + @@ -37929,11 +41809,18 @@ - - - - - + + + + + + + + + + + + @@ -37949,6 +41836,11 @@ + + + + + @@ -37957,6 +41849,11 @@ + + + + + @@ -37970,6 +41867,10 @@ + + + + @@ -37984,12 +41885,19 @@ + + + + + + + @@ -37999,11 +41907,20 @@ + + + + + + + + + @@ -38011,6 +41928,12 @@ + + + + + + @@ -38025,6 +41948,12 @@ + + + + + + @@ -38033,6 +41962,12 @@ + + + + + + @@ -38040,12 +41975,21 @@ + + + + + + + + + @@ -38054,6 +41998,12 @@ + + + + + + @@ -38062,6 +42012,12 @@ + + + + + + @@ -38072,6 +42028,14 @@ + + + + + + + + @@ -38082,6 +42046,14 @@ + + + + + + + + @@ -38092,6 +42064,14 @@ + + + + + + + + @@ -38110,6 +42090,11 @@ + + + + + @@ -38235,6 +42220,12 @@ + + + + + + @@ -38264,6 +42255,9 @@ + + + @@ -38278,6 +42272,9 @@ + + + @@ -38341,6 +42338,16 @@ + + + + + + + + + + @@ -38349,6 +42356,16 @@ + + + + + + + + + + @@ -38445,11 +42462,18 @@ + + + + + + + @@ -38464,6 +42488,9 @@ + + + @@ -38531,12 +42558,14 @@ - + - + @@ -38550,6 +42579,9 @@ + + + @@ -38571,6 +42603,9 @@ + + + @@ -38652,6 +42687,9 @@ + + + @@ -38679,6 +42717,11 @@ + + + + + @@ -38823,6 +42866,9 @@ + + + @@ -39030,7 +43076,7 @@ - + @@ -39075,7 +43121,7 @@ - + @@ -39228,6 +43274,10 @@ + + + + @@ -39370,9 +43420,9 @@ - - + + @@ -39395,6 +43445,9 @@ + + + @@ -39471,11 +43524,11 @@ - + - + @@ -39505,6 +43558,11 @@ + + + + + @@ -39782,6 +43840,9 @@ + + + @@ -39790,6 +43851,9 @@ + + + @@ -39797,6 +43861,10 @@ + + + + @@ -39876,7 +43944,7 @@ - + @@ -39889,6 +43957,9 @@ + + + @@ -39897,6 +43968,10 @@ + + + + @@ -39907,6 +43982,10 @@ + + + + @@ -39914,6 +43993,9 @@ + + + @@ -40030,9 +44112,8 @@ - - + + @@ -40053,6 +44134,11 @@ + + + + + @@ -40063,6 +44149,11 @@ + + + + + @@ -40073,6 +44164,11 @@ + + + + + @@ -40082,6 +44178,11 @@ + + + + + @@ -40097,6 +44198,11 @@ + + + + + @@ -40112,6 +44218,9 @@ + + + @@ -40194,7 +44303,8 @@ - + @@ -40226,6 +44336,9 @@ + + + @@ -40234,6 +44347,12 @@ + + + + + + @@ -40242,6 +44361,12 @@ + + + + + + @@ -40262,10 +44387,20 @@ + + + + + + + + + + - + @@ -40283,16 +44418,19 @@ - + - + + + + @@ -40310,6 +44448,9 @@ + + + @@ -40324,6 +44465,10 @@ + + + + @@ -40484,6 +44629,11 @@ + + + + + @@ -40492,6 +44642,11 @@ + + + + + @@ -40500,6 +44655,11 @@ + + + + + @@ -40508,6 +44668,11 @@ + + + + + @@ -40516,6 +44681,11 @@ + + + + + @@ -40524,6 +44694,11 @@ + + + + + @@ -40532,6 +44707,11 @@ + + + + + @@ -40540,6 +44720,11 @@ + + + + + @@ -40548,6 +44733,11 @@ + + + + + @@ -40556,6 +44746,11 @@ + + + + + @@ -40564,6 +44759,11 @@ + + + + + @@ -40572,6 +44772,11 @@ + + + + + @@ -40580,6 +44785,11 @@ + + + + + @@ -40588,6 +44798,11 @@ + + + + + @@ -40596,6 +44811,11 @@ + + + + + @@ -40604,6 +44824,11 @@ + + + + + @@ -40612,6 +44837,11 @@ + + + + + @@ -40620,6 +44850,11 @@ + + + + + @@ -40628,6 +44863,11 @@ + + + + + @@ -40636,6 +44876,11 @@ + + + + + @@ -40691,11 +44936,17 @@ + + + + + + @@ -40913,11 +45164,11 @@ - + - + @@ -40937,6 +45188,9 @@ + + + @@ -40952,18 +45206,24 @@ + + + + + + - + - - + + @@ -41027,6 +45287,9 @@ + + + @@ -41053,6 +45316,9 @@ + + + @@ -41068,6 +45334,11 @@ + + + + + @@ -41075,11 +45346,18 @@ + + + + + + + @@ -41095,6 +45373,10 @@ + + + + @@ -41104,6 +45386,12 @@ + + + + + + @@ -41112,6 +45400,12 @@ + + + + + + @@ -41130,6 +45424,12 @@ + + + + + + @@ -41141,6 +45441,12 @@ + + + + + + @@ -41150,6 +45456,16 @@ + + + + + + + + + + @@ -41160,18 +45476,36 @@ + + + + + + + + + + + + + + + + + + @@ -41195,11 +45529,19 @@ + + + + + + + + @@ -41357,6 +45699,13 @@ + + + + + + + @@ -41374,6 +45723,13 @@ + + + + + + + @@ -41420,14 +45776,24 @@ - + + + + - + + + + @@ -41964,6 +46330,11 @@ + + + + + @@ -41980,6 +46351,11 @@ + + + + + @@ -41997,6 +46373,10 @@ + + + + @@ -42006,6 +46386,10 @@ + + + + @@ -42075,7 +46459,7 @@ - + @@ -42084,11 +46468,11 @@ - + - + @@ -42107,12 +46491,12 @@ - - + + - + @@ -42132,23 +46516,23 @@ - - + + - - + + - - + + - - + + @@ -42157,7 +46541,7 @@ - + @@ -42166,24 +46550,24 @@ - - + + - + - + - + - + @@ -42192,6 +46576,9 @@ + + + @@ -42202,6 +46589,11 @@ + + + + + @@ -42215,6 +46607,11 @@ + + + + + @@ -42227,12 +46624,22 @@ + + + + + + + + + + @@ -42243,12 +46650,22 @@ + + + + + + + + + + @@ -42262,12 +46679,22 @@ + + + + + + + + + + @@ -42280,6 +46707,11 @@ + + + + + @@ -42312,18 +46744,33 @@ + + + + + + + + + + + + + + + @@ -42957,7 +47404,7 @@ - + @@ -42970,7 +47417,7 @@ - + @@ -42982,7 +47429,7 @@ - + @@ -43012,6 +47459,9 @@ + + + @@ -43025,6 +47475,9 @@ + + + @@ -43036,6 +47489,9 @@ + + + @@ -43043,6 +47499,9 @@ + + + @@ -43050,12 +47509,18 @@ + + + + + + @@ -43063,6 +47528,9 @@ + + + @@ -43291,8 +47759,7 @@ - + @@ -43703,11 +48170,14 @@ + + + - - + + @@ -44015,11 +48485,17 @@ + + + + + + @@ -44217,7 +48693,8 @@ - + @@ -44298,6 +48775,10 @@ + + + + @@ -44315,6 +48796,11 @@ + + + + + @@ -44329,6 +48815,16 @@ + + + + + + + + + + @@ -44430,13 +48926,20 @@ + + + + + + + - + @@ -44502,6 +49005,13 @@ + + + + + + + @@ -44511,6 +49021,13 @@ + + + + + + + @@ -44525,6 +49042,16 @@ + + + + + + + + + + @@ -44577,11 +49104,18 @@ + + + + + + + @@ -45001,6 +49535,10 @@ + + + + @@ -45008,6 +49546,10 @@ + + + + @@ -45015,6 +49557,10 @@ + + + + @@ -45022,6 +49568,10 @@ + + + + @@ -45029,6 +49579,10 @@ + + + + @@ -45036,6 +49590,10 @@ + + + + @@ -45043,6 +49601,10 @@ + + + + @@ -45050,6 +49612,10 @@ + + + + @@ -45057,6 +49623,10 @@ + + + + @@ -45064,6 +49634,10 @@ + + + + @@ -45071,6 +49645,10 @@ + + + + @@ -45078,6 +49656,10 @@ + + + + @@ -45085,6 +49667,10 @@ + + + + @@ -45092,6 +49678,10 @@ + + + + @@ -45099,6 +49689,10 @@ + + + + @@ -45106,6 +49700,10 @@ + + + + @@ -45113,6 +49711,10 @@ + + + + @@ -45120,6 +49722,10 @@ + + + + @@ -45127,6 +49733,10 @@ + + + + @@ -45134,6 +49744,10 @@ + + + + @@ -45141,6 +49755,10 @@ + + + + @@ -45148,6 +49766,10 @@ + + + + @@ -45155,6 +49777,10 @@ + + + + @@ -45162,6 +49788,10 @@ + + + + @@ -45169,6 +49799,10 @@ + + + + @@ -45176,6 +49810,10 @@ + + + + @@ -45183,6 +49821,10 @@ + + + + @@ -45190,6 +49832,10 @@ + + + + @@ -45197,6 +49843,10 @@ + + + + @@ -45204,6 +49854,10 @@ + + + + @@ -45211,6 +49865,10 @@ + + + + @@ -45218,6 +49876,10 @@ + + + + @@ -45225,6 +49887,10 @@ + + + + @@ -45232,6 +49898,10 @@ + + + + @@ -45239,6 +49909,10 @@ + + + + @@ -45246,6 +49920,10 @@ + + + + @@ -45253,6 +49931,10 @@ + + + + @@ -45260,6 +49942,10 @@ + + + + @@ -45267,6 +49953,10 @@ + + + + @@ -45274,6 +49964,10 @@ + + + + @@ -45281,6 +49975,10 @@ + + + + @@ -45288,6 +49986,10 @@ + + + + @@ -45295,6 +49997,10 @@ + + + + @@ -45302,6 +50008,10 @@ + + + + @@ -45309,6 +50019,10 @@ + + + + @@ -45316,6 +50030,10 @@ + + + + @@ -45323,6 +50041,10 @@ + + + + @@ -45330,6 +50052,10 @@ + + + + @@ -45337,6 +50063,10 @@ + + + + @@ -45344,6 +50074,10 @@ + + + + @@ -45351,6 +50085,10 @@ + + + + @@ -45358,6 +50096,10 @@ + + + + @@ -45365,6 +50107,10 @@ + + + + @@ -45372,6 +50118,10 @@ + + + + @@ -45379,6 +50129,10 @@ + + + + @@ -45386,6 +50140,10 @@ + + + + @@ -45393,6 +50151,10 @@ + + + + @@ -45400,6 +50162,10 @@ + + + + @@ -45407,6 +50173,10 @@ + + + + @@ -45414,24 +50184,37 @@ + + + + + + + + + + + + + @@ -45450,6 +50233,9 @@ + + + @@ -45457,6 +50243,10 @@ + + + + @@ -45464,6 +50254,10 @@ + + + + @@ -45471,6 +50265,10 @@ + + + + @@ -45478,6 +50276,10 @@ + + + + @@ -45485,6 +50287,10 @@ + + + + @@ -45492,6 +50298,10 @@ + + + + @@ -45499,6 +50309,10 @@ + + + + @@ -45506,6 +50320,10 @@ + + + + @@ -45513,6 +50331,10 @@ + + + + @@ -45520,6 +50342,10 @@ + + + + @@ -45527,6 +50353,10 @@ + + + + @@ -45534,6 +50364,10 @@ + + + + @@ -45541,6 +50375,10 @@ + + + + @@ -45548,6 +50386,10 @@ + + + + @@ -45555,6 +50397,10 @@ + + + + @@ -45562,6 +50408,10 @@ + + + + @@ -45569,6 +50419,10 @@ + + + + @@ -45576,6 +50430,10 @@ + + + + @@ -45655,6 +50513,10 @@ + + + + @@ -45662,6 +50524,10 @@ + + + + @@ -45669,6 +50535,10 @@ + + + + @@ -45676,6 +50546,10 @@ + + + + @@ -45683,6 +50557,10 @@ + + + + @@ -45690,6 +50568,10 @@ + + + + @@ -45697,6 +50579,10 @@ + + + + @@ -45704,6 +50590,10 @@ + + + + @@ -45711,6 +50601,10 @@ + + + + @@ -45718,6 +50612,10 @@ + + + + @@ -45725,6 +50623,10 @@ + + + + @@ -45732,6 +50634,10 @@ + + + + @@ -45739,6 +50645,10 @@ + + + + @@ -45746,6 +50656,10 @@ + + + + @@ -45753,6 +50667,10 @@ + + + + @@ -45760,6 +50678,10 @@ + + + + @@ -45767,6 +50689,10 @@ + + + + @@ -45774,6 +50700,10 @@ + + + + @@ -45853,6 +50783,10 @@ + + + + @@ -45860,6 +50794,10 @@ + + + + @@ -45867,6 +50805,10 @@ + + + + @@ -45874,6 +50816,10 @@ + + + + @@ -45881,6 +50827,10 @@ + + + + @@ -45888,6 +50838,10 @@ + + + + @@ -45895,6 +50849,10 @@ + + + + @@ -45902,6 +50860,10 @@ + + + + @@ -45909,6 +50871,10 @@ + + + + @@ -45916,6 +50882,10 @@ + + + + @@ -45923,6 +50893,10 @@ + + + + @@ -45930,6 +50904,10 @@ + + + + @@ -45937,6 +50915,10 @@ + + + + @@ -45944,6 +50926,10 @@ + + + + @@ -45951,6 +50937,10 @@ + + + + @@ -45958,6 +50948,10 @@ + + + + @@ -45965,6 +50959,10 @@ + + + + @@ -45972,6 +50970,10 @@ + + + + @@ -46360,13 +51362,13 @@ - - + + - - + + @@ -46491,18 +51493,30 @@ + + + + + + + + + + + + @@ -46705,6 +51719,13 @@ + + + + + + + @@ -46719,6 +51740,13 @@ + + + + + + + @@ -46732,6 +51760,13 @@ + + + + + + + @@ -46746,6 +51781,13 @@ + + + + + + + @@ -46759,6 +51801,13 @@ + + + + + + + @@ -46773,6 +51822,13 @@ + + + + + + + @@ -46789,6 +51845,13 @@ + + + + + + + @@ -46805,6 +51868,13 @@ + + + + + + + @@ -46818,6 +51888,16 @@ + + + + + + + + + + @@ -46831,6 +51911,16 @@ + + + + + + + + + + @@ -46993,6 +52083,9 @@ + + + @@ -47001,6 +52094,10 @@ + + + + @@ -47014,6 +52111,10 @@ + + + + @@ -47143,6 +52244,10 @@ + + + + @@ -47413,6 +52518,11 @@ + + + + + @@ -47429,6 +52539,11 @@ + + + + + @@ -47437,6 +52552,11 @@ + + + + + @@ -47456,6 +52576,11 @@ + + + + + @@ -47473,12 +52598,22 @@ + + + + + + + + + + @@ -48002,10 +53137,24 @@ - - + + + + + + + + + + + + + + + + @@ -48020,6 +53169,9 @@ + + + @@ -48031,8 +53183,17 @@ + + + + + + + + + + - @@ -48318,6 +53479,9 @@ + + + @@ -48936,6 +54100,11 @@ + + + + + @@ -48954,6 +54123,11 @@ + + + + + @@ -48969,6 +54143,16 @@ + + + + + + + + + + @@ -48984,6 +54168,16 @@ + + + + + + + + + + @@ -49003,6 +54197,13 @@ + + + + + + + @@ -49019,6 +54220,11 @@ + + + + + @@ -49030,6 +54236,11 @@ + + + + + @@ -49047,6 +54258,11 @@ + + + + + @@ -49064,6 +54280,11 @@ + + + + + @@ -49081,6 +54302,13 @@ + + + + + + + @@ -49098,6 +54326,13 @@ + + + + + + + @@ -49115,6 +54350,13 @@ + + + + + + + @@ -49506,6 +54748,16 @@ + + + + + + + + + + @@ -49523,6 +54775,16 @@ + + + + + + + + + + @@ -49539,6 +54801,12 @@ + + + + + + @@ -49554,6 +54822,12 @@ + + + + + + @@ -49569,6 +54843,12 @@ + + + + + + @@ -49584,6 +54864,12 @@ + + + + + + @@ -49962,6 +55248,10 @@ + + + + @@ -50173,6 +55463,13 @@ + + + + + + + @@ -50188,6 +55485,11 @@ + + + + + @@ -50205,6 +55507,13 @@ + + + + + + + @@ -50222,6 +55531,11 @@ + + + + + @@ -50238,6 +55552,13 @@ + + + + + + + @@ -50254,6 +55575,13 @@ + + + + + + + @@ -50269,6 +55597,11 @@ + + + + + @@ -50278,6 +55611,11 @@ + + + + + @@ -50293,6 +55631,16 @@ + + + + + + + + + + @@ -50308,6 +55656,11 @@ + + + + + @@ -50323,14 +55676,29 @@ + + + + + + + + + + + + + + + @@ -50350,6 +55718,11 @@ + + + + + @@ -50366,6 +55739,11 @@ + + + + + @@ -51175,6 +56553,9 @@ + + + @@ -51237,6 +56618,9 @@ + + + @@ -51245,6 +56629,9 @@ + + + @@ -51537,9 +56924,15 @@ + + + + + + @@ -51551,6 +56944,9 @@ + + + @@ -51569,6 +56965,10 @@ + + + + @@ -51694,6 +57094,10 @@ + + + + @@ -51708,8 +57112,7 @@ - + @@ -51755,6 +57158,11 @@ + + + + + @@ -51768,6 +57176,11 @@ + + + + + @@ -51775,6 +57188,11 @@ + + + + + @@ -51788,6 +57206,11 @@ + + + + + @@ -51887,6 +57310,13 @@ + + + + + + + @@ -51896,6 +57326,11 @@ + + + + + @@ -51911,6 +57346,13 @@ + + + + + + + @@ -51926,6 +57368,13 @@ + + + + + + + @@ -51944,6 +57393,11 @@ + + + + + @@ -51959,6 +57413,13 @@ + + + + + + + @@ -51974,6 +57435,16 @@ + + + + + + + + + + @@ -51989,9 +57460,24 @@ + + + + + + + + + + + + + + + @@ -52004,6 +57490,11 @@ + + + + + @@ -52011,6 +57502,11 @@ + + + + + @@ -52533,6 +58029,9 @@ + + + @@ -52562,6 +58061,9 @@ + + + @@ -52675,6 +58177,9 @@ + + + @@ -52843,6 +58348,9 @@ + + + @@ -53082,11 +58590,17 @@ + + + + + + @@ -53107,6 +58621,9 @@ + + + @@ -53472,6 +58989,10 @@ + + + + @@ -53479,6 +59000,10 @@ + + + + @@ -53552,6 +59077,11 @@ + + + + + @@ -53567,6 +59097,11 @@ + + + + + @@ -53581,6 +59116,11 @@ + + + + + @@ -53597,6 +59137,13 @@ + + + + + + + @@ -53615,6 +59162,13 @@ + + + + + + + @@ -53627,6 +59181,11 @@ + + + + + @@ -53642,6 +59201,11 @@ + + + + + @@ -53739,6 +59303,13 @@ + + + + + + + @@ -53754,6 +59325,10 @@ + + + + @@ -53766,6 +59341,11 @@ + + + + + @@ -53785,6 +59365,10 @@ + + + + @@ -53802,6 +59386,9 @@ + + + @@ -53809,6 +59396,10 @@ + + + + @@ -54005,6 +59596,9 @@ + + + @@ -54036,8 +59630,8 @@ - - + + @@ -54386,9 +59980,8 @@ - - + + @@ -54504,6 +60097,10 @@ + + + + @@ -54515,21 +60112,33 @@ + + + + + + + + + + + + @@ -56013,6 +61622,9 @@ + + + @@ -56138,6 +61750,13 @@ + + + + + + + @@ -56149,6 +61768,11 @@ + + + + + @@ -56156,6 +61780,11 @@ + + + + + @@ -56165,6 +61794,11 @@ + + + + + @@ -56173,12 +61807,19 @@ + + + + + + + @@ -56215,6 +61856,11 @@ + + + + + @@ -56224,6 +61870,9 @@ + + + @@ -56248,10 +61897,18 @@ + + + + + + + + @@ -56303,6 +61960,9 @@ + + + @@ -57351,7 +63011,7 @@ - + @@ -57799,7 +63459,7 @@ - + @@ -57834,15 +63494,15 @@ - + - + - + @@ -57850,7 +63510,7 @@ - + @@ -58018,6 +63678,9 @@ + + + @@ -58050,8 +63713,8 @@ - - + + @@ -58271,15 +63934,15 @@ - + - + - + @@ -58304,6 +63967,9 @@ + + + @@ -58325,6 +63991,13 @@ + + + + + + + @@ -58343,6 +64016,13 @@ + + + + + + + @@ -58363,6 +64043,13 @@ + + + + + + + @@ -58381,6 +64068,13 @@ + + + + + + + @@ -58401,6 +64095,13 @@ + + + + + + + @@ -58419,6 +64120,13 @@ + + + + + + + @@ -58440,6 +64148,13 @@ + + + + + + + @@ -58461,6 +64176,13 @@ + + + + + + + @@ -58477,6 +64199,16 @@ + + + + + + + + + + @@ -58495,6 +64227,16 @@ + + + + + + + + + + @@ -58502,6 +64244,11 @@ + + + + + @@ -58509,6 +64256,11 @@ + + + + + @@ -58525,6 +64277,11 @@ + + + + + @@ -58541,6 +64298,11 @@ + + + + + @@ -58556,6 +64318,11 @@ + + + + + @@ -58569,6 +64336,11 @@ + + + + + @@ -58579,6 +64351,11 @@ + + + + + @@ -58596,6 +64373,11 @@ + + + + + @@ -58735,63 +64517,63 @@ - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + @@ -58811,6 +64593,13 @@ + + + + + + + @@ -58826,6 +64615,16 @@ + + + + + + + + + + @@ -58841,6 +64640,16 @@ + + + + + + + + + + @@ -58859,6 +64668,11 @@ + + + + + @@ -58876,6 +64690,11 @@ + + + + + @@ -58893,6 +64712,13 @@ + + + + + + + @@ -58910,6 +64736,11 @@ + + + + + @@ -58928,6 +64759,11 @@ + + + + + @@ -58937,21 +64773,25 @@ + + + + - - + + - - + + - - + + @@ -59233,6 +65073,13 @@ + + + + + + + @@ -59249,6 +65096,13 @@ + + + + + + + @@ -59572,12 +65426,14 @@ - + - + @@ -60062,6 +65918,13 @@ + + + + + + + @@ -60078,12 +65941,24 @@ + + + + + + + + + + + + @@ -60091,6 +65966,11 @@ + + + + + @@ -60110,6 +65990,13 @@ + + + + + + + @@ -60120,6 +66007,11 @@ + + + + + @@ -60130,6 +66022,11 @@ + + + + + @@ -60144,6 +66041,16 @@ + + + + + + + + + + @@ -60158,6 +66065,16 @@ + + + + + + + + + + @@ -60165,18 +66082,31 @@ + + + + + + + + + + + + + @@ -60185,11 +66115,11 @@ - + - + @@ -60213,7 +66143,7 @@ - + @@ -60221,7 +66151,7 @@ - + @@ -60244,7 +66174,7 @@ - + @@ -60311,7 +66241,7 @@ - + @@ -60342,19 +66272,27 @@ - + + + + + + + + + @@ -60711,13 +66649,13 @@ - - + + - - + + @@ -60726,8 +66664,8 @@ - - + + @@ -60736,8 +66674,8 @@ - - + + @@ -60756,6 +66694,13 @@ + + + + + + + @@ -61421,6 +67366,11 @@ + + + + + @@ -61438,6 +67388,13 @@ + + + + + + + @@ -61456,6 +67413,13 @@ + + + + + + + @@ -61473,6 +67437,13 @@ + + + + + + + @@ -61491,6 +67462,13 @@ + + + + + + + @@ -61508,6 +67486,13 @@ + + + + + + + @@ -61526,6 +67511,13 @@ + + + + + + + @@ -61541,6 +67533,11 @@ + + + + + @@ -61560,6 +67557,13 @@ + + + + + + + @@ -61580,6 +67584,13 @@ + + + + + + + @@ -61588,6 +67599,11 @@ + + + + + @@ -61596,6 +67612,11 @@ + + + + + @@ -61612,6 +67633,17 @@ + + + + + + + + + + + @@ -61629,6 +67661,17 @@ + + + + + + + + + + + @@ -61644,6 +67687,11 @@ + + + + + @@ -61659,6 +67707,11 @@ + + + + + @@ -61678,6 +67731,11 @@ + + + + + @@ -61697,6 +67755,11 @@ + + + + + @@ -61715,6 +67778,17 @@ + + + + + + + + + + + @@ -61734,6 +67808,17 @@ + + + + + + + + + + + @@ -62840,21 +68925,25 @@ - + - + - + - + @@ -63197,8 +69286,8 @@ - - + + @@ -64285,6 +70374,9 @@ + + + @@ -64330,8 +70422,8 @@ - - + + @@ -64493,6 +70585,9 @@ + + + @@ -64507,6 +70602,9 @@ + + + @@ -64521,6 +70619,9 @@ + + + @@ -64528,9 +70629,16 @@ + + + + + + + @@ -65262,6 +71370,11 @@ + + + + + @@ -65282,6 +71395,11 @@ + + + + + @@ -65304,6 +71422,11 @@ + + + + + @@ -65313,6 +71436,11 @@ + + + + + @@ -65327,6 +71455,11 @@ + + + + + @@ -65346,6 +71479,11 @@ + + + + + @@ -65360,6 +71498,11 @@ + + + + + @@ -65379,6 +71522,11 @@ + + + + + @@ -65395,6 +71543,13 @@ + + + + + + + @@ -65411,6 +71566,13 @@ + + + + + + + @@ -65427,6 +71589,13 @@ + + + + + + + @@ -65437,6 +71606,11 @@ + + + + + @@ -65456,6 +71630,13 @@ + + + + + + + @@ -65464,6 +71645,11 @@ + + + + + @@ -65475,6 +71661,11 @@ + + + + + @@ -65491,6 +71682,17 @@ + + + + + + + + + + + @@ -65507,6 +71709,17 @@ + + + + + + + + + + + @@ -65522,6 +71735,11 @@ + + + + + @@ -65538,6 +71756,11 @@ + + + + + @@ -65545,6 +71768,11 @@ + + + + + @@ -65552,6 +71780,11 @@ + + + + + @@ -65563,6 +71796,11 @@ + + + + + @@ -65581,6 +71819,11 @@ + + + + + @@ -65591,6 +71834,11 @@ + + + + + @@ -65599,6 +71847,11 @@ + + + + + @@ -65617,6 +71870,11 @@ + + + + + @@ -65627,6 +71885,11 @@ + + + + + @@ -65635,6 +71898,11 @@ + + + + + @@ -65653,6 +71921,11 @@ + + + + + @@ -65664,6 +71937,11 @@ + + + + + @@ -65672,6 +71950,11 @@ + + + + + @@ -65688,6 +71971,11 @@ + + + + + @@ -65698,6 +71986,11 @@ + + + + + @@ -65867,6 +72160,11 @@ + + + + + @@ -65881,10 +72179,20 @@ + + + + + + + + + + @@ -67082,6 +73390,9 @@ + + + @@ -67515,8 +73826,8 @@ - - + + @@ -67556,12 +73867,19 @@ + + + + + + + @@ -67574,12 +73892,18 @@ + + + + + + @@ -67633,6 +73957,11 @@ + + + + + @@ -67643,6 +73972,11 @@ + + + + + @@ -67651,6 +73985,11 @@ + + + + + @@ -67667,6 +74006,11 @@ + + + + + @@ -67676,6 +74020,11 @@ + + + + + @@ -67686,6 +74035,11 @@ + + + + + @@ -67703,6 +74057,11 @@ + + + + + @@ -67710,6 +74069,11 @@ + + + + + @@ -68538,6 +74902,13 @@ + + + + + + + @@ -68554,6 +74925,13 @@ + + + + + + + @@ -68570,6 +74948,13 @@ + + + + + + + @@ -68586,6 +74971,13 @@ + + + + + + + @@ -68602,6 +74994,13 @@ + + + + + + + @@ -68618,6 +75017,13 @@ + + + + + + + @@ -68636,6 +75042,13 @@ + + + + + + + @@ -68654,6 +75067,13 @@ + + + + + + + @@ -68672,6 +75092,13 @@ + + + + + + + @@ -68690,6 +75117,13 @@ + + + + + + + @@ -68708,6 +75142,13 @@ + + + + + + + @@ -68726,6 +75167,13 @@ + + + + + + + @@ -68736,6 +75184,11 @@ + + + + + @@ -68757,6 +75210,13 @@ + + + + + + + @@ -68778,6 +75238,13 @@ + + + + + + + @@ -68799,6 +75266,13 @@ + + + + + + + @@ -68820,6 +75294,13 @@ + + + + + + + @@ -68829,6 +75310,11 @@ + + + + + @@ -68846,6 +75332,17 @@ + + + + + + + + + + + @@ -68863,6 +75360,17 @@ + + + + + + + + + + + @@ -68876,6 +75384,11 @@ + + + + + @@ -68893,6 +75406,17 @@ + + + + + + + + + + + @@ -68910,6 +75434,17 @@ + + + + + + + + + + + @@ -68923,6 +75458,11 @@ + + + + + diff --git a/src/items/functions/item/item_parse.cpp b/src/items/functions/item/item_parse.cpp index 832d34a0ba0..91a7610d9fd 100644 --- a/src/items/functions/item/item_parse.cpp +++ b/src/items/functions/item/item_parse.cpp @@ -10,6 +10,7 @@ #include "pch.hpp" #include "items/functions/item/item_parse.hpp" +#include "items/weapons/weapons.hpp" #include "lua/creature/movement.hpp" #include "utils/pugicast.hpp" @@ -949,16 +950,45 @@ void ItemParse::parsePrimaryType(const std::string_view &tmpStrValue, pugi::xml_ } } -void ItemParse::createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType &itemType, pugi::xml_node attributeNode) { - auto moveevent = std::make_shared(nullptr); - moveevent->setItemId(itemType.id); - moveevent->setEventType(eventType); - if (eventType == MOVE_EVENT_EQUIP) { - moveevent->equipFunction = moveevent->EquipItem; - } else if (eventType == MOVE_EVENT_DEEQUIP) { - moveevent->equipFunction = moveevent->DeEquipItem; +void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attributeNode, MoveEvent_t eventType /*= MOVE_EVENT_NONE*/, WeaponType_t weaponType /*= WEAPON_NONE*/) { + std::shared_ptr moveevent; + if (eventType != MOVE_EVENT_NONE) { + moveevent = std::make_shared(&g_moveEvents().getScriptInterface()); + moveevent->setItemId(itemType.id); + moveevent->setEventType(eventType); + moveevent->setFromXML(true); + + if (eventType == MOVE_EVENT_EQUIP) { + moveevent->equipFunction = moveevent->EquipItem; + } else if (eventType == MOVE_EVENT_DEEQUIP) { + moveevent->equipFunction = moveevent->DeEquipItem; + } else if (eventType == MOVE_EVENT_STEP_IN) { + moveevent->stepFunction = moveevent->StepInField; + } else if (eventType == MOVE_EVENT_STEP_OUT) { + moveevent->stepFunction = moveevent->StepOutField; + } else if (eventType == MOVE_EVENT_ADD_ITEM_ITEMTILE) { + moveevent->moveFunction = moveevent->AddItemField; + } else if (eventType == MOVE_EVENT_REMOVE_ITEM) { + moveevent->moveFunction = moveevent->RemoveItemField; + } } + Weapon* weapon = nullptr; + if (weaponType != WEAPON_NONE) { + if (weaponType == WEAPON_DISTANCE || weaponType == WEAPON_AMMO || weaponType == WEAPON_MISSILE) { + weapon = new WeaponDistance(&g_weapons().getScriptInterface()); + } else if (weaponType == WEAPON_WAND) { + weapon = new WeaponWand(&g_weapons().getScriptInterface()); + } else { + weapon = new WeaponMelee(&g_weapons().getScriptInterface()); + } + weapon->weaponType = weaponType; + itemType.weaponType = weapon->weaponType; + weapon->configureWeapon(itemType); + g_logger().debug("Created weapon with type '{}'", getWeaponName(weaponType)); + } + uint32_t fromDamage = 0; + uint32_t toDamage = 0; for (auto subAttributeNode : attributeNode.children()) { pugi::xml_attribute subKeyAttribute = subAttributeNode.attribute("key"); if (!subKeyAttribute) { @@ -972,7 +1002,7 @@ void ItemParse::createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType auto stringKey = asLowerCaseString(subKeyAttribute.as_string()); if (stringKey == "slot") { - if (moveevent->getEventType() == MOVE_EVENT_EQUIP || moveevent->getEventType() == MOVE_EVENT_DEEQUIP) { + if (moveevent && (moveevent->getEventType() == MOVE_EVENT_EQUIP || moveevent->getEventType() == MOVE_EVENT_DEEQUIP)) { auto slotName = asLowerCaseString(subValueAttribute.as_string()); if (slotName == "head") { moveevent->setSlot(SLOTP_HEAD); @@ -997,13 +1027,29 @@ void ItemParse::createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType } else if (slotName == "ammo") { moveevent->setSlot(SLOTP_AMMO); } else { - g_logger().warn("[{}] unknown slot type: {}", __FUNCTION__, slotName); + g_logger().warn("[{}] unknown slot type '{}'", __FUNCTION__, slotName); + } + } else if (weapon) { + uint16_t id = weapon->getID(); + ItemType &it = Item::items.getItemType(id); + auto slotName = asLowerCaseString(subValueAttribute.as_string()); + if (slotName == "two-handed") { + it.slotPosition = SLOTP_TWO_HAND; + } else { + it.slotPosition = SLOTP_HAND; } } } else if (stringKey == "level") { auto numberValue = subValueAttribute.as_uint(); - moveevent->setRequiredLevel(numberValue); - moveevent->setWieldInfo(WIELDINFO_LEVEL); + if (moveevent) { + g_logger().debug("Added required moveevent level '{}'", numberValue); + moveevent->setRequiredLevel(numberValue); + moveevent->setWieldInfo(WIELDINFO_LEVEL); + } else if (weapon) { + g_logger().debug("Added required weapon level '{}'", numberValue); + weapon->setRequiredLevel(numberValue); + weapon->setWieldInfo(WIELDINFO_LEVEL); + } } else if (stringKey == "vocation") { auto vocations = subValueAttribute.as_string(); std::string tmp; @@ -1028,14 +1074,20 @@ void ItemParse::createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType std::getline(inner_ss, showInDescriptionStr, ';'); showInDescription = showInDescriptionStr == "true"; - moveevent->addVocEquipMap(v1); - moveevent->setWieldInfo(WIELDINFO_VOCREQ); + if (moveevent) { + moveevent->addVocEquipMap(v1); + moveevent->setWieldInfo(WIELDINFO_VOCREQ); + } if (showInDescription) { - if (moveevent->getVocationString().empty()) { + if (moveevent && moveevent->getVocationString().empty()) { tmp = asLowerCaseString(v1); tmp += "s"; moveevent->setVocationString(tmp); + } else if (weapon && weapon->getVocationString().empty()) { + tmp = asLowerCaseString(v1); + tmp += "s"; + weapon->setVocationString(tmp); } else { tmp += ", "; tmp += asLowerCaseString(v1); @@ -1047,12 +1099,69 @@ void ItemParse::createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType size_t lastComma = tmp.rfind(','); if (lastComma != std::string::npos) { tmp.replace(lastComma, 1, " and"); - moveevent->setVocationString(tmp); + if (moveevent) { + moveevent->setVocationString(tmp); + } else if (weapon) { + weapon->setVocationString(tmp); + } } + } else if (stringKey == "removecount" && weapon) { + weapon->action = WEAPONACTION_REMOVECOUNT; + } else if (stringKey == "removecharge" && weapon) { + weapon->action = WEAPONACTION_REMOVECHARGE; + } else if (stringKey == "move" && weapon) { + weapon->action = WEAPONACTION_MOVE; + } else if (stringKey == "breakchance" && weapon) { + weapon->setBreakChance(subValueAttribute.as_uint()); + } else if (stringKey == "mana" && weapon) { + weapon->setMana(subValueAttribute.as_uint()); + } else if (stringKey == "unproperly" && weapon) { + weapon->setWieldUnproperly(subValueAttribute.as_bool()); + } else if (stringKey == "fromdamage" && weapon) { + fromDamage = subValueAttribute.as_uint(); + } else if (stringKey == "todamage" && weapon) { + toDamage = subValueAttribute.as_uint(); + } else if (stringKey == "wandtype" && weapon) { + std::string elementName = asLowerCaseString(subValueAttribute.as_string()); + if (elementName == "earth") { + weapon->params.combatType = COMBAT_EARTHDAMAGE; + } else if (elementName == "ice") { + weapon->params.combatType = COMBAT_ICEDAMAGE; + } else if (elementName == "energy") { + weapon->params.combatType = COMBAT_ENERGYDAMAGE; + } else if (elementName == "fire") { + weapon->params.combatType = COMBAT_FIREDAMAGE; + } else if (elementName == "death") { + weapon->params.combatType = COMBAT_DEATHDAMAGE; + } else if (elementName == "holy") { + weapon->params.combatType = COMBAT_HOLYDAMAGE; + } else { + g_logger().warn("[{}] - wandtype '{}' does not exist", __FUNCTION__, elementName); + } + } + } + + if (weapon) { + if (auto weaponWand = dynamic_cast(weapon)) { + g_logger().debug("Added weapon damage from '{}', to '{}'", fromDamage, toDamage); + weaponWand->setMinChange(fromDamage); + weaponWand->setMaxChange(toDamage); + } + + if (weapon->getWieldInfo() != 0) { + itemType.wieldInfo = weapon->getWieldInfo(); + itemType.vocationString = weapon->getVocationString(); + itemType.minReqLevel = weapon->getReqLevel(); + itemType.minReqMagicLevel = weapon->getReqMagLv(); + } + + if (!g_weapons().registerLuaEvent(weapon, true)) { + g_logger().error("[{}] failed to register weapon from item name {}", __FUNCTION__, itemType.name); + delete weapon; } } - if (!g_moveEvents().registerLuaItemEvent(moveevent)) { + if (moveevent && !g_moveEvents().registerLuaItemEvent(moveevent)) { g_logger().error("[{}] failed to register moveevent from item name {}", __FUNCTION__, itemType.name); } } @@ -1064,10 +1173,58 @@ void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi:: std::vector> events; for (const auto &token : tokens) { if (token == "moveevent") { - createAndRegisterMoveEvent(MOVE_EVENT_EQUIP, itemType, attributeNode); - createAndRegisterMoveEvent(MOVE_EVENT_DEEQUIP, itemType, attributeNode); - } else if ((token == "weapon")) { - // TODO: add weapon logic + g_logger().debug("Registering moveevent for item id '{}', name '{}'", itemType.id, itemType.name); + MoveEvent_t eventType = MOVE_EVENT_NONE; + for (auto subAttributeNode : attributeNode.children()) { + pugi::xml_attribute subKeyAttribute = subAttributeNode.attribute("key"); + if (!subKeyAttribute) { + continue; + } + + pugi::xml_attribute subValueAttribute = subAttributeNode.attribute("value"); + if (!subValueAttribute) { + continue; + } + + auto stringKey = asLowerCaseString(subKeyAttribute.as_string()); + if (stringKey == "eventtype") { + const auto &eventTypeName = asLowerCaseString(subValueAttribute.as_string()); + eventType = getMoveEventType(eventTypeName); + g_logger().debug("Found event type '{}'", eventTypeName); + break; + } + } + + // Event type stepin/out need to be registered both at same time + if (eventType == MOVE_EVENT_NONE) { + createAndRegisterScript(itemType, attributeNode, MOVE_EVENT_EQUIP); + createAndRegisterScript(itemType, attributeNode, MOVE_EVENT_DEEQUIP); + } else { + createAndRegisterScript(itemType, attributeNode, eventType); + } + } else if (token == "weapon") { + WeaponType_t weaponType; + g_logger().debug("Registering weapon for item id '{}', name '{}'", itemType.id, itemType.name); + for (auto subAttributeNode : attributeNode.children()) { + pugi::xml_attribute subKeyAttribute = subAttributeNode.attribute("key"); + if (!subKeyAttribute) { + continue; + } + + pugi::xml_attribute subValueAttribute = subAttributeNode.attribute("value"); + if (!subValueAttribute) { + continue; + } + + auto stringKey = asLowerCaseString(subKeyAttribute.as_string()); + if (stringKey == "weapontype") { + weaponType = getWeaponType(subValueAttribute.as_string()); + g_logger().debug("Found weapon type '{}''", subValueAttribute.as_string()); + break; + } + } + + createAndRegisterScript(itemType, attributeNode, MOVE_EVENT_NONE, weaponType); } } } diff --git a/src/items/functions/item/item_parse.hpp b/src/items/functions/item/item_parse.hpp index 7b4233c61db..83c0d33f4fd 100644 --- a/src/items/functions/item/item_parse.hpp +++ b/src/items/functions/item/item_parse.hpp @@ -318,5 +318,5 @@ class ItemParse : public Items { static std::tuple parseFieldConditions(std::string lowerStringValue, pugi::xml_attribute valueAttribute); static CombatType_t parseFieldCombatType(std::string string, pugi::xml_attribute valueAttribute); static void parseFieldCombatDamage(ConditionDamage* conditionDamage, std::string stringValue, pugi::xml_node attributeNode); - static void createAndRegisterMoveEvent(MoveEvent_t eventType, const ItemType &itemType, pugi::xml_node attributeNode); + static void createAndRegisterScript(ItemType &itemType, pugi::xml_node attributeNode, MoveEvent_t eventType = MOVE_EVENT_NONE, WeaponType_t weaponType = WEAPON_NONE); }; diff --git a/src/items/items.cpp b/src/items/items.cpp index 986f2b2728d..a236951e107 100644 --- a/src/items/items.cpp +++ b/src/items/items.cpp @@ -12,6 +12,7 @@ #include "items/functions/item/item_parse.hpp" #include "items/items.hpp" #include "items/weapons/weapons.hpp" +#include "lua/creature/movement.hpp" #include "game/game.hpp" #include "utils/pugicast.hpp" @@ -22,6 +23,8 @@ void Items::clear() { ladders.clear(); dummys.clear(); nameToItems.clear(); + g_moveEvents().clear(true); + g_weapons().clear(true); } using LootTypeNames = phmap::flat_hash_map; diff --git a/src/items/weapons/weapons.cpp b/src/items/weapons/weapons.cpp index aae19c09f74..666f7704856 100644 --- a/src/items/weapons/weapons.cpp +++ b/src/items/weapons/weapons.cpp @@ -29,12 +29,34 @@ const Weapon* Weapons::getWeapon(const Item* item) const { return it->second; } -void Weapons::clear() { +void Weapons::clear(bool isFromXML /*= false*/) { + if (isFromXML) { + int numRemoved = 0; + for (auto it = weapons.begin(); it != weapons.end();) { + if (it->second && it->second->isFromXML()) { + g_logger().debug("Weapon with id '{}' is from XML and will be removed.", it->first); + it = weapons.erase(it); + ++numRemoved; + } else { + ++it; + } + } + + if (numRemoved > 0) { + g_logger().debug("Removed '{}' Weapon from XML.", numRemoved); + } + + return; + } + weapons.clear(); } -bool Weapons::registerLuaEvent(Weapon* event) { +bool Weapons::registerLuaEvent(Weapon* event, bool fromXML /*= false*/) { weapons[event->getID()] = event; + if (fromXML) { + event->setFromXML(fromXML); + } return true; } diff --git a/src/items/weapons/weapons.hpp b/src/items/weapons/weapons.hpp index 7dd9ba27b55..4e4b0763442 100644 --- a/src/items/weapons/weapons.hpp +++ b/src/items/weapons/weapons.hpp @@ -41,8 +41,8 @@ class Weapons final : public Scripts { static int32_t getMaxMeleeDamage(int32_t attackSkill, int32_t attackValue); static int32_t getMaxWeaponDamage(uint32_t level, int32_t attackSkill, int32_t attackValue, float attackFactor, bool isMelee); - bool registerLuaEvent(Weapon* event); - void clear(); + bool registerLuaEvent(Weapon* event, bool fromXML = false); + void clear(bool isFromXML = false); private: std::map weapons; @@ -173,6 +173,14 @@ class Weapon : public Script { vocationString = str; } + void setFromXML(bool newFromXML) { + m_fromXML = newFromXML; + } + + bool isFromXML() const { + return m_fromXML; + } + protected: void internalUseWeapon(Player* player, Item* item, Creature* target, int32_t damageModifier, int32_t cleavePercent = 0) const; void internalUseWeapon(Player* player, Item* item, Tile* tile) const; @@ -211,11 +219,14 @@ class Weapon : public Script { WeaponType_t weaponType; std::map vocWeaponMap; + bool m_fromXML = false; + friend class Combat; friend class WeaponWand; friend class WeaponMelee; friend class WeaponDistance; friend class WeaponFunctions; + friend class ItemParse; }; class WeaponMelee final : public Weapon { diff --git a/src/lua/creature/movement.cpp b/src/lua/creature/movement.cpp index 92945118978..ca56ece88a4 100644 --- a/src/lua/creature/movement.cpp +++ b/src/lua/creature/movement.cpp @@ -15,7 +15,34 @@ #include "lua/callbacks/events_callbacks.hpp" #include "lua/creature/movement.hpp" -void MoveEvents::clear() { +void MoveEvents::clear(bool isFromXML /*= false*/) { + if (isFromXML) { + int numRemoved = 0; + for (auto &pair : itemIdMap) { + MoveEventList &moveEventList = pair.second; + + for (int moveEventType = 0; moveEventType < MOVE_EVENT_LAST; ++moveEventType) { + auto &eventList = moveEventList.moveEvent[moveEventType]; + + int originalSize = eventList.size(); + + eventList.remove_if([&](const std::shared_ptr &moveEvent) { + bool removed = moveEvent && moveEvent->isFromXML(); + if (removed) { + g_logger().debug("MoveEvent with id '{}' is from XML and will be removed.", pair.first); + ++numRemoved; + } + return removed; + }); + } + } + + if (numRemoved > 0) { + g_logger().debug("Removed '{}' MoveEvent from XML.", numRemoved); + } + return; + } + uniqueIdMap.clear(); actionIdMap.clear(); itemIdMap.clear(); diff --git a/src/lua/creature/movement.hpp b/src/lua/creature/movement.hpp index 2e5fd433e2c..a58443f54c3 100644 --- a/src/lua/creature/movement.hpp +++ b/src/lua/creature/movement.hpp @@ -112,7 +112,7 @@ class MoveEvents final : public Scripts { bool registerLuaUniqueEvent(const std::shared_ptr moveEvent); bool registerLuaPositionEvent(const std::shared_ptr moveEvent); bool registerLuaEvent(const std::shared_ptr event); - void clear(); + void clear(bool isFromXML = false); private: void clearMap(std::map &map) const; @@ -251,8 +251,12 @@ class MoveEvent final : public Script, public SharedObject { static uint32_t EquipItem(const std::shared_ptr moveEvent, Player* player, Item* item, Slots_t slot, bool boolean); static uint32_t DeEquipItem(const std::shared_ptr moveEvent, Player* player, Item* item, Slots_t slot, bool boolean); - void setFromLua(bool newFromLua) { - m_fromLua = newFromLua; + void setFromXML(bool newFromXML) { + m_fromXML = newFromXML; + } + + bool isFromXML() const { + return m_fromXML; } private: @@ -294,7 +298,7 @@ class MoveEvent final : public Script, public SharedObject { std::map vocEquipMap; bool tileItem = false; - bool m_fromLua = true; + bool m_fromXML = false; std::vector itemIdVector; std::vector actionIdVector; diff --git a/src/utils/tools.cpp b/src/utils/tools.cpp index 1b649e4e24a..848086bf21f 100644 --- a/src/utils/tools.cpp +++ b/src/utils/tools.cpp @@ -1074,6 +1074,47 @@ std::string getWeaponName(WeaponType_t weaponType) { } } +WeaponType_t getWeaponType(const std::string &name) { + static const std::unordered_map type_mapping = { + { "none", WeaponType_t::WEAPON_NONE }, + { "sword", WeaponType_t::WEAPON_SWORD }, + { "club", WeaponType_t::WEAPON_CLUB }, + { "axe", WeaponType_t::WEAPON_AXE }, + { "shield", WeaponType_t::WEAPON_SHIELD }, + { "distance", WeaponType_t::WEAPON_DISTANCE }, + { "wand", WeaponType_t::WEAPON_WAND }, + { "ammo", WeaponType_t::WEAPON_AMMO }, + { "missile", WeaponType_t::WEAPON_MISSILE } + }; + + auto it = type_mapping.find(name); + if (it != type_mapping.end()) { + return it->second; + } + + return WEAPON_NONE; +} + +MoveEvent_t getMoveEventType(const std::string &name) { + static const std::unordered_map move_event_type_mapping = { + { "stepin", MOVE_EVENT_STEP_IN }, + { "stepout", MOVE_EVENT_STEP_OUT }, + { "equip", MOVE_EVENT_EQUIP }, + { "deequip", MOVE_EVENT_DEEQUIP }, + { "additem", MOVE_EVENT_ADD_ITEM }, + { "removeitem", MOVE_EVENT_REMOVE_ITEM }, + { "additemitemtile", MOVE_EVENT_ADD_ITEM_ITEMTILE }, + { "removeitemitemtile", MOVE_EVENT_REMOVE_ITEM_ITEMTILE } + }; + + auto it = move_event_type_mapping.find(name); + if (it != move_event_type_mapping.end()) { + return it->second; + } + + return MOVE_EVENT_NONE; +} + std::string getCombatName(CombatType_t combatType) { auto combatName = combatTypeNames.find(combatType); if (combatName != combatTypeNames.end()) { diff --git a/src/utils/tools.hpp b/src/utils/tools.hpp index 4312d214293..b41d69768a2 100644 --- a/src/utils/tools.hpp +++ b/src/utils/tools.hpp @@ -96,6 +96,8 @@ std::string ucwords(std::string str); bool booleanString(const std::string &str); std::string getWeaponName(WeaponType_t weaponType); +WeaponType_t getWeaponType(const std::string &name); +MoveEvent_t getMoveEventType(const std::string &name); std::string getCombatName(CombatType_t combatType); CombatType_t getCombatTypeByName(const std::string &combatname); From 7859d6ce2b321b3eb181b014b30aeb8ffc801d34 Mon Sep 17 00:00:00 2001 From: Luan Santos Date: Fri, 29 Sep 2023 20:14:40 -0700 Subject: [PATCH 04/10] fixup unscripted --- data/items/items.xml | 172 ++++++++++++------------ src/items/functions/item/item_parse.cpp | 15 ++- 2 files changed, 95 insertions(+), 92 deletions(-) diff --git a/data/items/items.xml b/data/items/items.xml index d46e446fca8..c3896829801 100644 --- a/data/items/items.xml +++ b/data/items/items.xml @@ -1190,7 +1190,7 @@ - + @@ -1203,7 +1203,7 @@ - + @@ -1218,7 +1218,7 @@ - + @@ -1232,7 +1232,7 @@ - + @@ -1247,7 +1247,7 @@ - + @@ -1263,7 +1263,7 @@ - + @@ -1278,7 +1278,7 @@ - + @@ -1293,7 +1293,7 @@ - + @@ -1307,7 +1307,7 @@ - + @@ -1322,7 +1322,7 @@ - + @@ -1338,7 +1338,7 @@ - + @@ -1353,7 +1353,7 @@ - + @@ -1368,7 +1368,7 @@ - + @@ -1382,7 +1382,7 @@ - + @@ -1396,7 +1396,7 @@ - + @@ -1428,7 +1428,7 @@ - + @@ -1441,7 +1441,7 @@ - + @@ -1456,7 +1456,7 @@ - + @@ -1470,7 +1470,7 @@ - + @@ -1485,7 +1485,7 @@ - + @@ -1501,7 +1501,7 @@ - + @@ -1516,7 +1516,7 @@ - + @@ -1531,7 +1531,7 @@ - + @@ -1545,7 +1545,7 @@ - + @@ -1560,7 +1560,7 @@ - + @@ -1576,7 +1576,7 @@ - + @@ -1591,7 +1591,7 @@ - + @@ -1606,7 +1606,7 @@ - + @@ -1620,7 +1620,7 @@ - + @@ -1634,7 +1634,7 @@ - + @@ -2075,7 +2075,7 @@ - + @@ -2092,7 +2092,7 @@ - + @@ -2109,7 +2109,7 @@ - + @@ -2182,7 +2182,7 @@ - + @@ -2205,7 +2205,7 @@ - + @@ -2218,7 +2218,7 @@ - + @@ -2233,7 +2233,7 @@ - + @@ -2247,7 +2247,7 @@ - + @@ -2262,7 +2262,7 @@ - + @@ -2278,7 +2278,7 @@ - + @@ -2293,7 +2293,7 @@ - + @@ -2308,7 +2308,7 @@ - + @@ -2322,7 +2322,7 @@ - + @@ -2337,7 +2337,7 @@ - + @@ -2353,7 +2353,7 @@ - + @@ -2368,7 +2368,7 @@ - + @@ -2383,7 +2383,7 @@ - + @@ -2397,7 +2397,7 @@ - + @@ -2411,7 +2411,7 @@ - + @@ -2426,7 +2426,7 @@ - + @@ -2439,7 +2439,7 @@ - + @@ -2454,7 +2454,7 @@ - + @@ -2468,7 +2468,7 @@ - + @@ -2483,7 +2483,7 @@ - + @@ -2503,7 +2503,7 @@ - + @@ -2518,7 +2518,7 @@ - + @@ -2533,7 +2533,7 @@ - + @@ -2547,7 +2547,7 @@ - + @@ -2562,7 +2562,7 @@ - + @@ -2578,7 +2578,7 @@ - + @@ -2593,7 +2593,7 @@ - + @@ -2608,7 +2608,7 @@ - + @@ -2622,7 +2622,7 @@ - + @@ -2636,7 +2636,7 @@ - + @@ -6580,7 +6580,7 @@ - + @@ -8536,7 +8536,7 @@ - + @@ -10757,7 +10757,7 @@ - + @@ -10771,7 +10771,7 @@ - + @@ -10803,7 +10803,7 @@ - + @@ -18000,7 +18000,7 @@ - + @@ -19212,7 +19212,7 @@ - + @@ -19228,7 +19228,7 @@ - + @@ -19244,7 +19244,7 @@ - + @@ -32722,7 +32722,7 @@ - + @@ -32738,7 +32738,7 @@ - + @@ -33579,7 +33579,7 @@ - + @@ -33593,7 +33593,7 @@ - + @@ -34434,7 +34434,7 @@ - + @@ -34450,7 +34450,7 @@ - + @@ -34467,7 +34467,7 @@ - + @@ -42009,7 +42009,7 @@ - + @@ -42027,7 +42027,7 @@ - + @@ -42045,7 +42045,7 @@ - + @@ -42697,7 +42697,7 @@ My sad story is told by few living humans but many dead warriors"/> - + @@ -48984,7 +48984,7 @@ TibiaTome.com"/> - + @@ -66673,7 +66673,7 @@ former students at the Noodles Academy. Awarded by TibiaLabs.com"/> - + diff --git a/src/items/functions/item/item_parse.cpp b/src/items/functions/item/item_parse.cpp index dabd6f2f5eb..1aaaf934830 100644 --- a/src/items/functions/item/item_parse.cpp +++ b/src/items/functions/item/item_parse.cpp @@ -1104,12 +1104,15 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri weapon->setVocationString(tmp); } } - } else if (stringKey == "removecount" && weapon) { - weapon->action = WEAPONACTION_REMOVECOUNT; - } else if (stringKey == "removecharge" && weapon) { - weapon->action = WEAPONACTION_REMOVECHARGE; - } else if (stringKey == "move" && weapon) { - weapon->action = WEAPONACTION_MOVE; + } else if (stringKey == "action" && weapon) { + auto action = asLowerCaseString(subValueAttribute.as_string()); + if (action == "removecharge") { + weapon->action = WEAPONACTION_REMOVECHARGE; + } else if (action == "removecount") { + weapon->action = WEAPONACTION_REMOVECOUNT; + } else if (action == "move") { + weapon->action = WEAPONACTION_MOVE; + } } else if (stringKey == "breakchance" && weapon) { weapon->setBreakChance(subValueAttribute.as_uint()); } else if (stringKey == "mana" && weapon) { From 1b773c9ad3ee45b4912101076a639b00676074a2 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Sun, 25 Feb 2024 17:40:43 -0300 Subject: [PATCH 05/10] fix: compilation errors related to conflict ptr --- src/items/functions/item/item_parse.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/items/functions/item/item_parse.cpp b/src/items/functions/item/item_parse.cpp index bef4b4f15f4..b17f65d18f3 100644 --- a/src/items/functions/item/item_parse.cpp +++ b/src/items/functions/item/item_parse.cpp @@ -994,14 +994,14 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri } } - Weapon* weapon = nullptr; + std::shared_ptr weapon = nullptr; if (weaponType != WEAPON_NONE) { if (weaponType == WEAPON_DISTANCE || weaponType == WEAPON_AMMO || weaponType == WEAPON_MISSILE) { - weapon = new WeaponDistance(&g_weapons().getScriptInterface()); + weapon = std::make_shared(&g_weapons().getScriptInterface()); } else if (weaponType == WEAPON_WAND) { - weapon = new WeaponWand(&g_weapons().getScriptInterface()); + weapon = std::make_shared(&g_weapons().getScriptInterface()); } else { - weapon = new WeaponMelee(&g_weapons().getScriptInterface()); + weapon = std::make_shared(&g_weapons().getScriptInterface()); } weapon->weaponType = weaponType; itemType.weaponType = weapon->weaponType; @@ -1166,7 +1166,7 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri } if (weapon) { - if (auto weaponWand = dynamic_cast(weapon)) { + if (auto weaponWand = dynamic_pointer_cast(weapon)) { g_logger().debug("Added weapon damage from '{}', to '{}'", fromDamage, toDamage); weaponWand->setMinChange(fromDamage); weaponWand->setMaxChange(toDamage); @@ -1181,7 +1181,6 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri if (!g_weapons().registerLuaEvent(weapon, true)) { g_logger().error("[{}] failed to register weapon from item name {}", __FUNCTION__, itemType.name); - delete weapon; } } From 9a08805ac6e8d763ed397f2e9fb1b00716907a49 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Sun, 25 Feb 2024 18:03:14 -0300 Subject: [PATCH 06/10] fix: remove unused variable --- src/items/functions/item/item_parse.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/items/functions/item/item_parse.cpp b/src/items/functions/item/item_parse.cpp index b17f65d18f3..f5eff0f5941 100644 --- a/src/items/functions/item/item_parse.cpp +++ b/src/items/functions/item/item_parse.cpp @@ -1193,7 +1193,6 @@ void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi:: if (tmpStrValue == "script") { std::string scriptName = valueAttribute.as_string(); auto tokens = split(scriptName.data(), ';'); - std::vector> events; for (const auto &token : tokens) { if (token == "moveevent") { g_logger().debug("Registering moveevent for item id '{}', name '{}'", itemType.id, itemType.name); From f0d5c4ede9bab42f664454b99af3c29851108337 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Wed, 28 Feb 2024 19:19:10 -0300 Subject: [PATCH 07/10] feat: chain for weapons (sword, axe, club and wand/rod) --- config.lua.dist | 6 +- data/items/items.xml | 1 + src/config/config_enums.hpp | 2 + src/config/configmanager.cpp | 2 + src/creatures/combat/combat.cpp | 170 +++++++++++++++++++----- src/creatures/combat/combat.hpp | 24 +++- src/items/functions/item/item_parse.cpp | 27 ++-- src/items/weapons/weapons.cpp | 78 ++++++++++- src/items/weapons/weapons.hpp | 35 ++++- 9 files changed, 291 insertions(+), 54 deletions(-) diff --git a/config.lua.dist b/config.lua.dist index 073281be273..d667bb48952 100644 --- a/config.lua.dist +++ b/config.lua.dist @@ -419,11 +419,15 @@ multiplierSpeedOnFist = 5 maxSpeedOnFist = 500 disableLegacyRaids = false disableMonsterArmor = false -combatChainDelay = 50 minElementalResistance = -200 maxElementalResistance = 200 maxDamageReflection = 200 +-- Chain system +toggleChainSystem = true +combatChainDelay = 50 +combatChainTargets = 5 + -- Global server Save -- NOTE: globalServerSaveNotifyDuration in minutes globalServerSaveNotifyMessage = true diff --git a/data/items/items.xml b/data/items/items.xml index 5ae94f29fac..faa2edfce01 100644 --- a/data/items/items.xml +++ b/data/items/items.xml @@ -22330,6 +22330,7 @@ + diff --git a/src/config/config_enums.hpp b/src/config/config_enums.hpp index dd8934caeed..ee8b531ddcc 100644 --- a/src/config/config_enums.hpp +++ b/src/config/config_enums.hpp @@ -36,6 +36,7 @@ enum ConfigKey_t : uint16_t { CLASSIC_ATTACK_SPEED, CLEAN_PROTECTION_ZONES, COMBAT_CHAIN_DELAY, + COMBAT_CHAIN_TARGETS, COMPRESSION_LEVEL, CONVERT_UNSAFE_SCRIPTS, CORE_DIRECTORY, @@ -273,6 +274,7 @@ enum ConfigKey_t : uint16_t { TIBIADROME_CONCOCTION_DURATION, TIBIADROME_CONCOCTION_TICK_TYPE, TOGGLE_ATTACK_SPEED_ONFIST, + TOGGLE_CHAIN_SYSTEM, TOGGLE_DOWNLOAD_MAP, TOGGLE_FREE_QUEST, TOGGLE_GOLD_POUCH_ALLOW_ANYTHING, diff --git a/src/config/configmanager.cpp b/src/config/configmanager.cpp index f6f12546c43..7069ca10fb2 100644 --- a/src/config/configmanager.cpp +++ b/src/config/configmanager.cpp @@ -139,6 +139,7 @@ bool ConfigManager::load() { loadBoolConfig(L, TELEPORT_PLAYER_TO_VOCATION_ROOM, "teleportPlayerToVocationRoom", true); loadBoolConfig(L, TELEPORT_SUMMONS, "teleportSummons", false); loadBoolConfig(L, TOGGLE_ATTACK_SPEED_ONFIST, "toggleAttackSpeedOnFist", false); + loadBoolConfig(L, TOGGLE_CHAIN_SYSTEM, "toggleChainSystem", true); loadBoolConfig(L, TOGGLE_DOWNLOAD_MAP, "toggleDownloadMap", false); loadBoolConfig(L, TOGGLE_FREE_QUEST, "toggleFreeQuest", true); loadBoolConfig(L, TOGGLE_GOLD_POUCH_ALLOW_ANYTHING, "toggleGoldPouchAllowAnything", false); @@ -215,6 +216,7 @@ bool ConfigManager::load() { loadIntConfig(L, BUY_BLESS_COMMAND_FEE, "buyBlessCommandFee", 0); loadIntConfig(L, CHECK_EXPIRED_MARKET_OFFERS_EACH_MINUTES, "checkExpiredMarketOffersEachMinutes", 60); loadIntConfig(L, COMBAT_CHAIN_DELAY, "combatChainDelay", 50); + loadIntConfig(L, COMBAT_CHAIN_TARGETS, "combatChainTargets", 5); loadIntConfig(L, COMPRESSION_LEVEL, "packetCompressionLevel", 6); loadIntConfig(L, CRITICALCHANCE, "criticalChance", 10); loadIntConfig(L, DAY_KILLS_TO_RED, "dayKillsToRedSkull", 3); diff --git a/src/creatures/combat/combat.cpp b/src/creatures/combat/combat.cpp index 36b90ca1eba..e958ae49983 100644 --- a/src/creatures/combat/combat.cpp +++ b/src/creatures/combat/combat.cpp @@ -510,6 +510,7 @@ bool Combat::setCallback(CallBackParam_t key) { case CALLBACK_PARAM_CHAINVALUE: { params.chainCallback = std::make_unique(); + params.chainCallback->setFromLua(true); return true; } @@ -521,6 +522,11 @@ bool Combat::setCallback(CallBackParam_t key) { return false; } +void Combat::setChainCallback(uint8_t chainTargets, uint8_t chainDistance, bool backtracking) { + params.chainCallback = std::make_unique(chainTargets, chainDistance, backtracking); + g_logger().debug("ChainCallback created: {}, with targets: {}, distance: {}, backtracking: {}", params.chainCallback != nullptr, chainTargets, chainDistance, backtracking); +} + CallBack* Combat::getCallback(CallBackParam_t key) { switch (key) { case CALLBACK_PARAM_LEVELMAGICVALUE: @@ -930,6 +936,116 @@ void Combat::doChainEffect(const Position &origin, const Position &dest, uint8_t } } +void Combat::setupChain(const std::shared_ptr &weapon) { + if (!weapon) { + return; + } + + static std::list areaList = { + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 3, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + }; + auto area = std::make_unique(); + area->setupArea(areaList, 7); + setArea(area); + g_logger().trace("Weapon: {}, element type: {}", Item::items[weapon->getID()].name, weapon->params.combatType); + setParam(COMBAT_PARAM_TYPE, weapon->params.combatType); + const auto &weaponType = weapon->getWeaponType(); + if (weaponType != WEAPON_WAND) { + setParam(COMBAT_PARAM_BLOCKARMOR, true); + } + + weapon->params.chainCallback = std::make_unique(); + + auto setCommonValues = [this, weapon](double formula, SoundEffect_t impactSound, uint32_t effect) { + double weaponSkillFormula = weapon->getChainSkillValue(); + setPlayerCombatValues(COMBAT_FORMULA_SKILL, 0, 0, weaponSkillFormula ? weaponSkillFormula : formula, 0); + setParam(COMBAT_PARAM_IMPACTSOUND, impactSound); + setParam(COMBAT_PARAM_EFFECT, effect); + setParam(COMBAT_PARAM_BLOCKARMOR, true); + }; + + setChainCallback(g_configManager().getNumber(COMBAT_CHAIN_TARGETS, __FUNCTION__), 1, true); + + switch (weaponType) { + case WEAPON_SWORD: + setCommonValues(1.1, MELEE_ATK_SWORD, CONST_ME_SLASH); + break; + + case WEAPON_CLUB: + setCommonValues(0.7, MELEE_ATK_CLUB, CONST_ME_BLACK_BLOOD); + break; + + case WEAPON_AXE: + setCommonValues(0.9, MELEE_ATK_AXE, CONST_ANI_WHIRLWINDAXE); + break; + } + + if (weaponType == WEAPON_WAND) { + static const std::map> elementEffects = { + { COMBAT_DEATHDAMAGE, { CONST_ME_MORTAREA, CONST_ME_BLACK_BLOOD } }, + { COMBAT_ENERGYDAMAGE, { CONST_ME_ENERGYAREA, CONST_ME_PINK_ENERGY_SPARK } }, + { COMBAT_FIREDAMAGE, { CONST_ME_FIREATTACK, CONST_ME_FIREATTACK } }, + { COMBAT_ICEDAMAGE, { CONST_ME_ICEATTACK, CONST_ME_ICEATTACK } }, + { COMBAT_EARTHDAMAGE, { CONST_ME_STONES, CONST_ME_POISONAREA } }, + }; + + auto it = elementEffects.find(weapon->getElementType()); + if (it != elementEffects.end()) { + setPlayerCombatValues(COMBAT_FORMULA_SKILL, 0, 0, 1.0, 0); + setParam(COMBAT_PARAM_EFFECT, it->second.first); + setParam(COMBAT_PARAM_CHAIN_EFFECT, it->second.second); + } + } +} + bool Combat::doCombatChain(std::shared_ptr caster, std::shared_ptr target, bool aggressive) const { metrics::method_latency measure(__METHOD_NAME__); if (!params.chainCallback) { @@ -939,7 +1055,7 @@ bool Combat::doCombatChain(std::shared_ptr caster, std::shared_ptronChainCombat(caster, maxTargets, chainDistance, backtracking); + params.chainCallback->getChainValues(caster, maxTargets, chainDistance, backtracking); auto targets = pickChainTargets(caster, params, chainDistance, maxTargets, backtracking, aggressive, target); g_logger().debug("[{}] Chain targets: {}", __FUNCTION__, targets.size()); @@ -1476,42 +1592,16 @@ void ValueCallback::getMinMaxValues(std::shared_ptr player, CombatDamage case COMBAT_FORMULA_SKILL: { // onGetPlayerMinMaxValues(player, attackSkill, attackValue, attackFactor) std::shared_ptr tool = player->getWeapon(); - const WeaponShared_ptr weapon = g_weapons().getWeapon(tool); - std::shared_ptr item = nullptr; - + const auto &weapon = g_weapons().getWeapon(tool); + int32_t attackSkill = 0; + float attackFactor = 0; if (weapon) { - attackValue = tool->getAttack(); - if (tool->getWeaponType() == WEAPON_AMMO) { - item = player->getWeapon(true); - if (item) { - attackValue += item->getAttack(); - } - } - - CombatType_t elementType = weapon->getElementType(); - damage.secondary.type = elementType; - - if (elementType != COMBAT_NONE) { - if (weapon) { - elementAttack = weapon->getElementDamageValue(); - shouldCalculateSecondaryDamage = true; - attackValue += elementAttack; - } - } else { - shouldCalculateSecondaryDamage = false; - } - - if (useCharges) { - auto charges = tool->getAttribute(ItemAttribute_t::CHARGES); - if (charges != 0) { - g_game().transformItem(tool, tool->getID(), charges - 1); - } - } + shouldCalculateSecondaryDamage = weapon->calculateSkillFormula(player, attackSkill, attackValue, attackFactor, elementAttack, damage, useCharges); } - lua_pushnumber(L, player->getWeaponSkill(item ? item : tool)); + lua_pushnumber(L, attackSkill); lua_pushnumber(L, attackValue); - lua_pushnumber(L, player->getAttackFactor()); + lua_pushnumber(L, attackFactor); parameters += 3; break; } @@ -1635,7 +1725,19 @@ void TargetCallback::onTargetCombat(std::shared_ptr creature, std::sha //**********************************************************// -void ChainCallback::onChainCombat(std::shared_ptr creature, uint8_t &maxTargets, uint8_t &chainDistance, bool &backtracking) const { +void ChainCallback::getChainValues(const std::shared_ptr &creature, uint8_t &maxTargets, uint8_t &chainDistance, bool &backtracking) { + if (m_fromLua) { + onChainCombat(creature, maxTargets, chainDistance, backtracking); + return; + } + + if (m_chainTargets && m_chainDistance) { + maxTargets = m_chainTargets; + chainDistance = m_chainDistance; + backtracking = m_backtracking; + } +} +void ChainCallback::onChainCombat(std::shared_ptr creature, uint8_t &maxTargets, uint8_t &chainDistance, bool &backtracking) { // onChainCombat(creature) if (!scriptInterface->reserveScriptEnv()) { g_logger().error("[ChainCallback::onTargetCombat - Creature {}] " diff --git a/src/creatures/combat/combat.hpp b/src/creatures/combat/combat.hpp index c7d886a7fd2..6a79455c7c4 100644 --- a/src/creatures/combat/combat.hpp +++ b/src/creatures/combat/combat.hpp @@ -20,6 +20,7 @@ class Item; class Spell; class Player; class MatrixArea; +class Weapon; // for luascript callback class ValueCallback final : public CallBack { @@ -59,7 +60,22 @@ class TargetCallback final : public CallBack { class ChainCallback final : public CallBack { public: - void onChainCombat(std::shared_ptr creature, uint8_t &chainTargets, uint8_t &chainDistance, bool &backtracking) const; + ChainCallback() = default; + ChainCallback(uint8_t &chainTargets, uint8_t &chainDistance, bool &backtracking) : + m_chainDistance(chainDistance), m_chainTargets(chainTargets), m_backtracking(backtracking) { } + + void getChainValues(const std::shared_ptr &creature, uint8_t &maxTargets, uint8_t &chainDistance, bool &backtracking); + void setFromLua(bool fromLua) { + m_fromLua = fromLua; + } + +private: + void onChainCombat(std::shared_ptr creature, uint8_t &chainTargets, uint8_t &chainDistance, bool &backtracking); + + uint8_t m_chainTargets = 0; + uint8_t m_chainDistance = 0; + bool m_backtracking = false; + bool m_fromLua = false; }; class ChainPickerCallback final : public CallBack { @@ -293,6 +309,7 @@ class Combat { bool doCombat(std::shared_ptr caster, const Position &pos) const; bool setCallback(CallBackParam_t key); + void setChainCallback(uint8_t chainTargets, uint8_t chainDistance, bool backtracking); CallBack* getCallback(CallBackParam_t key); bool setParam(CombatParam_t param, uint32_t value); @@ -328,6 +345,9 @@ class Combat { */ void setRuneSpellName(const std::string &value); + void setupChain(const std::shared_ptr &weapon); + bool doCombatChain(std::shared_ptr caster, std::shared_ptr target, bool aggressive) const; + private: static void doChainEffect(const Position &origin, const Position &pos, uint8_t effect); static std::vector>> pickChainTargets(std::shared_ptr caster, const CombatParams ¶ms, uint8_t chainDistance, uint8_t maxTargets, bool aggressive, bool backtracking, std::shared_ptr initialTarget = nullptr); @@ -376,8 +396,6 @@ class Combat { int32_t getLevelFormula(std::shared_ptr player, const std::shared_ptr wheelSpell, const CombatDamage &damage) const; CombatDamage getCombatDamage(std::shared_ptr creature, std::shared_ptr target) const; - bool doCombatChain(std::shared_ptr caster, std::shared_ptr target, bool aggressive) const; - // configureable CombatParams params; diff --git a/src/items/functions/item/item_parse.cpp b/src/items/functions/item/item_parse.cpp index f5eff0f5941..365cda202ce 100644 --- a/src/items/functions/item/item_parse.cpp +++ b/src/items/functions/item/item_parse.cpp @@ -13,6 +13,7 @@ #include "items/weapons/weapons.hpp" #include "lua/creature/movement.hpp" #include "utils/pugicast.hpp" +#include "creatures/combat/combat.hpp" void ItemParse::initParse(const std::string &tmpStrValue, pugi::xml_node attributeNode, pugi::xml_attribute valueAttribute, ItemType &itemType) { // Parse all item attributes @@ -1003,10 +1004,11 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri } else { weapon = std::make_shared(&g_weapons().getScriptInterface()); } + weapon->weaponType = weaponType; itemType.weaponType = weapon->weaponType; weapon->configureWeapon(itemType); - g_logger().debug("Created weapon with type '{}'", getWeaponName(weaponType)); + g_logger().trace("Created weapon with type '{}'", getWeaponName(weaponType)); } uint32_t fromDamage = 0; uint32_t toDamage = 0; @@ -1063,11 +1065,11 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri } else if (stringKey == "level") { auto numberValue = subValueAttribute.as_uint(); if (moveevent) { - g_logger().debug("Added required moveevent level '{}'", numberValue); + g_logger().trace("Added required moveevent level '{}'", numberValue); moveevent->setRequiredLevel(numberValue); moveevent->setWieldInfo(WIELDINFO_LEVEL); } else if (weapon) { - g_logger().debug("Added required weapon level '{}'", numberValue); + g_logger().trace("Added required weapon level '{}'", numberValue); weapon->setRequiredLevel(numberValue); weapon->setWieldInfo(WIELDINFO_LEVEL); } @@ -1162,16 +1164,25 @@ void ItemParse::createAndRegisterScript(ItemType &itemType, pugi::xml_node attri } else { g_logger().warn("[{}] - wandtype '{}' does not exist", __FUNCTION__, elementName); } + } else if (stringKey == "chain" && weapon) { + auto value = subValueAttribute.as_double(); + weapon->setChainSkillValue(value); + g_logger().trace("Found chain skill value '{}' for weapon: {}", value, itemType.name); } } if (weapon) { if (auto weaponWand = dynamic_pointer_cast(weapon)) { - g_logger().debug("Added weapon damage from '{}', to '{}'", fromDamage, toDamage); + g_logger().trace("Added weapon damage from '{}', to '{}'", fromDamage, toDamage); weaponWand->setMinChange(fromDamage); weaponWand->setMaxChange(toDamage); } + auto combat = weapon->getCombat(); + if (combat) { + combat->setupChain(weapon); + } + if (weapon->getWieldInfo() != 0) { itemType.wieldInfo = weapon->getWieldInfo(); itemType.vocationString = weapon->getVocationString(); @@ -1195,7 +1206,7 @@ void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi:: auto tokens = split(scriptName.data(), ';'); for (const auto &token : tokens) { if (token == "moveevent") { - g_logger().debug("Registering moveevent for item id '{}', name '{}'", itemType.id, itemType.name); + g_logger().trace("Registering moveevent for item id '{}', name '{}'", itemType.id, itemType.name); MoveEvent_t eventType = MOVE_EVENT_NONE; for (auto subAttributeNode : attributeNode.children()) { pugi::xml_attribute subKeyAttribute = subAttributeNode.attribute("key"); @@ -1212,7 +1223,7 @@ void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi:: if (stringKey == "eventtype") { const auto &eventTypeName = asLowerCaseString(subValueAttribute.as_string()); eventType = getMoveEventType(eventTypeName); - g_logger().debug("Found event type '{}'", eventTypeName); + g_logger().trace("Found event type '{}'", eventTypeName); break; } } @@ -1226,7 +1237,7 @@ void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi:: } } else if (token == "weapon") { WeaponType_t weaponType; - g_logger().debug("Registering weapon for item id '{}', name '{}'", itemType.id, itemType.name); + g_logger().trace("Registering weapon for item id '{}', name '{}'", itemType.id, itemType.name); for (auto subAttributeNode : attributeNode.children()) { pugi::xml_attribute subKeyAttribute = subAttributeNode.attribute("key"); if (!subKeyAttribute) { @@ -1241,7 +1252,7 @@ void ItemParse::parseUnscriptedItems(const std::string_view &tmpStrValue, pugi:: auto stringKey = asLowerCaseString(subKeyAttribute.as_string()); if (stringKey == "weapontype") { weaponType = getWeaponType(subValueAttribute.as_string()); - g_logger().debug("Found weapon type '{}''", subValueAttribute.as_string()); + g_logger().trace("Found weapon type '{}''", subValueAttribute.as_string()); break; } } diff --git a/src/items/weapons/weapons.cpp b/src/items/weapons/weapons.cpp index 66c2cb5f278..ba56dc93885 100644 --- a/src/items/weapons/weapons.cpp +++ b/src/items/weapons/weapons.cpp @@ -212,6 +212,7 @@ void Weapon::internalUseWeapon(std::shared_ptr player, std::shared_ptrgetID(); executeUseWeapon(player, var); + g_logger().debug("Weapon::internalUseWeapon - Lua callback executed."); } else { CombatDamage damage; WeaponType_t weaponType = item->getWeaponType(); @@ -222,6 +223,7 @@ void Weapon::internalUseWeapon(std::shared_ptr player, std::shared_ptr player, std::shared_ptrdoCombatChain(player, target, params.aggressive); + } else { + Combat::doCombatHealth(player, target, damage, params); + } + g_logger().debug("Weapon::internalUseWeapon - cpp callback executed."); } onUsedWeapon(player, item, target->getTile()); @@ -378,6 +389,43 @@ void Weapon::decrementItemCount(std::shared_ptr item) { } } +bool Weapon::calculateSkillFormula(const std::shared_ptr &player, int32_t &attackSkill, int32_t &attackValue, float &attackFactor, int16_t &elementAttack, CombatDamage &damage, bool useCharges /* = false*/) const { + std::shared_ptr tool = player->getWeapon(); + if (!tool) { + return false; + } + + std::shared_ptr item = nullptr; + attackValue = tool->getAttack(); + if (tool->getWeaponType() == WEAPON_AMMO) { + item = player->getWeapon(true); + if (item) { + attackValue += item->getAttack(); + } + } + + CombatType_t elementType = getElementType(); + damage.secondary.type = elementType; + + bool shouldCalculateSecondaryDamage = false; + if (elementType != COMBAT_NONE) { + elementAttack = getElementDamageValue(); + shouldCalculateSecondaryDamage = true; + attackValue += elementAttack; + } + + if (useCharges) { + auto charges = tool->getAttribute(ItemAttribute_t::CHARGES); + if (charges != 0) { + g_game().transformItem(tool, tool->getID(), charges - 1); + } + } + + attackSkill = player->getWeaponSkill(item ? item : tool); + attackFactor = player->getAttackFactor(); + return shouldCalculateSecondaryDamage; +} + WeaponMelee::WeaponMelee(LuaScriptInterface* interface) : Weapon(interface) { // Add combat type and blocked attributes to the weapon @@ -835,11 +883,27 @@ void WeaponWand::configureWeapon(const ItemType &it) { Weapon::configureWeapon(it); } -int32_t WeaponWand::getWeaponDamage(std::shared_ptr, std::shared_ptr, std::shared_ptr, bool maxDamage /*= false*/) const { - if (maxDamage) { - return -maxChange; +int32_t WeaponWand::getWeaponDamage(std::shared_ptr player, std::shared_ptr, std::shared_ptr, bool maxDamage /* = false*/) const { + if (!g_configManager().getBoolean(TOGGLE_CHAIN_SYSTEM, __FUNCTION__)) { + // Returns maximum damage or a random value between minChange and maxChange + return maxDamage ? -maxChange : -normal_random(minChange, maxChange); } - return -normal_random(minChange, maxChange); + + // If chain system is enabled, calculates magic-based damage + int32_t attackSkill; + int32_t attackValue; + float attackFactor; + [[maybe_unused]] int16_t elementAttack; + [[maybe_unused]] CombatDamage combatDamage; + calculateSkillFormula(player, attackSkill, attackValue, attackFactor, elementAttack, combatDamage); + + auto magLevel = player->getMagicLevel(); + auto level = player->getLevel(); + double min = (level / 5.0) + (magLevel + attackValue) / 3.0; + double max = (level / 5.0) + (magLevel + attackValue); + + // Returns the calculated maximum damage or a random value between the calculated minimum and maximum + return maxDamage ? -max : -normal_random(min, max); } int16_t WeaponWand::getElementDamageValue() const { diff --git a/src/items/weapons/weapons.hpp b/src/items/weapons/weapons.hpp index 5a840bd4e64..2cf97568aef 100644 --- a/src/items/weapons/weapons.hpp +++ b/src/items/weapons/weapons.hpp @@ -184,6 +184,37 @@ class Weapon : public Script { return m_fromXML; } + void setChainSkillValue(double value) { + m_chainSkillValue = value; + } + + double getChainSkillValue() const { + return m_chainSkillValue; + } + + const WeaponType_t getWeaponType() const { + return weaponType; + } + + const std::shared_ptr getCombat() const { + if (!m_combat) { + g_logger().error("Weapon::getCombat() - m_combat is nullptr"); + return nullptr; + } + + return m_combat; + } + + std::shared_ptr getCombat() { + if (!m_combat) { + m_combat = std::make_shared(); + } + + return m_combat; + } + + bool calculateSkillFormula(const std::shared_ptr &player, int32_t &attackSkill, int32_t &attackValue, float &attackFactor, int16_t &elementAttack, CombatDamage &damage, bool useCharges = false) const; + protected: void internalUseWeapon(std::shared_ptr player, std::shared_ptr item, std::shared_ptr target, int32_t damageModifier, int32_t cleavePercent = 0) const; void internalUseWeapon(std::shared_ptr player, std::shared_ptr item, std::shared_ptr tile) const; @@ -207,6 +238,7 @@ class Weapon : public Script { uint32_t healthPercent = 0; uint32_t soul = 0; uint32_t wieldInfo = WIELDINFO_NONE; + double m_chainSkillValue = 0.0; uint8_t breakChance = 0; bool enabled = true; bool premium = false; @@ -221,6 +253,7 @@ class Weapon : public Script { CombatParams params; WeaponType_t weaponType; std::map vocWeaponMap; + std::shared_ptr m_combat; bool m_fromXML = false; @@ -301,7 +334,7 @@ class WeaponWand final : public Weapon { return 0; } CombatType_t getElementType() const override { - return COMBAT_NONE; + return params.combatType; } virtual int16_t getElementDamageValue() const override; void setMinChange(int32_t change) { From e2b8e54e621e0b4f2ee35561ee5c7c995539d733 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Wed, 28 Feb 2024 19:26:48 -0300 Subject: [PATCH 08/10] fix: remove testing logs --- src/items/weapons/weapons.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/items/weapons/weapons.cpp b/src/items/weapons/weapons.cpp index ba56dc93885..25287ca9f92 100644 --- a/src/items/weapons/weapons.cpp +++ b/src/items/weapons/weapons.cpp @@ -239,16 +239,12 @@ void Weapon::internalUseWeapon(std::shared_ptr player, std::shared_ptrdoCombatChain(player, target, params.aggressive); } else { From 656ddba080a15f403c48646d6670bc16ff26c392 Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Wed, 28 Feb 2024 19:47:57 -0300 Subject: [PATCH 09/10] fix: disable clang --- .clang-format | 4 +- src/account/account_repository_db.cpp | 4 +- src/creatures/combat/combat.cpp | 58 +- src/items/items.cpp | 6 +- src/protobuf/appearances.pb.h | 23511 ++++++++++++------------ src/protobuf/kv.pb.h | 2866 +-- 6 files changed, 13700 insertions(+), 12749 deletions(-) diff --git a/.clang-format b/.clang-format index 2e0a78842d6..de45e1b2e7a 100644 --- a/.clang-format +++ b/.clang-format @@ -24,12 +24,13 @@ AlwaysBreakBeforeMultilineStrings: false AlwaysBreakTemplateDeclarations: MultiLine BinPackArguments: true BinPackParameters: true +BreakBeforeBraces: Custom BraceWrapping: AfterCaseLabel: false AfterClass: false AfterControlStatement: false AfterEnum: false - AfterFunction: true + AfterFunction: false AfterNamespace: false AfterObjCDeclaration: false AfterStruct: false @@ -42,7 +43,6 @@ BraceWrapping: SplitEmptyRecord: true SplitEmptyNamespace: true BreakBeforeBinaryOperators: All -BreakBeforeBraces: Attach BreakBeforeInheritanceComma: false BreakInheritanceList: BeforeColon BreakBeforeTernaryOperators: true diff --git a/src/account/account_repository_db.cpp b/src/account/account_repository_db.cpp index cfe1f1d05be..b150a636a97 100644 --- a/src/account/account_repository_db.cpp +++ b/src/account/account_repository_db.cpp @@ -20,9 +20,7 @@ #include "account/account_info.hpp" AccountRepositoryDB::AccountRepositoryDB() : - coinTypeToColumn({ { enumToValue(CoinType::Normal), "coins" }, - { enumToValue(CoinType::Tournament), "tournament_coins" }, - { enumToValue(CoinType::Transferable), "coins_transferable" } }) { } + coinTypeToColumn({ { enumToValue(CoinType::Normal), "coins" }, { enumToValue(CoinType::Tournament), "tournament_coins" }, { enumToValue(CoinType::Transferable), "coins_transferable" } }) { } bool AccountRepositoryDB::loadByID(const uint32_t &id, AccountInfo &acc) { auto query = fmt::format("SELECT `id`, `type`, `premdays`, `lastday`, `creation`, `premdays_purchased`, 0 AS `expires` FROM `accounts` WHERE `id` = {}", id); diff --git a/src/creatures/combat/combat.cpp b/src/creatures/combat/combat.cpp index e958ae49983..7456f572938 100644 --- a/src/creatures/combat/combat.cpp +++ b/src/creatures/combat/combat.cpp @@ -941,57 +941,17 @@ void Combat::setupChain(const std::shared_ptr &weapon) { return; } + // clang-format off static std::list areaList = { - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 1, - 1, - 1, - 1, - 1, - 0, - 1, - 1, - 1, - 3, - 1, - 1, - 1, - 0, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, + 0, 0, 0, 1, 0, 0, 0, + 0, 1, 1, 1, 1, 1, 0, + 0, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 3, 1, 1, 1, + 0, 1, 1, 1, 1, 1, 0, + 0, 1, 1, 1, 1, 1, 0, + 0, 0, 0, 1, 0, 0, 0, }; + // clang-format on auto area = std::make_unique(); area->setupArea(areaList, 7); setArea(area); diff --git a/src/items/items.cpp b/src/items/items.cpp index 089a9e6ba19..9e31f5f105f 100644 --- a/src/items/items.cpp +++ b/src/items/items.cpp @@ -188,8 +188,7 @@ void Items::loadFromProtobuf() { iType.isWrapKit = object.flags().wrapkit(); if (!iType.name.empty()) { - nameToItems.insert({ asLowerCaseString(iType.name), - iType.id }); + nameToItems.insert({ asLowerCaseString(iType.name), iType.id }); } } @@ -273,8 +272,7 @@ void Items::parseItemNode(const pugi::xml_node &itemNode, uint16_t id) { } itemType.name = xmlName; - nameToItems.insert({ asLowerCaseString(itemType.name), - id }); + nameToItems.insert({ asLowerCaseString(itemType.name), id }); } itemType.loaded = true; diff --git a/src/protobuf/appearances.pb.h b/src/protobuf/appearances.pb.h index 65bc2c7e9cc..78eb095bbdb 100644 --- a/src/protobuf/appearances.pb.h +++ b/src/protobuf/appearances.pb.h @@ -9,14 +9,14 @@ #include #if PROTOBUF_VERSION < 3021000 -#error This file was generated by a newer version of protoc which is -#error incompatible with your Protocol Buffer headers. Please update -#error your headers. + #error This file was generated by a newer version of protoc which is + #error incompatible with your Protocol Buffer headers. Please update + #error your headers. #endif #if 3021012 < PROTOBUF_MIN_PROTOC_VERSION -#error This file was generated by an older version of protoc which is -#error incompatible with your Protocol Buffer headers. Please -#error regenerate this file with a newer version of protoc. + #error This file was generated by an older version of protoc which is + #error incompatible with your Protocol Buffer headers. Please + #error regenerate this file with a newer version of protoc. #endif #include @@ -27,8 +27,8 @@ #include #include #include -#include // IWYU pragma: export -#include // IWYU pragma: export +#include // IWYU pragma: export +#include // IWYU pragma: export #include #include // @@protoc_insertion_point(includes) @@ -36,11466 +36,12369 @@ #define PROTOBUF_INTERNAL_EXPORT_appearances_2eproto PROTOBUF_NAMESPACE_OPEN namespace internal { -class AnyMetadata; -} // namespace internal + class AnyMetadata; +} // namespace internal PROTOBUF_NAMESPACE_CLOSE // Internal implementation detail -- do not use these members. struct TableStruct_appearances_2eproto { - static const uint32_t offsets[]; + static const uint32_t offsets[]; }; extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_appearances_2eproto; namespace Canary { -namespace protobuf { -namespace appearances { -class Appearance; -struct AppearanceDefaultTypeInternal; -extern AppearanceDefaultTypeInternal _Appearance_default_instance_; -class AppearanceFlagAutomap; -struct AppearanceFlagAutomapDefaultTypeInternal; -extern AppearanceFlagAutomapDefaultTypeInternal _AppearanceFlagAutomap_default_instance_; -class AppearanceFlagBank; -struct AppearanceFlagBankDefaultTypeInternal; -extern AppearanceFlagBankDefaultTypeInternal _AppearanceFlagBank_default_instance_; -class AppearanceFlagChangedToExpire; -struct AppearanceFlagChangedToExpireDefaultTypeInternal; -extern AppearanceFlagChangedToExpireDefaultTypeInternal _AppearanceFlagChangedToExpire_default_instance_; -class AppearanceFlagClothes; -struct AppearanceFlagClothesDefaultTypeInternal; -extern AppearanceFlagClothesDefaultTypeInternal _AppearanceFlagClothes_default_instance_; -class AppearanceFlagCyclopedia; -struct AppearanceFlagCyclopediaDefaultTypeInternal; -extern AppearanceFlagCyclopediaDefaultTypeInternal _AppearanceFlagCyclopedia_default_instance_; -class AppearanceFlagDefaultAction; -struct AppearanceFlagDefaultActionDefaultTypeInternal; -extern AppearanceFlagDefaultActionDefaultTypeInternal _AppearanceFlagDefaultAction_default_instance_; -class AppearanceFlagHeight; -struct AppearanceFlagHeightDefaultTypeInternal; -extern AppearanceFlagHeightDefaultTypeInternal _AppearanceFlagHeight_default_instance_; -class AppearanceFlagHook; -struct AppearanceFlagHookDefaultTypeInternal; -extern AppearanceFlagHookDefaultTypeInternal _AppearanceFlagHook_default_instance_; -class AppearanceFlagLenshelp; -struct AppearanceFlagLenshelpDefaultTypeInternal; -extern AppearanceFlagLenshelpDefaultTypeInternal _AppearanceFlagLenshelp_default_instance_; -class AppearanceFlagLight; -struct AppearanceFlagLightDefaultTypeInternal; -extern AppearanceFlagLightDefaultTypeInternal _AppearanceFlagLight_default_instance_; -class AppearanceFlagMarket; -struct AppearanceFlagMarketDefaultTypeInternal; -extern AppearanceFlagMarketDefaultTypeInternal _AppearanceFlagMarket_default_instance_; -class AppearanceFlagNPC; -struct AppearanceFlagNPCDefaultTypeInternal; -extern AppearanceFlagNPCDefaultTypeInternal _AppearanceFlagNPC_default_instance_; -class AppearanceFlagShift; -struct AppearanceFlagShiftDefaultTypeInternal; -extern AppearanceFlagShiftDefaultTypeInternal _AppearanceFlagShift_default_instance_; -class AppearanceFlagUpgradeClassification; -struct AppearanceFlagUpgradeClassificationDefaultTypeInternal; -extern AppearanceFlagUpgradeClassificationDefaultTypeInternal _AppearanceFlagUpgradeClassification_default_instance_; -class AppearanceFlagWrite; -struct AppearanceFlagWriteDefaultTypeInternal; -extern AppearanceFlagWriteDefaultTypeInternal _AppearanceFlagWrite_default_instance_; -class AppearanceFlagWriteOnce; -struct AppearanceFlagWriteOnceDefaultTypeInternal; -extern AppearanceFlagWriteOnceDefaultTypeInternal _AppearanceFlagWriteOnce_default_instance_; -class AppearanceFlags; -struct AppearanceFlagsDefaultTypeInternal; -extern AppearanceFlagsDefaultTypeInternal _AppearanceFlags_default_instance_; -class Appearances; -struct AppearancesDefaultTypeInternal; -extern AppearancesDefaultTypeInternal _Appearances_default_instance_; -class Box; -struct BoxDefaultTypeInternal; -extern BoxDefaultTypeInternal _Box_default_instance_; -class Coordinate; -struct CoordinateDefaultTypeInternal; -extern CoordinateDefaultTypeInternal _Coordinate_default_instance_; -class FrameGroup; -struct FrameGroupDefaultTypeInternal; -extern FrameGroupDefaultTypeInternal _FrameGroup_default_instance_; -class SpecialMeaningAppearanceIds; -struct SpecialMeaningAppearanceIdsDefaultTypeInternal; -extern SpecialMeaningAppearanceIdsDefaultTypeInternal _SpecialMeaningAppearanceIds_default_instance_; -class SpriteAnimation; -struct SpriteAnimationDefaultTypeInternal; -extern SpriteAnimationDefaultTypeInternal _SpriteAnimation_default_instance_; -class SpriteInfo; -struct SpriteInfoDefaultTypeInternal; -extern SpriteInfoDefaultTypeInternal _SpriteInfo_default_instance_; -class SpritePhase; -struct SpritePhaseDefaultTypeInternal; -extern SpritePhaseDefaultTypeInternal _SpritePhase_default_instance_; -} // namespace appearances -} // namespace protobuf -} // namespace Canary + namespace protobuf { + namespace appearances { + class Appearance; + struct AppearanceDefaultTypeInternal; + extern AppearanceDefaultTypeInternal _Appearance_default_instance_; + class AppearanceFlagAutomap; + struct AppearanceFlagAutomapDefaultTypeInternal; + extern AppearanceFlagAutomapDefaultTypeInternal _AppearanceFlagAutomap_default_instance_; + class AppearanceFlagBank; + struct AppearanceFlagBankDefaultTypeInternal; + extern AppearanceFlagBankDefaultTypeInternal _AppearanceFlagBank_default_instance_; + class AppearanceFlagChangedToExpire; + struct AppearanceFlagChangedToExpireDefaultTypeInternal; + extern AppearanceFlagChangedToExpireDefaultTypeInternal _AppearanceFlagChangedToExpire_default_instance_; + class AppearanceFlagClothes; + struct AppearanceFlagClothesDefaultTypeInternal; + extern AppearanceFlagClothesDefaultTypeInternal _AppearanceFlagClothes_default_instance_; + class AppearanceFlagCyclopedia; + struct AppearanceFlagCyclopediaDefaultTypeInternal; + extern AppearanceFlagCyclopediaDefaultTypeInternal _AppearanceFlagCyclopedia_default_instance_; + class AppearanceFlagDefaultAction; + struct AppearanceFlagDefaultActionDefaultTypeInternal; + extern AppearanceFlagDefaultActionDefaultTypeInternal _AppearanceFlagDefaultAction_default_instance_; + class AppearanceFlagHeight; + struct AppearanceFlagHeightDefaultTypeInternal; + extern AppearanceFlagHeightDefaultTypeInternal _AppearanceFlagHeight_default_instance_; + class AppearanceFlagHook; + struct AppearanceFlagHookDefaultTypeInternal; + extern AppearanceFlagHookDefaultTypeInternal _AppearanceFlagHook_default_instance_; + class AppearanceFlagLenshelp; + struct AppearanceFlagLenshelpDefaultTypeInternal; + extern AppearanceFlagLenshelpDefaultTypeInternal _AppearanceFlagLenshelp_default_instance_; + class AppearanceFlagLight; + struct AppearanceFlagLightDefaultTypeInternal; + extern AppearanceFlagLightDefaultTypeInternal _AppearanceFlagLight_default_instance_; + class AppearanceFlagMarket; + struct AppearanceFlagMarketDefaultTypeInternal; + extern AppearanceFlagMarketDefaultTypeInternal _AppearanceFlagMarket_default_instance_; + class AppearanceFlagNPC; + struct AppearanceFlagNPCDefaultTypeInternal; + extern AppearanceFlagNPCDefaultTypeInternal _AppearanceFlagNPC_default_instance_; + class AppearanceFlagShift; + struct AppearanceFlagShiftDefaultTypeInternal; + extern AppearanceFlagShiftDefaultTypeInternal _AppearanceFlagShift_default_instance_; + class AppearanceFlagUpgradeClassification; + struct AppearanceFlagUpgradeClassificationDefaultTypeInternal; + extern AppearanceFlagUpgradeClassificationDefaultTypeInternal _AppearanceFlagUpgradeClassification_default_instance_; + class AppearanceFlagWrite; + struct AppearanceFlagWriteDefaultTypeInternal; + extern AppearanceFlagWriteDefaultTypeInternal _AppearanceFlagWrite_default_instance_; + class AppearanceFlagWriteOnce; + struct AppearanceFlagWriteOnceDefaultTypeInternal; + extern AppearanceFlagWriteOnceDefaultTypeInternal _AppearanceFlagWriteOnce_default_instance_; + class AppearanceFlags; + struct AppearanceFlagsDefaultTypeInternal; + extern AppearanceFlagsDefaultTypeInternal _AppearanceFlags_default_instance_; + class Appearances; + struct AppearancesDefaultTypeInternal; + extern AppearancesDefaultTypeInternal _Appearances_default_instance_; + class Box; + struct BoxDefaultTypeInternal; + extern BoxDefaultTypeInternal _Box_default_instance_; + class Coordinate; + struct CoordinateDefaultTypeInternal; + extern CoordinateDefaultTypeInternal _Coordinate_default_instance_; + class FrameGroup; + struct FrameGroupDefaultTypeInternal; + extern FrameGroupDefaultTypeInternal _FrameGroup_default_instance_; + class SpecialMeaningAppearanceIds; + struct SpecialMeaningAppearanceIdsDefaultTypeInternal; + extern SpecialMeaningAppearanceIdsDefaultTypeInternal _SpecialMeaningAppearanceIds_default_instance_; + class SpriteAnimation; + struct SpriteAnimationDefaultTypeInternal; + extern SpriteAnimationDefaultTypeInternal _SpriteAnimation_default_instance_; + class SpriteInfo; + struct SpriteInfoDefaultTypeInternal; + extern SpriteInfoDefaultTypeInternal _SpriteInfo_default_instance_; + class SpritePhase; + struct SpritePhaseDefaultTypeInternal; + extern SpritePhaseDefaultTypeInternal _SpritePhase_default_instance_; + } // namespace appearances + } // namespace protobuf +} // namespace Canary PROTOBUF_NAMESPACE_OPEN -template<> ::Canary::protobuf::appearances::Appearance* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Appearance>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagAutomap* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagAutomap>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagBank* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagBank>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagChangedToExpire>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagClothes* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagClothes>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagCyclopedia>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagDefaultAction>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagHeight* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHeight>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagHook* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHook>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagLenshelp* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLenshelp>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagLight* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLight>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagMarket* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagMarket>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagNPC* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagNPC>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagShift* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagShift>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagWrite* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWrite>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWriteOnce>(Arena*); -template<> ::Canary::protobuf::appearances::AppearanceFlags* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlags>(Arena*); -template<> ::Canary::protobuf::appearances::Appearances* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Appearances>(Arena*); -template<> ::Canary::protobuf::appearances::Box* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Box>(Arena*); -template<> ::Canary::protobuf::appearances::Coordinate* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Coordinate>(Arena*); -template<> ::Canary::protobuf::appearances::FrameGroup* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::FrameGroup>(Arena*); -template<> ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpecialMeaningAppearanceIds>(Arena*); -template<> ::Canary::protobuf::appearances::SpriteAnimation* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpriteAnimation>(Arena*); -template<> ::Canary::protobuf::appearances::SpriteInfo* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpriteInfo>(Arena*); -template<> ::Canary::protobuf::appearances::SpritePhase* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpritePhase>(Arena*); +template <> +::Canary::protobuf::appearances::Appearance* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Appearance>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagAutomap* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagAutomap>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagBank* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagBank>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagChangedToExpire>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagClothes* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagClothes>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagCyclopedia* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagCyclopedia>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagDefaultAction* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagDefaultAction>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagHeight* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHeight>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagHook* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHook>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagLenshelp* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLenshelp>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagLight* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLight>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagMarket* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagMarket>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagNPC* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagNPC>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagShift* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagShift>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagWrite* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWrite>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlagWriteOnce* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWriteOnce>(Arena*); +template <> +::Canary::protobuf::appearances::AppearanceFlags* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlags>(Arena*); +template <> +::Canary::protobuf::appearances::Appearances* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Appearances>(Arena*); +template <> +::Canary::protobuf::appearances::Box* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Box>(Arena*); +template <> +::Canary::protobuf::appearances::Coordinate* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Coordinate>(Arena*); +template <> +::Canary::protobuf::appearances::FrameGroup* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::FrameGroup>(Arena*); +template <> +::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpecialMeaningAppearanceIds>(Arena*); +template <> +::Canary::protobuf::appearances::SpriteAnimation* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpriteAnimation>(Arena*); +template <> +::Canary::protobuf::appearances::SpriteInfo* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpriteInfo>(Arena*); +template <> +::Canary::protobuf::appearances::SpritePhase* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpritePhase>(Arena*); PROTOBUF_NAMESPACE_CLOSE namespace Canary { -namespace protobuf { -namespace appearances { - -enum PLAYER_ACTION : int { - PLAYER_ACTION_NONE = 0, - PLAYER_ACTION_LOOK = 1, - PLAYER_ACTION_USE = 2, - PLAYER_ACTION_OPEN = 3, - PLAYER_ACTION_AUTOWALK_HIGHLIGHT = 4 -}; -bool PLAYER_ACTION_IsValid(int value); -constexpr PLAYER_ACTION PLAYER_ACTION_MIN = PLAYER_ACTION_NONE; -constexpr PLAYER_ACTION PLAYER_ACTION_MAX = PLAYER_ACTION_AUTOWALK_HIGHLIGHT; -constexpr int PLAYER_ACTION_ARRAYSIZE = PLAYER_ACTION_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_ACTION_descriptor(); -template -inline const std::string& PLAYER_ACTION_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function PLAYER_ACTION_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - PLAYER_ACTION_descriptor(), enum_t_value); -} -inline bool PLAYER_ACTION_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PLAYER_ACTION* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - PLAYER_ACTION_descriptor(), name, value); -} -enum ITEM_CATEGORY : int { - ITEM_CATEGORY_ARMORS = 1, - ITEM_CATEGORY_AMULETS = 2, - ITEM_CATEGORY_BOOTS = 3, - ITEM_CATEGORY_CONTAINERS = 4, - ITEM_CATEGORY_DECORATION = 5, - ITEM_CATEGORY_FOOD = 6, - ITEM_CATEGORY_HELMETS_HATS = 7, - ITEM_CATEGORY_LEGS = 8, - ITEM_CATEGORY_OTHERS = 9, - ITEM_CATEGORY_POTIONS = 10, - ITEM_CATEGORY_RINGS = 11, - ITEM_CATEGORY_RUNES = 12, - ITEM_CATEGORY_SHIELDS = 13, - ITEM_CATEGORY_TOOLS = 14, - ITEM_CATEGORY_VALUABLES = 15, - ITEM_CATEGORY_AMMUNITION = 16, - ITEM_CATEGORY_AXES = 17, - ITEM_CATEGORY_CLUBS = 18, - ITEM_CATEGORY_DISTANCE_WEAPONS = 19, - ITEM_CATEGORY_SWORDS = 20, - ITEM_CATEGORY_WANDS_RODS = 21, - ITEM_CATEGORY_PREMIUM_SCROLLS = 22, - ITEM_CATEGORY_TIBIA_COINS = 23, - ITEM_CATEGORY_CREATURE_PRODUCTS = 24, - ITEM_CATEGORY_QUIVER = 25 -}; -bool ITEM_CATEGORY_IsValid(int value); -constexpr ITEM_CATEGORY ITEM_CATEGORY_MIN = ITEM_CATEGORY_ARMORS; -constexpr ITEM_CATEGORY ITEM_CATEGORY_MAX = ITEM_CATEGORY_QUIVER; -constexpr int ITEM_CATEGORY_ARRAYSIZE = ITEM_CATEGORY_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ITEM_CATEGORY_descriptor(); -template -inline const std::string& ITEM_CATEGORY_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ITEM_CATEGORY_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ITEM_CATEGORY_descriptor(), enum_t_value); -} -inline bool ITEM_CATEGORY_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ITEM_CATEGORY* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ITEM_CATEGORY_descriptor(), name, value); -} -enum PLAYER_PROFESSION : int { - PLAYER_PROFESSION_ANY = -1, - PLAYER_PROFESSION_NONE = 0, - PLAYER_PROFESSION_KNIGHT = 1, - PLAYER_PROFESSION_PALADIN = 2, - PLAYER_PROFESSION_SORCERER = 3, - PLAYER_PROFESSION_DRUID = 4, - PLAYER_PROFESSION_PROMOTED = 10 -}; -bool PLAYER_PROFESSION_IsValid(int value); -constexpr PLAYER_PROFESSION PLAYER_PROFESSION_MIN = PLAYER_PROFESSION_ANY; -constexpr PLAYER_PROFESSION PLAYER_PROFESSION_MAX = PLAYER_PROFESSION_PROMOTED; -constexpr int PLAYER_PROFESSION_ARRAYSIZE = PLAYER_PROFESSION_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_PROFESSION_descriptor(); -template -inline const std::string& PLAYER_PROFESSION_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function PLAYER_PROFESSION_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - PLAYER_PROFESSION_descriptor(), enum_t_value); -} -inline bool PLAYER_PROFESSION_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PLAYER_PROFESSION* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - PLAYER_PROFESSION_descriptor(), name, value); -} -enum ANIMATION_LOOP_TYPE : int { - ANIMATION_LOOP_TYPE_PINGPONG = -1, - ANIMATION_LOOP_TYPE_INFINITE = 0, - ANIMATION_LOOP_TYPE_COUNTED = 1 -}; -bool ANIMATION_LOOP_TYPE_IsValid(int value); -constexpr ANIMATION_LOOP_TYPE ANIMATION_LOOP_TYPE_MIN = ANIMATION_LOOP_TYPE_PINGPONG; -constexpr ANIMATION_LOOP_TYPE ANIMATION_LOOP_TYPE_MAX = ANIMATION_LOOP_TYPE_COUNTED; -constexpr int ANIMATION_LOOP_TYPE_ARRAYSIZE = ANIMATION_LOOP_TYPE_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ANIMATION_LOOP_TYPE_descriptor(); -template -inline const std::string& ANIMATION_LOOP_TYPE_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ANIMATION_LOOP_TYPE_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ANIMATION_LOOP_TYPE_descriptor(), enum_t_value); -} -inline bool ANIMATION_LOOP_TYPE_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ANIMATION_LOOP_TYPE* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ANIMATION_LOOP_TYPE_descriptor(), name, value); -} -enum HOOK_TYPE : int { - HOOK_TYPE_SOUTH = 1, - HOOK_TYPE_EAST = 2 -}; -bool HOOK_TYPE_IsValid(int value); -constexpr HOOK_TYPE HOOK_TYPE_MIN = HOOK_TYPE_SOUTH; -constexpr HOOK_TYPE HOOK_TYPE_MAX = HOOK_TYPE_EAST; -constexpr int HOOK_TYPE_ARRAYSIZE = HOOK_TYPE_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* HOOK_TYPE_descriptor(); -template -inline const std::string& HOOK_TYPE_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function HOOK_TYPE_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - HOOK_TYPE_descriptor(), enum_t_value); -} -inline bool HOOK_TYPE_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, HOOK_TYPE* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - HOOK_TYPE_descriptor(), name, value); -} -enum FIXED_FRAME_GROUP : int { - FIXED_FRAME_GROUP_OUTFIT_IDLE = 0, - FIXED_FRAME_GROUP_OUTFIT_MOVING = 1, - FIXED_FRAME_GROUP_OBJECT_INITIAL = 2 -}; -bool FIXED_FRAME_GROUP_IsValid(int value); -constexpr FIXED_FRAME_GROUP FIXED_FRAME_GROUP_MIN = FIXED_FRAME_GROUP_OUTFIT_IDLE; -constexpr FIXED_FRAME_GROUP FIXED_FRAME_GROUP_MAX = FIXED_FRAME_GROUP_OBJECT_INITIAL; -constexpr int FIXED_FRAME_GROUP_ARRAYSIZE = FIXED_FRAME_GROUP_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FIXED_FRAME_GROUP_descriptor(); -template -inline const std::string& FIXED_FRAME_GROUP_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function FIXED_FRAME_GROUP_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - FIXED_FRAME_GROUP_descriptor(), enum_t_value); -} -inline bool FIXED_FRAME_GROUP_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FIXED_FRAME_GROUP* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - FIXED_FRAME_GROUP_descriptor(), name, value); -} -// =================================================================== - -class Coordinate final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Coordinate) */ { - public: - inline Coordinate() : Coordinate(nullptr) {} - ~Coordinate() override; - explicit PROTOBUF_CONSTEXPR Coordinate(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Coordinate(const Coordinate& from); - Coordinate(Coordinate&& from) noexcept - : Coordinate() { - *this = ::std::move(from); - } - - inline Coordinate& operator=(const Coordinate& from) { - CopyFrom(from); - return *this; - } - inline Coordinate& operator=(Coordinate&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Coordinate& default_instance() { - return *internal_default_instance(); - } - static inline const Coordinate* internal_default_instance() { - return reinterpret_cast( - &_Coordinate_default_instance_); - } - static constexpr int kIndexInFileMessages = - 0; - - friend void swap(Coordinate& a, Coordinate& b) { - a.Swap(&b); - } - inline void Swap(Coordinate* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Coordinate* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Coordinate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Coordinate& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Coordinate& from) { - Coordinate::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Coordinate* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Coordinate"; - } - protected: - explicit Coordinate(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kXFieldNumber = 1, - kYFieldNumber = 2, - kZFieldNumber = 3, - }; - // optional uint32 x = 1; - bool has_x() const; - private: - bool _internal_has_x() const; - public: - void clear_x(); - uint32_t x() const; - void set_x(uint32_t value); - private: - uint32_t _internal_x() const; - void _internal_set_x(uint32_t value); - public: - - // optional uint32 y = 2; - bool has_y() const; - private: - bool _internal_has_y() const; - public: - void clear_y(); - uint32_t y() const; - void set_y(uint32_t value); - private: - uint32_t _internal_y() const; - void _internal_set_y(uint32_t value); - public: - - // optional uint32 z = 3; - bool has_z() const; - private: - bool _internal_has_z() const; - public: - void clear_z(); - uint32_t z() const; - void set_z(uint32_t value); - private: - uint32_t _internal_z() const; - void _internal_set_z(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Coordinate) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t x_; - uint32_t y_; - uint32_t z_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class Appearances final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Appearances) */ { - public: - inline Appearances() : Appearances(nullptr) {} - ~Appearances() override; - explicit PROTOBUF_CONSTEXPR Appearances(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Appearances(const Appearances& from); - Appearances(Appearances&& from) noexcept - : Appearances() { - *this = ::std::move(from); - } - - inline Appearances& operator=(const Appearances& from) { - CopyFrom(from); - return *this; - } - inline Appearances& operator=(Appearances&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Appearances& default_instance() { - return *internal_default_instance(); - } - static inline const Appearances* internal_default_instance() { - return reinterpret_cast( - &_Appearances_default_instance_); - } - static constexpr int kIndexInFileMessages = - 1; - - friend void swap(Appearances& a, Appearances& b) { - a.Swap(&b); - } - inline void Swap(Appearances* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Appearances* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Appearances* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Appearances& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Appearances& from) { - Appearances::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Appearances* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Appearances"; - } - protected: - explicit Appearances(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kObjectFieldNumber = 1, - kOutfitFieldNumber = 2, - kEffectFieldNumber = 3, - kMissileFieldNumber = 4, - kSpecialMeaningAppearanceIdsFieldNumber = 5, - }; - // repeated .Canary.protobuf.appearances.Appearance object = 1; - int object_size() const; - private: - int _internal_object_size() const; - public: - void clear_object(); - ::Canary::protobuf::appearances::Appearance* mutable_object(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* - mutable_object(); - private: - const ::Canary::protobuf::appearances::Appearance& _internal_object(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_object(); - public: - const ::Canary::protobuf::appearances::Appearance& object(int index) const; - ::Canary::protobuf::appearances::Appearance* add_object(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& - object() const; - - // repeated .Canary.protobuf.appearances.Appearance outfit = 2; - int outfit_size() const; - private: - int _internal_outfit_size() const; - public: - void clear_outfit(); - ::Canary::protobuf::appearances::Appearance* mutable_outfit(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* - mutable_outfit(); - private: - const ::Canary::protobuf::appearances::Appearance& _internal_outfit(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_outfit(); - public: - const ::Canary::protobuf::appearances::Appearance& outfit(int index) const; - ::Canary::protobuf::appearances::Appearance* add_outfit(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& - outfit() const; - - // repeated .Canary.protobuf.appearances.Appearance effect = 3; - int effect_size() const; - private: - int _internal_effect_size() const; - public: - void clear_effect(); - ::Canary::protobuf::appearances::Appearance* mutable_effect(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* - mutable_effect(); - private: - const ::Canary::protobuf::appearances::Appearance& _internal_effect(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_effect(); - public: - const ::Canary::protobuf::appearances::Appearance& effect(int index) const; - ::Canary::protobuf::appearances::Appearance* add_effect(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& - effect() const; - - // repeated .Canary.protobuf.appearances.Appearance missile = 4; - int missile_size() const; - private: - int _internal_missile_size() const; - public: - void clear_missile(); - ::Canary::protobuf::appearances::Appearance* mutable_missile(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* - mutable_missile(); - private: - const ::Canary::protobuf::appearances::Appearance& _internal_missile(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_missile(); - public: - const ::Canary::protobuf::appearances::Appearance& missile(int index) const; - ::Canary::protobuf::appearances::Appearance* add_missile(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& - missile() const; - - // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; - bool has_special_meaning_appearance_ids() const; - private: - bool _internal_has_special_meaning_appearance_ids() const; - public: - void clear_special_meaning_appearance_ids(); - const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds& special_meaning_appearance_ids() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* release_special_meaning_appearance_ids(); - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* mutable_special_meaning_appearance_ids(); - void set_allocated_special_meaning_appearance_ids(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids); - private: - const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds& _internal_special_meaning_appearance_ids() const; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* _internal_mutable_special_meaning_appearance_ids(); - public: - void unsafe_arena_set_allocated_special_meaning_appearance_ids( - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids); - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* unsafe_arena_release_special_meaning_appearance_ids(); - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Appearances) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance > object_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance > outfit_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance > effect_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance > missile_; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class SpritePhase final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpritePhase) */ { - public: - inline SpritePhase() : SpritePhase(nullptr) {} - ~SpritePhase() override; - explicit PROTOBUF_CONSTEXPR SpritePhase(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpritePhase(const SpritePhase& from); - SpritePhase(SpritePhase&& from) noexcept - : SpritePhase() { - *this = ::std::move(from); - } - - inline SpritePhase& operator=(const SpritePhase& from) { - CopyFrom(from); - return *this; - } - inline SpritePhase& operator=(SpritePhase&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpritePhase& default_instance() { - return *internal_default_instance(); - } - static inline const SpritePhase* internal_default_instance() { - return reinterpret_cast( - &_SpritePhase_default_instance_); - } - static constexpr int kIndexInFileMessages = - 2; - - friend void swap(SpritePhase& a, SpritePhase& b) { - a.Swap(&b); - } - inline void Swap(SpritePhase* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpritePhase* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpritePhase* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpritePhase& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SpritePhase& from) { - SpritePhase::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpritePhase* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpritePhase"; - } - protected: - explicit SpritePhase(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kDurationMinFieldNumber = 1, - kDurationMaxFieldNumber = 2, - }; - // optional uint32 duration_min = 1; - bool has_duration_min() const; - private: - bool _internal_has_duration_min() const; - public: - void clear_duration_min(); - uint32_t duration_min() const; - void set_duration_min(uint32_t value); - private: - uint32_t _internal_duration_min() const; - void _internal_set_duration_min(uint32_t value); - public: - - // optional uint32 duration_max = 2; - bool has_duration_max() const; - private: - bool _internal_has_duration_max() const; - public: - void clear_duration_max(); - uint32_t duration_max() const; - void set_duration_max(uint32_t value); - private: - uint32_t _internal_duration_max() const; - void _internal_set_duration_max(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpritePhase) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t duration_min_; - uint32_t duration_max_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class SpriteAnimation final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpriteAnimation) */ { - public: - inline SpriteAnimation() : SpriteAnimation(nullptr) {} - ~SpriteAnimation() override; - explicit PROTOBUF_CONSTEXPR SpriteAnimation(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpriteAnimation(const SpriteAnimation& from); - SpriteAnimation(SpriteAnimation&& from) noexcept - : SpriteAnimation() { - *this = ::std::move(from); - } - - inline SpriteAnimation& operator=(const SpriteAnimation& from) { - CopyFrom(from); - return *this; - } - inline SpriteAnimation& operator=(SpriteAnimation&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpriteAnimation& default_instance() { - return *internal_default_instance(); - } - static inline const SpriteAnimation* internal_default_instance() { - return reinterpret_cast( - &_SpriteAnimation_default_instance_); - } - static constexpr int kIndexInFileMessages = - 3; - - friend void swap(SpriteAnimation& a, SpriteAnimation& b) { - a.Swap(&b); - } - inline void Swap(SpriteAnimation* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpriteAnimation* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpriteAnimation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpriteAnimation& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SpriteAnimation& from) { - SpriteAnimation::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpriteAnimation* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpriteAnimation"; - } - protected: - explicit SpriteAnimation(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSpritePhaseFieldNumber = 6, - kDefaultStartPhaseFieldNumber = 1, - kSynchronizedFieldNumber = 2, - kRandomStartPhaseFieldNumber = 3, - kLoopCountFieldNumber = 5, - kLoopTypeFieldNumber = 4, - }; - // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; - int sprite_phase_size() const; - private: - int _internal_sprite_phase_size() const; - public: - void clear_sprite_phase(); - ::Canary::protobuf::appearances::SpritePhase* mutable_sprite_phase(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::SpritePhase >* - mutable_sprite_phase(); - private: - const ::Canary::protobuf::appearances::SpritePhase& _internal_sprite_phase(int index) const; - ::Canary::protobuf::appearances::SpritePhase* _internal_add_sprite_phase(); - public: - const ::Canary::protobuf::appearances::SpritePhase& sprite_phase(int index) const; - ::Canary::protobuf::appearances::SpritePhase* add_sprite_phase(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::SpritePhase >& - sprite_phase() const; - - // optional uint32 default_start_phase = 1; - bool has_default_start_phase() const; - private: - bool _internal_has_default_start_phase() const; - public: - void clear_default_start_phase(); - uint32_t default_start_phase() const; - void set_default_start_phase(uint32_t value); - private: - uint32_t _internal_default_start_phase() const; - void _internal_set_default_start_phase(uint32_t value); - public: - - // optional bool synchronized = 2; - bool has_synchronized() const; - private: - bool _internal_has_synchronized() const; - public: - void clear_synchronized(); - bool synchronized() const; - void set_synchronized(bool value); - private: - bool _internal_synchronized() const; - void _internal_set_synchronized(bool value); - public: - - // optional bool random_start_phase = 3; - bool has_random_start_phase() const; - private: - bool _internal_has_random_start_phase() const; - public: - void clear_random_start_phase(); - bool random_start_phase() const; - void set_random_start_phase(bool value); - private: - bool _internal_random_start_phase() const; - void _internal_set_random_start_phase(bool value); - public: - - // optional uint32 loop_count = 5; - bool has_loop_count() const; - private: - bool _internal_has_loop_count() const; - public: - void clear_loop_count(); - uint32_t loop_count() const; - void set_loop_count(uint32_t value); - private: - uint32_t _internal_loop_count() const; - void _internal_set_loop_count(uint32_t value); - public: - - // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; - bool has_loop_type() const; - private: - bool _internal_has_loop_type() const; - public: - void clear_loop_type(); - ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE loop_type() const; - void set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value); - private: - ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE _internal_loop_type() const; - void _internal_set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpriteAnimation) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::SpritePhase > sprite_phase_; - uint32_t default_start_phase_; - bool synchronized_; - bool random_start_phase_; - uint32_t loop_count_; - int loop_type_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class Box final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Box) */ { - public: - inline Box() : Box(nullptr) {} - ~Box() override; - explicit PROTOBUF_CONSTEXPR Box(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Box(const Box& from); - Box(Box&& from) noexcept - : Box() { - *this = ::std::move(from); - } - - inline Box& operator=(const Box& from) { - CopyFrom(from); - return *this; - } - inline Box& operator=(Box&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Box& default_instance() { - return *internal_default_instance(); - } - static inline const Box* internal_default_instance() { - return reinterpret_cast( - &_Box_default_instance_); - } - static constexpr int kIndexInFileMessages = - 4; - - friend void swap(Box& a, Box& b) { - a.Swap(&b); - } - inline void Swap(Box* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Box* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Box* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Box& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Box& from) { - Box::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Box* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Box"; - } - protected: - explicit Box(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kXFieldNumber = 1, - kYFieldNumber = 2, - kWidthFieldNumber = 3, - kHeightFieldNumber = 4, - }; - // optional uint32 x = 1; - bool has_x() const; - private: - bool _internal_has_x() const; - public: - void clear_x(); - uint32_t x() const; - void set_x(uint32_t value); - private: - uint32_t _internal_x() const; - void _internal_set_x(uint32_t value); - public: - - // optional uint32 y = 2; - bool has_y() const; - private: - bool _internal_has_y() const; - public: - void clear_y(); - uint32_t y() const; - void set_y(uint32_t value); - private: - uint32_t _internal_y() const; - void _internal_set_y(uint32_t value); - public: - - // optional uint32 width = 3; - bool has_width() const; - private: - bool _internal_has_width() const; - public: - void clear_width(); - uint32_t width() const; - void set_width(uint32_t value); - private: - uint32_t _internal_width() const; - void _internal_set_width(uint32_t value); - public: - - // optional uint32 height = 4; - bool has_height() const; - private: - bool _internal_has_height() const; - public: - void clear_height(); - uint32_t height() const; - void set_height(uint32_t value); - private: - uint32_t _internal_height() const; - void _internal_set_height(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Box) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t x_; - uint32_t y_; - uint32_t width_; - uint32_t height_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class SpriteInfo final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpriteInfo) */ { - public: - inline SpriteInfo() : SpriteInfo(nullptr) {} - ~SpriteInfo() override; - explicit PROTOBUF_CONSTEXPR SpriteInfo(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpriteInfo(const SpriteInfo& from); - SpriteInfo(SpriteInfo&& from) noexcept - : SpriteInfo() { - *this = ::std::move(from); - } - - inline SpriteInfo& operator=(const SpriteInfo& from) { - CopyFrom(from); - return *this; - } - inline SpriteInfo& operator=(SpriteInfo&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpriteInfo& default_instance() { - return *internal_default_instance(); - } - static inline const SpriteInfo* internal_default_instance() { - return reinterpret_cast( - &_SpriteInfo_default_instance_); - } - static constexpr int kIndexInFileMessages = - 5; - - friend void swap(SpriteInfo& a, SpriteInfo& b) { - a.Swap(&b); - } - inline void Swap(SpriteInfo* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpriteInfo* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpriteInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpriteInfo& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SpriteInfo& from) { - SpriteInfo::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpriteInfo* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpriteInfo"; - } - protected: - explicit SpriteInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSpriteIdFieldNumber = 5, - kBoundingBoxPerDirectionFieldNumber = 9, - kAnimationFieldNumber = 6, - kPatternWidthFieldNumber = 1, - kPatternHeightFieldNumber = 2, - kPatternDepthFieldNumber = 3, - kLayersFieldNumber = 4, - kBoundingSquareFieldNumber = 7, - kIsOpaqueFieldNumber = 8, - }; - // repeated uint32 sprite_id = 5; - int sprite_id_size() const; - private: - int _internal_sprite_id_size() const; - public: - void clear_sprite_id(); - private: - uint32_t _internal_sprite_id(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >& - _internal_sprite_id() const; - void _internal_add_sprite_id(uint32_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >* - _internal_mutable_sprite_id(); - public: - uint32_t sprite_id(int index) const; - void set_sprite_id(int index, uint32_t value); - void add_sprite_id(uint32_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >& - sprite_id() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >* - mutable_sprite_id(); - - // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; - int bounding_box_per_direction_size() const; - private: - int _internal_bounding_box_per_direction_size() const; - public: - void clear_bounding_box_per_direction(); - ::Canary::protobuf::appearances::Box* mutable_bounding_box_per_direction(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Box >* - mutable_bounding_box_per_direction(); - private: - const ::Canary::protobuf::appearances::Box& _internal_bounding_box_per_direction(int index) const; - ::Canary::protobuf::appearances::Box* _internal_add_bounding_box_per_direction(); - public: - const ::Canary::protobuf::appearances::Box& bounding_box_per_direction(int index) const; - ::Canary::protobuf::appearances::Box* add_bounding_box_per_direction(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Box >& - bounding_box_per_direction() const; - - // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; - bool has_animation() const; - private: - bool _internal_has_animation() const; - public: - void clear_animation(); - const ::Canary::protobuf::appearances::SpriteAnimation& animation() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpriteAnimation* release_animation(); - ::Canary::protobuf::appearances::SpriteAnimation* mutable_animation(); - void set_allocated_animation(::Canary::protobuf::appearances::SpriteAnimation* animation); - private: - const ::Canary::protobuf::appearances::SpriteAnimation& _internal_animation() const; - ::Canary::protobuf::appearances::SpriteAnimation* _internal_mutable_animation(); - public: - void unsafe_arena_set_allocated_animation( - ::Canary::protobuf::appearances::SpriteAnimation* animation); - ::Canary::protobuf::appearances::SpriteAnimation* unsafe_arena_release_animation(); - - // optional uint32 pattern_width = 1; - bool has_pattern_width() const; - private: - bool _internal_has_pattern_width() const; - public: - void clear_pattern_width(); - uint32_t pattern_width() const; - void set_pattern_width(uint32_t value); - private: - uint32_t _internal_pattern_width() const; - void _internal_set_pattern_width(uint32_t value); - public: - - // optional uint32 pattern_height = 2; - bool has_pattern_height() const; - private: - bool _internal_has_pattern_height() const; - public: - void clear_pattern_height(); - uint32_t pattern_height() const; - void set_pattern_height(uint32_t value); - private: - uint32_t _internal_pattern_height() const; - void _internal_set_pattern_height(uint32_t value); - public: - - // optional uint32 pattern_depth = 3; - bool has_pattern_depth() const; - private: - bool _internal_has_pattern_depth() const; - public: - void clear_pattern_depth(); - uint32_t pattern_depth() const; - void set_pattern_depth(uint32_t value); - private: - uint32_t _internal_pattern_depth() const; - void _internal_set_pattern_depth(uint32_t value); - public: - - // optional uint32 layers = 4; - bool has_layers() const; - private: - bool _internal_has_layers() const; - public: - void clear_layers(); - uint32_t layers() const; - void set_layers(uint32_t value); - private: - uint32_t _internal_layers() const; - void _internal_set_layers(uint32_t value); - public: - - // optional uint32 bounding_square = 7; - bool has_bounding_square() const; - private: - bool _internal_has_bounding_square() const; - public: - void clear_bounding_square(); - uint32_t bounding_square() const; - void set_bounding_square(uint32_t value); - private: - uint32_t _internal_bounding_square() const; - void _internal_set_bounding_square(uint32_t value); - public: - - // optional bool is_opaque = 8; - bool has_is_opaque() const; - private: - bool _internal_has_is_opaque() const; - public: - void clear_is_opaque(); - bool is_opaque() const; - void set_is_opaque(bool value); - private: - bool _internal_is_opaque() const; - void _internal_set_is_opaque(bool value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpriteInfo) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t > sprite_id_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Box > bounding_box_per_direction_; - ::Canary::protobuf::appearances::SpriteAnimation* animation_; - uint32_t pattern_width_; - uint32_t pattern_height_; - uint32_t pattern_depth_; - uint32_t layers_; - uint32_t bounding_square_; - bool is_opaque_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class FrameGroup final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.FrameGroup) */ { - public: - inline FrameGroup() : FrameGroup(nullptr) {} - ~FrameGroup() override; - explicit PROTOBUF_CONSTEXPR FrameGroup(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - FrameGroup(const FrameGroup& from); - FrameGroup(FrameGroup&& from) noexcept - : FrameGroup() { - *this = ::std::move(from); - } - - inline FrameGroup& operator=(const FrameGroup& from) { - CopyFrom(from); - return *this; - } - inline FrameGroup& operator=(FrameGroup&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const FrameGroup& default_instance() { - return *internal_default_instance(); - } - static inline const FrameGroup* internal_default_instance() { - return reinterpret_cast( - &_FrameGroup_default_instance_); - } - static constexpr int kIndexInFileMessages = - 6; - - friend void swap(FrameGroup& a, FrameGroup& b) { - a.Swap(&b); - } - inline void Swap(FrameGroup* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(FrameGroup* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - FrameGroup* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FrameGroup& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FrameGroup& from) { - FrameGroup::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FrameGroup* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.FrameGroup"; - } - protected: - explicit FrameGroup(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSpriteInfoFieldNumber = 3, - kFixedFrameGroupFieldNumber = 1, - kIdFieldNumber = 2, - }; - // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; - bool has_sprite_info() const; - private: - bool _internal_has_sprite_info() const; - public: - void clear_sprite_info(); - const ::Canary::protobuf::appearances::SpriteInfo& sprite_info() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpriteInfo* release_sprite_info(); - ::Canary::protobuf::appearances::SpriteInfo* mutable_sprite_info(); - void set_allocated_sprite_info(::Canary::protobuf::appearances::SpriteInfo* sprite_info); - private: - const ::Canary::protobuf::appearances::SpriteInfo& _internal_sprite_info() const; - ::Canary::protobuf::appearances::SpriteInfo* _internal_mutable_sprite_info(); - public: - void unsafe_arena_set_allocated_sprite_info( - ::Canary::protobuf::appearances::SpriteInfo* sprite_info); - ::Canary::protobuf::appearances::SpriteInfo* unsafe_arena_release_sprite_info(); - - // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; - bool has_fixed_frame_group() const; - private: - bool _internal_has_fixed_frame_group() const; - public: - void clear_fixed_frame_group(); - ::Canary::protobuf::appearances::FIXED_FRAME_GROUP fixed_frame_group() const; - void set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value); - private: - ::Canary::protobuf::appearances::FIXED_FRAME_GROUP _internal_fixed_frame_group() const; - void _internal_set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value); - public: - - // optional uint32 id = 2; - bool has_id() const; - private: - bool _internal_has_id() const; - public: - void clear_id(); - uint32_t id() const; - void set_id(uint32_t value); - private: - uint32_t _internal_id() const; - void _internal_set_id(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.FrameGroup) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::Canary::protobuf::appearances::SpriteInfo* sprite_info_; - int fixed_frame_group_; - uint32_t id_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class Appearance final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Appearance) */ { - public: - inline Appearance() : Appearance(nullptr) {} - ~Appearance() override; - explicit PROTOBUF_CONSTEXPR Appearance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Appearance(const Appearance& from); - Appearance(Appearance&& from) noexcept - : Appearance() { - *this = ::std::move(from); - } - - inline Appearance& operator=(const Appearance& from) { - CopyFrom(from); - return *this; - } - inline Appearance& operator=(Appearance&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Appearance& default_instance() { - return *internal_default_instance(); - } - static inline const Appearance* internal_default_instance() { - return reinterpret_cast( - &_Appearance_default_instance_); - } - static constexpr int kIndexInFileMessages = - 7; - - friend void swap(Appearance& a, Appearance& b) { - a.Swap(&b); - } - inline void Swap(Appearance* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Appearance* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Appearance* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Appearance& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Appearance& from) { - Appearance::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Appearance* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Appearance"; - } - protected: - explicit Appearance(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kFrameGroupFieldNumber = 2, - kNameFieldNumber = 4, - kDescriptionFieldNumber = 5, - kFlagsFieldNumber = 3, - kIdFieldNumber = 1, - }; - // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; - int frame_group_size() const; - private: - int _internal_frame_group_size() const; - public: - void clear_frame_group(); - ::Canary::protobuf::appearances::FrameGroup* mutable_frame_group(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::FrameGroup >* - mutable_frame_group(); - private: - const ::Canary::protobuf::appearances::FrameGroup& _internal_frame_group(int index) const; - ::Canary::protobuf::appearances::FrameGroup* _internal_add_frame_group(); - public: - const ::Canary::protobuf::appearances::FrameGroup& frame_group(int index) const; - ::Canary::protobuf::appearances::FrameGroup* add_frame_group(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::FrameGroup >& - frame_group() const; - - // optional bytes name = 4; - bool has_name() const; - private: - bool _internal_has_name() const; - public: - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: - - // optional bytes description = 5; - bool has_description() const; - private: - bool _internal_has_description() const; - public: - void clear_description(); - const std::string& description() const; - template - void set_description(ArgT0&& arg0, ArgT... args); - std::string* mutable_description(); - PROTOBUF_NODISCARD std::string* release_description(); - void set_allocated_description(std::string* description); - private: - const std::string& _internal_description() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_description(const std::string& value); - std::string* _internal_mutable_description(); - public: - - // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; - bool has_flags() const; - private: - bool _internal_has_flags() const; - public: - void clear_flags(); - const ::Canary::protobuf::appearances::AppearanceFlags& flags() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlags* release_flags(); - ::Canary::protobuf::appearances::AppearanceFlags* mutable_flags(); - void set_allocated_flags(::Canary::protobuf::appearances::AppearanceFlags* flags); - private: - const ::Canary::protobuf::appearances::AppearanceFlags& _internal_flags() const; - ::Canary::protobuf::appearances::AppearanceFlags* _internal_mutable_flags(); - public: - void unsafe_arena_set_allocated_flags( - ::Canary::protobuf::appearances::AppearanceFlags* flags); - ::Canary::protobuf::appearances::AppearanceFlags* unsafe_arena_release_flags(); - - // optional uint32 id = 1; - bool has_id() const; - private: - bool _internal_has_id() const; - public: - void clear_id(); - uint32_t id() const; - void set_id(uint32_t value); - private: - uint32_t _internal_id() const; - void _internal_set_id(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Appearance) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::FrameGroup > frame_group_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr description_; - ::Canary::protobuf::appearances::AppearanceFlags* flags_; - uint32_t id_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlags final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlags) */ { - public: - inline AppearanceFlags() : AppearanceFlags(nullptr) {} - ~AppearanceFlags() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlags(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlags(const AppearanceFlags& from); - AppearanceFlags(AppearanceFlags&& from) noexcept - : AppearanceFlags() { - *this = ::std::move(from); - } - - inline AppearanceFlags& operator=(const AppearanceFlags& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlags& operator=(AppearanceFlags&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlags& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlags* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlags_default_instance_); - } - static constexpr int kIndexInFileMessages = - 8; - - friend void swap(AppearanceFlags& a, AppearanceFlags& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlags* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlags* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlags* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlags& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlags& from) { - AppearanceFlags::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlags* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlags"; - } - protected: - explicit AppearanceFlags(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kNpcsaledataFieldNumber = 40, - kBankFieldNumber = 1, - kWriteFieldNumber = 10, - kWriteOnceFieldNumber = 11, - kHookFieldNumber = 21, - kLightFieldNumber = 23, - kShiftFieldNumber = 26, - kHeightFieldNumber = 27, - kAutomapFieldNumber = 30, - kLenshelpFieldNumber = 31, - kClothesFieldNumber = 34, - kDefaultActionFieldNumber = 35, - kMarketFieldNumber = 36, - kChangedtoexpireFieldNumber = 41, - kCyclopediaitemFieldNumber = 44, - kUpgradeclassificationFieldNumber = 48, - kClipFieldNumber = 2, - kBottomFieldNumber = 3, - kTopFieldNumber = 4, - kContainerFieldNumber = 5, - kCumulativeFieldNumber = 6, - kUsableFieldNumber = 7, - kForceuseFieldNumber = 8, - kMultiuseFieldNumber = 9, - kLiquidpoolFieldNumber = 12, - kUnpassFieldNumber = 13, - kUnmoveFieldNumber = 14, - kUnsightFieldNumber = 15, - kAvoidFieldNumber = 16, - kNoMovementAnimationFieldNumber = 17, - kTakeFieldNumber = 18, - kLiquidcontainerFieldNumber = 19, - kHangFieldNumber = 20, - kRotateFieldNumber = 22, - kDontHideFieldNumber = 24, - kTranslucentFieldNumber = 25, - kLyingObjectFieldNumber = 28, - kAnimateAlwaysFieldNumber = 29, - kFullbankFieldNumber = 32, - kIgnoreLookFieldNumber = 33, - kWrapFieldNumber = 37, - kUnwrapFieldNumber = 38, - kTopeffectFieldNumber = 39, - kCorpseFieldNumber = 42, - kPlayerCorpseFieldNumber = 43, - kAmmoFieldNumber = 45, - kShowOffSocketFieldNumber = 46, - kReportableFieldNumber = 47, - kReverseAddonsEastFieldNumber = 49, - kReverseAddonsWestFieldNumber = 50, - kReverseAddonsSouthFieldNumber = 51, - kReverseAddonsNorthFieldNumber = 52, - kWearoutFieldNumber = 53, - kClockexpireFieldNumber = 54, - kExpireFieldNumber = 55, - kExpirestopFieldNumber = 56, - kWrapkitFieldNumber = 57, - }; - // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; - int npcsaledata_size() const; - private: - int _internal_npcsaledata_size() const; - public: - void clear_npcsaledata(); - ::Canary::protobuf::appearances::AppearanceFlagNPC* mutable_npcsaledata(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::AppearanceFlagNPC >* - mutable_npcsaledata(); - private: - const ::Canary::protobuf::appearances::AppearanceFlagNPC& _internal_npcsaledata(int index) const; - ::Canary::protobuf::appearances::AppearanceFlagNPC* _internal_add_npcsaledata(); - public: - const ::Canary::protobuf::appearances::AppearanceFlagNPC& npcsaledata(int index) const; - ::Canary::protobuf::appearances::AppearanceFlagNPC* add_npcsaledata(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::AppearanceFlagNPC >& - npcsaledata() const; - - // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; - bool has_bank() const; - private: - bool _internal_has_bank() const; - public: - void clear_bank(); - const ::Canary::protobuf::appearances::AppearanceFlagBank& bank() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagBank* release_bank(); - ::Canary::protobuf::appearances::AppearanceFlagBank* mutable_bank(); - void set_allocated_bank(::Canary::protobuf::appearances::AppearanceFlagBank* bank); - private: - const ::Canary::protobuf::appearances::AppearanceFlagBank& _internal_bank() const; - ::Canary::protobuf::appearances::AppearanceFlagBank* _internal_mutable_bank(); - public: - void unsafe_arena_set_allocated_bank( - ::Canary::protobuf::appearances::AppearanceFlagBank* bank); - ::Canary::protobuf::appearances::AppearanceFlagBank* unsafe_arena_release_bank(); - - // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; - bool has_write() const; - private: - bool _internal_has_write() const; - public: - void clear_write(); - const ::Canary::protobuf::appearances::AppearanceFlagWrite& write() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagWrite* release_write(); - ::Canary::protobuf::appearances::AppearanceFlagWrite* mutable_write(); - void set_allocated_write(::Canary::protobuf::appearances::AppearanceFlagWrite* write); - private: - const ::Canary::protobuf::appearances::AppearanceFlagWrite& _internal_write() const; - ::Canary::protobuf::appearances::AppearanceFlagWrite* _internal_mutable_write(); - public: - void unsafe_arena_set_allocated_write( - ::Canary::protobuf::appearances::AppearanceFlagWrite* write); - ::Canary::protobuf::appearances::AppearanceFlagWrite* unsafe_arena_release_write(); - - // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; - bool has_write_once() const; - private: - bool _internal_has_write_once() const; - public: - void clear_write_once(); - const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce& write_once() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* release_write_once(); - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* mutable_write_once(); - void set_allocated_write_once(::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once); - private: - const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce& _internal_write_once() const; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* _internal_mutable_write_once(); - public: - void unsafe_arena_set_allocated_write_once( - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once); - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* unsafe_arena_release_write_once(); - - // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; - bool has_hook() const; - private: - bool _internal_has_hook() const; - public: - void clear_hook(); - const ::Canary::protobuf::appearances::AppearanceFlagHook& hook() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagHook* release_hook(); - ::Canary::protobuf::appearances::AppearanceFlagHook* mutable_hook(); - void set_allocated_hook(::Canary::protobuf::appearances::AppearanceFlagHook* hook); - private: - const ::Canary::protobuf::appearances::AppearanceFlagHook& _internal_hook() const; - ::Canary::protobuf::appearances::AppearanceFlagHook* _internal_mutable_hook(); - public: - void unsafe_arena_set_allocated_hook( - ::Canary::protobuf::appearances::AppearanceFlagHook* hook); - ::Canary::protobuf::appearances::AppearanceFlagHook* unsafe_arena_release_hook(); - - // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; - bool has_light() const; - private: - bool _internal_has_light() const; - public: - void clear_light(); - const ::Canary::protobuf::appearances::AppearanceFlagLight& light() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagLight* release_light(); - ::Canary::protobuf::appearances::AppearanceFlagLight* mutable_light(); - void set_allocated_light(::Canary::protobuf::appearances::AppearanceFlagLight* light); - private: - const ::Canary::protobuf::appearances::AppearanceFlagLight& _internal_light() const; - ::Canary::protobuf::appearances::AppearanceFlagLight* _internal_mutable_light(); - public: - void unsafe_arena_set_allocated_light( - ::Canary::protobuf::appearances::AppearanceFlagLight* light); - ::Canary::protobuf::appearances::AppearanceFlagLight* unsafe_arena_release_light(); - - // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; - bool has_shift() const; - private: - bool _internal_has_shift() const; - public: - void clear_shift(); - const ::Canary::protobuf::appearances::AppearanceFlagShift& shift() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagShift* release_shift(); - ::Canary::protobuf::appearances::AppearanceFlagShift* mutable_shift(); - void set_allocated_shift(::Canary::protobuf::appearances::AppearanceFlagShift* shift); - private: - const ::Canary::protobuf::appearances::AppearanceFlagShift& _internal_shift() const; - ::Canary::protobuf::appearances::AppearanceFlagShift* _internal_mutable_shift(); - public: - void unsafe_arena_set_allocated_shift( - ::Canary::protobuf::appearances::AppearanceFlagShift* shift); - ::Canary::protobuf::appearances::AppearanceFlagShift* unsafe_arena_release_shift(); - - // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; - bool has_height() const; - private: - bool _internal_has_height() const; - public: - void clear_height(); - const ::Canary::protobuf::appearances::AppearanceFlagHeight& height() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagHeight* release_height(); - ::Canary::protobuf::appearances::AppearanceFlagHeight* mutable_height(); - void set_allocated_height(::Canary::protobuf::appearances::AppearanceFlagHeight* height); - private: - const ::Canary::protobuf::appearances::AppearanceFlagHeight& _internal_height() const; - ::Canary::protobuf::appearances::AppearanceFlagHeight* _internal_mutable_height(); - public: - void unsafe_arena_set_allocated_height( - ::Canary::protobuf::appearances::AppearanceFlagHeight* height); - ::Canary::protobuf::appearances::AppearanceFlagHeight* unsafe_arena_release_height(); - - // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; - bool has_automap() const; - private: - bool _internal_has_automap() const; - public: - void clear_automap(); - const ::Canary::protobuf::appearances::AppearanceFlagAutomap& automap() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagAutomap* release_automap(); - ::Canary::protobuf::appearances::AppearanceFlagAutomap* mutable_automap(); - void set_allocated_automap(::Canary::protobuf::appearances::AppearanceFlagAutomap* automap); - private: - const ::Canary::protobuf::appearances::AppearanceFlagAutomap& _internal_automap() const; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* _internal_mutable_automap(); - public: - void unsafe_arena_set_allocated_automap( - ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap); - ::Canary::protobuf::appearances::AppearanceFlagAutomap* unsafe_arena_release_automap(); - - // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; - bool has_lenshelp() const; - private: - bool _internal_has_lenshelp() const; - public: - void clear_lenshelp(); - const ::Canary::protobuf::appearances::AppearanceFlagLenshelp& lenshelp() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagLenshelp* release_lenshelp(); - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* mutable_lenshelp(); - void set_allocated_lenshelp(::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp); - private: - const ::Canary::protobuf::appearances::AppearanceFlagLenshelp& _internal_lenshelp() const; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* _internal_mutable_lenshelp(); - public: - void unsafe_arena_set_allocated_lenshelp( - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp); - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* unsafe_arena_release_lenshelp(); - - // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; - bool has_clothes() const; - private: - bool _internal_has_clothes() const; - public: - void clear_clothes(); - const ::Canary::protobuf::appearances::AppearanceFlagClothes& clothes() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagClothes* release_clothes(); - ::Canary::protobuf::appearances::AppearanceFlagClothes* mutable_clothes(); - void set_allocated_clothes(::Canary::protobuf::appearances::AppearanceFlagClothes* clothes); - private: - const ::Canary::protobuf::appearances::AppearanceFlagClothes& _internal_clothes() const; - ::Canary::protobuf::appearances::AppearanceFlagClothes* _internal_mutable_clothes(); - public: - void unsafe_arena_set_allocated_clothes( - ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes); - ::Canary::protobuf::appearances::AppearanceFlagClothes* unsafe_arena_release_clothes(); - - // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; - bool has_default_action() const; - private: - bool _internal_has_default_action() const; - public: - void clear_default_action(); - const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction& default_action() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* release_default_action(); - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* mutable_default_action(); - void set_allocated_default_action(::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action); - private: - const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction& _internal_default_action() const; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* _internal_mutable_default_action(); - public: - void unsafe_arena_set_allocated_default_action( - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action); - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* unsafe_arena_release_default_action(); - - // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; - bool has_market() const; - private: - bool _internal_has_market() const; - public: - void clear_market(); - const ::Canary::protobuf::appearances::AppearanceFlagMarket& market() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagMarket* release_market(); - ::Canary::protobuf::appearances::AppearanceFlagMarket* mutable_market(); - void set_allocated_market(::Canary::protobuf::appearances::AppearanceFlagMarket* market); - private: - const ::Canary::protobuf::appearances::AppearanceFlagMarket& _internal_market() const; - ::Canary::protobuf::appearances::AppearanceFlagMarket* _internal_mutable_market(); - public: - void unsafe_arena_set_allocated_market( - ::Canary::protobuf::appearances::AppearanceFlagMarket* market); - ::Canary::protobuf::appearances::AppearanceFlagMarket* unsafe_arena_release_market(); - - // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; - bool has_changedtoexpire() const; - private: - bool _internal_has_changedtoexpire() const; - public: - void clear_changedtoexpire(); - const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire& changedtoexpire() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* release_changedtoexpire(); - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* mutable_changedtoexpire(); - void set_allocated_changedtoexpire(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire); - private: - const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire& _internal_changedtoexpire() const; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* _internal_mutable_changedtoexpire(); - public: - void unsafe_arena_set_allocated_changedtoexpire( - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire); - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* unsafe_arena_release_changedtoexpire(); - - // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; - bool has_cyclopediaitem() const; - private: - bool _internal_has_cyclopediaitem() const; - public: - void clear_cyclopediaitem(); - const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia& cyclopediaitem() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* release_cyclopediaitem(); - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* mutable_cyclopediaitem(); - void set_allocated_cyclopediaitem(::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem); - private: - const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia& _internal_cyclopediaitem() const; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* _internal_mutable_cyclopediaitem(); - public: - void unsafe_arena_set_allocated_cyclopediaitem( - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem); - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* unsafe_arena_release_cyclopediaitem(); - - // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; - bool has_upgradeclassification() const; - private: - bool _internal_has_upgradeclassification() const; - public: - void clear_upgradeclassification(); - const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification& upgradeclassification() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* release_upgradeclassification(); - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* mutable_upgradeclassification(); - void set_allocated_upgradeclassification(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification); - private: - const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification& _internal_upgradeclassification() const; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* _internal_mutable_upgradeclassification(); - public: - void unsafe_arena_set_allocated_upgradeclassification( - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification); - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* unsafe_arena_release_upgradeclassification(); - - // optional bool clip = 2; - bool has_clip() const; - private: - bool _internal_has_clip() const; - public: - void clear_clip(); - bool clip() const; - void set_clip(bool value); - private: - bool _internal_clip() const; - void _internal_set_clip(bool value); - public: - - // optional bool bottom = 3; - bool has_bottom() const; - private: - bool _internal_has_bottom() const; - public: - void clear_bottom(); - bool bottom() const; - void set_bottom(bool value); - private: - bool _internal_bottom() const; - void _internal_set_bottom(bool value); - public: - - // optional bool top = 4; - bool has_top() const; - private: - bool _internal_has_top() const; - public: - void clear_top(); - bool top() const; - void set_top(bool value); - private: - bool _internal_top() const; - void _internal_set_top(bool value); - public: - - // optional bool container = 5; - bool has_container() const; - private: - bool _internal_has_container() const; - public: - void clear_container(); - bool container() const; - void set_container(bool value); - private: - bool _internal_container() const; - void _internal_set_container(bool value); - public: - - // optional bool cumulative = 6; - bool has_cumulative() const; - private: - bool _internal_has_cumulative() const; - public: - void clear_cumulative(); - bool cumulative() const; - void set_cumulative(bool value); - private: - bool _internal_cumulative() const; - void _internal_set_cumulative(bool value); - public: - - // optional bool usable = 7; - bool has_usable() const; - private: - bool _internal_has_usable() const; - public: - void clear_usable(); - bool usable() const; - void set_usable(bool value); - private: - bool _internal_usable() const; - void _internal_set_usable(bool value); - public: - - // optional bool forceuse = 8; - bool has_forceuse() const; - private: - bool _internal_has_forceuse() const; - public: - void clear_forceuse(); - bool forceuse() const; - void set_forceuse(bool value); - private: - bool _internal_forceuse() const; - void _internal_set_forceuse(bool value); - public: - - // optional bool multiuse = 9; - bool has_multiuse() const; - private: - bool _internal_has_multiuse() const; - public: - void clear_multiuse(); - bool multiuse() const; - void set_multiuse(bool value); - private: - bool _internal_multiuse() const; - void _internal_set_multiuse(bool value); - public: - - // optional bool liquidpool = 12; - bool has_liquidpool() const; - private: - bool _internal_has_liquidpool() const; - public: - void clear_liquidpool(); - bool liquidpool() const; - void set_liquidpool(bool value); - private: - bool _internal_liquidpool() const; - void _internal_set_liquidpool(bool value); - public: - - // optional bool unpass = 13; - bool has_unpass() const; - private: - bool _internal_has_unpass() const; - public: - void clear_unpass(); - bool unpass() const; - void set_unpass(bool value); - private: - bool _internal_unpass() const; - void _internal_set_unpass(bool value); - public: - - // optional bool unmove = 14; - bool has_unmove() const; - private: - bool _internal_has_unmove() const; - public: - void clear_unmove(); - bool unmove() const; - void set_unmove(bool value); - private: - bool _internal_unmove() const; - void _internal_set_unmove(bool value); - public: - - // optional bool unsight = 15; - bool has_unsight() const; - private: - bool _internal_has_unsight() const; - public: - void clear_unsight(); - bool unsight() const; - void set_unsight(bool value); - private: - bool _internal_unsight() const; - void _internal_set_unsight(bool value); - public: - - // optional bool avoid = 16; - bool has_avoid() const; - private: - bool _internal_has_avoid() const; - public: - void clear_avoid(); - bool avoid() const; - void set_avoid(bool value); - private: - bool _internal_avoid() const; - void _internal_set_avoid(bool value); - public: - - // optional bool no_movement_animation = 17; - bool has_no_movement_animation() const; - private: - bool _internal_has_no_movement_animation() const; - public: - void clear_no_movement_animation(); - bool no_movement_animation() const; - void set_no_movement_animation(bool value); - private: - bool _internal_no_movement_animation() const; - void _internal_set_no_movement_animation(bool value); - public: - - // optional bool take = 18; - bool has_take() const; - private: - bool _internal_has_take() const; - public: - void clear_take(); - bool take() const; - void set_take(bool value); - private: - bool _internal_take() const; - void _internal_set_take(bool value); - public: - - // optional bool liquidcontainer = 19; - bool has_liquidcontainer() const; - private: - bool _internal_has_liquidcontainer() const; - public: - void clear_liquidcontainer(); - bool liquidcontainer() const; - void set_liquidcontainer(bool value); - private: - bool _internal_liquidcontainer() const; - void _internal_set_liquidcontainer(bool value); - public: - - // optional bool hang = 20; - bool has_hang() const; - private: - bool _internal_has_hang() const; - public: - void clear_hang(); - bool hang() const; - void set_hang(bool value); - private: - bool _internal_hang() const; - void _internal_set_hang(bool value); - public: - - // optional bool rotate = 22; - bool has_rotate() const; - private: - bool _internal_has_rotate() const; - public: - void clear_rotate(); - bool rotate() const; - void set_rotate(bool value); - private: - bool _internal_rotate() const; - void _internal_set_rotate(bool value); - public: - - // optional bool dont_hide = 24; - bool has_dont_hide() const; - private: - bool _internal_has_dont_hide() const; - public: - void clear_dont_hide(); - bool dont_hide() const; - void set_dont_hide(bool value); - private: - bool _internal_dont_hide() const; - void _internal_set_dont_hide(bool value); - public: - - // optional bool translucent = 25; - bool has_translucent() const; - private: - bool _internal_has_translucent() const; - public: - void clear_translucent(); - bool translucent() const; - void set_translucent(bool value); - private: - bool _internal_translucent() const; - void _internal_set_translucent(bool value); - public: - - // optional bool lying_object = 28; - bool has_lying_object() const; - private: - bool _internal_has_lying_object() const; - public: - void clear_lying_object(); - bool lying_object() const; - void set_lying_object(bool value); - private: - bool _internal_lying_object() const; - void _internal_set_lying_object(bool value); - public: - - // optional bool animate_always = 29; - bool has_animate_always() const; - private: - bool _internal_has_animate_always() const; - public: - void clear_animate_always(); - bool animate_always() const; - void set_animate_always(bool value); - private: - bool _internal_animate_always() const; - void _internal_set_animate_always(bool value); - public: - - // optional bool fullbank = 32; - bool has_fullbank() const; - private: - bool _internal_has_fullbank() const; - public: - void clear_fullbank(); - bool fullbank() const; - void set_fullbank(bool value); - private: - bool _internal_fullbank() const; - void _internal_set_fullbank(bool value); - public: - - // optional bool ignore_look = 33; - bool has_ignore_look() const; - private: - bool _internal_has_ignore_look() const; - public: - void clear_ignore_look(); - bool ignore_look() const; - void set_ignore_look(bool value); - private: - bool _internal_ignore_look() const; - void _internal_set_ignore_look(bool value); - public: - - // optional bool wrap = 37; - bool has_wrap() const; - private: - bool _internal_has_wrap() const; - public: - void clear_wrap(); - bool wrap() const; - void set_wrap(bool value); - private: - bool _internal_wrap() const; - void _internal_set_wrap(bool value); - public: - - // optional bool unwrap = 38; - bool has_unwrap() const; - private: - bool _internal_has_unwrap() const; - public: - void clear_unwrap(); - bool unwrap() const; - void set_unwrap(bool value); - private: - bool _internal_unwrap() const; - void _internal_set_unwrap(bool value); - public: - - // optional bool topeffect = 39; - bool has_topeffect() const; - private: - bool _internal_has_topeffect() const; - public: - void clear_topeffect(); - bool topeffect() const; - void set_topeffect(bool value); - private: - bool _internal_topeffect() const; - void _internal_set_topeffect(bool value); - public: - - // optional bool corpse = 42; - bool has_corpse() const; - private: - bool _internal_has_corpse() const; - public: - void clear_corpse(); - bool corpse() const; - void set_corpse(bool value); - private: - bool _internal_corpse() const; - void _internal_set_corpse(bool value); - public: - - // optional bool player_corpse = 43; - bool has_player_corpse() const; - private: - bool _internal_has_player_corpse() const; - public: - void clear_player_corpse(); - bool player_corpse() const; - void set_player_corpse(bool value); - private: - bool _internal_player_corpse() const; - void _internal_set_player_corpse(bool value); - public: - - // optional bool ammo = 45; - bool has_ammo() const; - private: - bool _internal_has_ammo() const; - public: - void clear_ammo(); - bool ammo() const; - void set_ammo(bool value); - private: - bool _internal_ammo() const; - void _internal_set_ammo(bool value); - public: - - // optional bool show_off_socket = 46; - bool has_show_off_socket() const; - private: - bool _internal_has_show_off_socket() const; - public: - void clear_show_off_socket(); - bool show_off_socket() const; - void set_show_off_socket(bool value); - private: - bool _internal_show_off_socket() const; - void _internal_set_show_off_socket(bool value); - public: - - // optional bool reportable = 47; - bool has_reportable() const; - private: - bool _internal_has_reportable() const; - public: - void clear_reportable(); - bool reportable() const; - void set_reportable(bool value); - private: - bool _internal_reportable() const; - void _internal_set_reportable(bool value); - public: - - // optional bool reverse_addons_east = 49; - bool has_reverse_addons_east() const; - private: - bool _internal_has_reverse_addons_east() const; - public: - void clear_reverse_addons_east(); - bool reverse_addons_east() const; - void set_reverse_addons_east(bool value); - private: - bool _internal_reverse_addons_east() const; - void _internal_set_reverse_addons_east(bool value); - public: - - // optional bool reverse_addons_west = 50; - bool has_reverse_addons_west() const; - private: - bool _internal_has_reverse_addons_west() const; - public: - void clear_reverse_addons_west(); - bool reverse_addons_west() const; - void set_reverse_addons_west(bool value); - private: - bool _internal_reverse_addons_west() const; - void _internal_set_reverse_addons_west(bool value); - public: - - // optional bool reverse_addons_south = 51; - bool has_reverse_addons_south() const; - private: - bool _internal_has_reverse_addons_south() const; - public: - void clear_reverse_addons_south(); - bool reverse_addons_south() const; - void set_reverse_addons_south(bool value); - private: - bool _internal_reverse_addons_south() const; - void _internal_set_reverse_addons_south(bool value); - public: - - // optional bool reverse_addons_north = 52; - bool has_reverse_addons_north() const; - private: - bool _internal_has_reverse_addons_north() const; - public: - void clear_reverse_addons_north(); - bool reverse_addons_north() const; - void set_reverse_addons_north(bool value); - private: - bool _internal_reverse_addons_north() const; - void _internal_set_reverse_addons_north(bool value); - public: - - // optional bool wearout = 53; - bool has_wearout() const; - private: - bool _internal_has_wearout() const; - public: - void clear_wearout(); - bool wearout() const; - void set_wearout(bool value); - private: - bool _internal_wearout() const; - void _internal_set_wearout(bool value); - public: - - // optional bool clockexpire = 54; - bool has_clockexpire() const; - private: - bool _internal_has_clockexpire() const; - public: - void clear_clockexpire(); - bool clockexpire() const; - void set_clockexpire(bool value); - private: - bool _internal_clockexpire() const; - void _internal_set_clockexpire(bool value); - public: - - // optional bool expire = 55; - bool has_expire() const; - private: - bool _internal_has_expire() const; - public: - void clear_expire(); - bool expire() const; - void set_expire(bool value); - private: - bool _internal_expire() const; - void _internal_set_expire(bool value); - public: - - // optional bool expirestop = 56; - bool has_expirestop() const; - private: - bool _internal_has_expirestop() const; - public: - void clear_expirestop(); - bool expirestop() const; - void set_expirestop(bool value); - private: - bool _internal_expirestop() const; - void _internal_set_expirestop(bool value); - public: - - // optional bool wrapkit = 57; - bool has_wrapkit() const; - private: - bool _internal_has_wrapkit() const; - public: - void clear_wrapkit(); - bool wrapkit() const; - void set_wrapkit(bool value); - private: - bool _internal_wrapkit() const; - void _internal_set_wrapkit(bool value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlags) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::AppearanceFlagNPC > npcsaledata_; - ::Canary::protobuf::appearances::AppearanceFlagBank* bank_; - ::Canary::protobuf::appearances::AppearanceFlagWrite* write_; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once_; - ::Canary::protobuf::appearances::AppearanceFlagHook* hook_; - ::Canary::protobuf::appearances::AppearanceFlagLight* light_; - ::Canary::protobuf::appearances::AppearanceFlagShift* shift_; - ::Canary::protobuf::appearances::AppearanceFlagHeight* height_; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap_; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp_; - ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes_; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action_; - ::Canary::protobuf::appearances::AppearanceFlagMarket* market_; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire_; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem_; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification_; - bool clip_; - bool bottom_; - bool top_; - bool container_; - bool cumulative_; - bool usable_; - bool forceuse_; - bool multiuse_; - bool liquidpool_; - bool unpass_; - bool unmove_; - bool unsight_; - bool avoid_; - bool no_movement_animation_; - bool take_; - bool liquidcontainer_; - bool hang_; - bool rotate_; - bool dont_hide_; - bool translucent_; - bool lying_object_; - bool animate_always_; - bool fullbank_; - bool ignore_look_; - bool wrap_; - bool unwrap_; - bool topeffect_; - bool corpse_; - bool player_corpse_; - bool ammo_; - bool show_off_socket_; - bool reportable_; - bool reverse_addons_east_; - bool reverse_addons_west_; - bool reverse_addons_south_; - bool reverse_addons_north_; - bool wearout_; - bool clockexpire_; - bool expire_; - bool expirestop_; - bool wrapkit_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagUpgradeClassification final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) */ { - public: - inline AppearanceFlagUpgradeClassification() : AppearanceFlagUpgradeClassification(nullptr) {} - ~AppearanceFlagUpgradeClassification() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagUpgradeClassification(const AppearanceFlagUpgradeClassification& from); - AppearanceFlagUpgradeClassification(AppearanceFlagUpgradeClassification&& from) noexcept - : AppearanceFlagUpgradeClassification() { - *this = ::std::move(from); - } - - inline AppearanceFlagUpgradeClassification& operator=(const AppearanceFlagUpgradeClassification& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagUpgradeClassification& operator=(AppearanceFlagUpgradeClassification&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagUpgradeClassification& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagUpgradeClassification* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagUpgradeClassification_default_instance_); - } - static constexpr int kIndexInFileMessages = - 9; - - friend void swap(AppearanceFlagUpgradeClassification& a, AppearanceFlagUpgradeClassification& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagUpgradeClassification* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagUpgradeClassification* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagUpgradeClassification* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagUpgradeClassification& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagUpgradeClassification& from) { - AppearanceFlagUpgradeClassification::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagUpgradeClassification* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagUpgradeClassification"; - } - protected: - explicit AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kUpgradeClassificationFieldNumber = 1, - }; - // optional uint32 upgrade_classification = 1; - bool has_upgrade_classification() const; - private: - bool _internal_has_upgrade_classification() const; - public: - void clear_upgrade_classification(); - uint32_t upgrade_classification() const; - void set_upgrade_classification(uint32_t value); - private: - uint32_t _internal_upgrade_classification() const; - void _internal_set_upgrade_classification(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t upgrade_classification_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagBank final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagBank) */ { - public: - inline AppearanceFlagBank() : AppearanceFlagBank(nullptr) {} - ~AppearanceFlagBank() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagBank(const AppearanceFlagBank& from); - AppearanceFlagBank(AppearanceFlagBank&& from) noexcept - : AppearanceFlagBank() { - *this = ::std::move(from); - } - - inline AppearanceFlagBank& operator=(const AppearanceFlagBank& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagBank& operator=(AppearanceFlagBank&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagBank& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagBank* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagBank_default_instance_); - } - static constexpr int kIndexInFileMessages = - 10; - - friend void swap(AppearanceFlagBank& a, AppearanceFlagBank& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagBank* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagBank* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagBank* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagBank& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagBank& from) { - AppearanceFlagBank::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagBank* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagBank"; - } - protected: - explicit AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kWaypointsFieldNumber = 1, - }; - // optional uint32 waypoints = 1; - bool has_waypoints() const; - private: - bool _internal_has_waypoints() const; - public: - void clear_waypoints(); - uint32_t waypoints() const; - void set_waypoints(uint32_t value); - private: - uint32_t _internal_waypoints() const; - void _internal_set_waypoints(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagBank) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t waypoints_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagWrite final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagWrite) */ { - public: - inline AppearanceFlagWrite() : AppearanceFlagWrite(nullptr) {} - ~AppearanceFlagWrite() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagWrite(const AppearanceFlagWrite& from); - AppearanceFlagWrite(AppearanceFlagWrite&& from) noexcept - : AppearanceFlagWrite() { - *this = ::std::move(from); - } - - inline AppearanceFlagWrite& operator=(const AppearanceFlagWrite& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagWrite& operator=(AppearanceFlagWrite&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagWrite& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagWrite* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagWrite_default_instance_); - } - static constexpr int kIndexInFileMessages = - 11; - - friend void swap(AppearanceFlagWrite& a, AppearanceFlagWrite& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagWrite* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagWrite* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagWrite* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagWrite& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagWrite& from) { - AppearanceFlagWrite::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagWrite* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagWrite"; - } - protected: - explicit AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kMaxTextLengthFieldNumber = 1, - }; - // optional uint32 max_text_length = 1; - bool has_max_text_length() const; - private: - bool _internal_has_max_text_length() const; - public: - void clear_max_text_length(); - uint32_t max_text_length() const; - void set_max_text_length(uint32_t value); - private: - uint32_t _internal_max_text_length() const; - void _internal_set_max_text_length(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagWrite) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t max_text_length_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagWriteOnce final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagWriteOnce) */ { - public: - inline AppearanceFlagWriteOnce() : AppearanceFlagWriteOnce(nullptr) {} - ~AppearanceFlagWriteOnce() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagWriteOnce(const AppearanceFlagWriteOnce& from); - AppearanceFlagWriteOnce(AppearanceFlagWriteOnce&& from) noexcept - : AppearanceFlagWriteOnce() { - *this = ::std::move(from); - } - - inline AppearanceFlagWriteOnce& operator=(const AppearanceFlagWriteOnce& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagWriteOnce& operator=(AppearanceFlagWriteOnce&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagWriteOnce& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagWriteOnce* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagWriteOnce_default_instance_); - } - static constexpr int kIndexInFileMessages = - 12; - - friend void swap(AppearanceFlagWriteOnce& a, AppearanceFlagWriteOnce& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagWriteOnce* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagWriteOnce* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagWriteOnce* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagWriteOnce& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagWriteOnce& from) { - AppearanceFlagWriteOnce::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagWriteOnce* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagWriteOnce"; - } - protected: - explicit AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kMaxTextLengthOnceFieldNumber = 1, - }; - // optional uint32 max_text_length_once = 1; - bool has_max_text_length_once() const; - private: - bool _internal_has_max_text_length_once() const; - public: - void clear_max_text_length_once(); - uint32_t max_text_length_once() const; - void set_max_text_length_once(uint32_t value); - private: - uint32_t _internal_max_text_length_once() const; - void _internal_set_max_text_length_once(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t max_text_length_once_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagLight final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagLight) */ { - public: - inline AppearanceFlagLight() : AppearanceFlagLight(nullptr) {} - ~AppearanceFlagLight() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagLight(const AppearanceFlagLight& from); - AppearanceFlagLight(AppearanceFlagLight&& from) noexcept - : AppearanceFlagLight() { - *this = ::std::move(from); - } - - inline AppearanceFlagLight& operator=(const AppearanceFlagLight& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagLight& operator=(AppearanceFlagLight&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagLight& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagLight* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagLight_default_instance_); - } - static constexpr int kIndexInFileMessages = - 13; - - friend void swap(AppearanceFlagLight& a, AppearanceFlagLight& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagLight* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagLight* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagLight* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagLight& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagLight& from) { - AppearanceFlagLight::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagLight* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagLight"; - } - protected: - explicit AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kBrightnessFieldNumber = 1, - kColorFieldNumber = 2, - }; - // optional uint32 brightness = 1; - bool has_brightness() const; - private: - bool _internal_has_brightness() const; - public: - void clear_brightness(); - uint32_t brightness() const; - void set_brightness(uint32_t value); - private: - uint32_t _internal_brightness() const; - void _internal_set_brightness(uint32_t value); - public: - - // optional uint32 color = 2; - bool has_color() const; - private: - bool _internal_has_color() const; - public: - void clear_color(); - uint32_t color() const; - void set_color(uint32_t value); - private: - uint32_t _internal_color() const; - void _internal_set_color(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagLight) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t brightness_; - uint32_t color_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagHeight final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagHeight) */ { - public: - inline AppearanceFlagHeight() : AppearanceFlagHeight(nullptr) {} - ~AppearanceFlagHeight() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagHeight(const AppearanceFlagHeight& from); - AppearanceFlagHeight(AppearanceFlagHeight&& from) noexcept - : AppearanceFlagHeight() { - *this = ::std::move(from); - } - - inline AppearanceFlagHeight& operator=(const AppearanceFlagHeight& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagHeight& operator=(AppearanceFlagHeight&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagHeight& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagHeight* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagHeight_default_instance_); - } - static constexpr int kIndexInFileMessages = - 14; - - friend void swap(AppearanceFlagHeight& a, AppearanceFlagHeight& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagHeight* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagHeight* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagHeight* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagHeight& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagHeight& from) { - AppearanceFlagHeight::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagHeight* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagHeight"; - } - protected: - explicit AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kElevationFieldNumber = 1, - }; - // optional uint32 elevation = 1; - bool has_elevation() const; - private: - bool _internal_has_elevation() const; - public: - void clear_elevation(); - uint32_t elevation() const; - void set_elevation(uint32_t value); - private: - uint32_t _internal_elevation() const; - void _internal_set_elevation(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagHeight) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t elevation_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagShift final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagShift) */ { - public: - inline AppearanceFlagShift() : AppearanceFlagShift(nullptr) {} - ~AppearanceFlagShift() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagShift(const AppearanceFlagShift& from); - AppearanceFlagShift(AppearanceFlagShift&& from) noexcept - : AppearanceFlagShift() { - *this = ::std::move(from); - } - - inline AppearanceFlagShift& operator=(const AppearanceFlagShift& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagShift& operator=(AppearanceFlagShift&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagShift& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagShift* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagShift_default_instance_); - } - static constexpr int kIndexInFileMessages = - 15; - - friend void swap(AppearanceFlagShift& a, AppearanceFlagShift& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagShift* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagShift* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagShift* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagShift& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagShift& from) { - AppearanceFlagShift::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagShift* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagShift"; - } - protected: - explicit AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kXFieldNumber = 1, - kYFieldNumber = 2, - }; - // optional uint32 x = 1; - bool has_x() const; - private: - bool _internal_has_x() const; - public: - void clear_x(); - uint32_t x() const; - void set_x(uint32_t value); - private: - uint32_t _internal_x() const; - void _internal_set_x(uint32_t value); - public: - - // optional uint32 y = 2; - bool has_y() const; - private: - bool _internal_has_y() const; - public: - void clear_y(); - uint32_t y() const; - void set_y(uint32_t value); - private: - uint32_t _internal_y() const; - void _internal_set_y(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagShift) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t x_; - uint32_t y_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagClothes final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagClothes) */ { - public: - inline AppearanceFlagClothes() : AppearanceFlagClothes(nullptr) {} - ~AppearanceFlagClothes() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagClothes(const AppearanceFlagClothes& from); - AppearanceFlagClothes(AppearanceFlagClothes&& from) noexcept - : AppearanceFlagClothes() { - *this = ::std::move(from); - } - - inline AppearanceFlagClothes& operator=(const AppearanceFlagClothes& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagClothes& operator=(AppearanceFlagClothes&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagClothes& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagClothes* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagClothes_default_instance_); - } - static constexpr int kIndexInFileMessages = - 16; - - friend void swap(AppearanceFlagClothes& a, AppearanceFlagClothes& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagClothes* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagClothes* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagClothes* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagClothes& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagClothes& from) { - AppearanceFlagClothes::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagClothes* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagClothes"; - } - protected: - explicit AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSlotFieldNumber = 1, - }; - // optional uint32 slot = 1; - bool has_slot() const; - private: - bool _internal_has_slot() const; - public: - void clear_slot(); - uint32_t slot() const; - void set_slot(uint32_t value); - private: - uint32_t _internal_slot() const; - void _internal_set_slot(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagClothes) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t slot_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagDefaultAction final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagDefaultAction) */ { - public: - inline AppearanceFlagDefaultAction() : AppearanceFlagDefaultAction(nullptr) {} - ~AppearanceFlagDefaultAction() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagDefaultAction(const AppearanceFlagDefaultAction& from); - AppearanceFlagDefaultAction(AppearanceFlagDefaultAction&& from) noexcept - : AppearanceFlagDefaultAction() { - *this = ::std::move(from); - } - - inline AppearanceFlagDefaultAction& operator=(const AppearanceFlagDefaultAction& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagDefaultAction& operator=(AppearanceFlagDefaultAction&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagDefaultAction& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagDefaultAction* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagDefaultAction_default_instance_); - } - static constexpr int kIndexInFileMessages = - 17; - - friend void swap(AppearanceFlagDefaultAction& a, AppearanceFlagDefaultAction& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagDefaultAction* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagDefaultAction* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagDefaultAction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagDefaultAction& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagDefaultAction& from) { - AppearanceFlagDefaultAction::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagDefaultAction* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagDefaultAction"; - } - protected: - explicit AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kActionFieldNumber = 1, - }; - // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; - bool has_action() const; - private: - bool _internal_has_action() const; - public: - void clear_action(); - ::Canary::protobuf::appearances::PLAYER_ACTION action() const; - void set_action(::Canary::protobuf::appearances::PLAYER_ACTION value); - private: - ::Canary::protobuf::appearances::PLAYER_ACTION _internal_action() const; - void _internal_set_action(::Canary::protobuf::appearances::PLAYER_ACTION value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - int action_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagMarket final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagMarket) */ { - public: - inline AppearanceFlagMarket() : AppearanceFlagMarket(nullptr) {} - ~AppearanceFlagMarket() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagMarket(const AppearanceFlagMarket& from); - AppearanceFlagMarket(AppearanceFlagMarket&& from) noexcept - : AppearanceFlagMarket() { - *this = ::std::move(from); - } - - inline AppearanceFlagMarket& operator=(const AppearanceFlagMarket& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagMarket& operator=(AppearanceFlagMarket&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagMarket& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagMarket* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagMarket_default_instance_); - } - static constexpr int kIndexInFileMessages = - 18; - - friend void swap(AppearanceFlagMarket& a, AppearanceFlagMarket& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagMarket* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagMarket* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagMarket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagMarket& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagMarket& from) { - AppearanceFlagMarket::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagMarket* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagMarket"; - } - protected: - explicit AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kRestrictToProfessionFieldNumber = 5, - kTradeAsObjectIdFieldNumber = 2, - kShowAsObjectIdFieldNumber = 3, - kMinimumLevelFieldNumber = 6, - kCategoryFieldNumber = 1, - }; - // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; - int restrict_to_profession_size() const; - private: - int _internal_restrict_to_profession_size() const; - public: - void clear_restrict_to_profession(); - private: - ::Canary::protobuf::appearances::PLAYER_PROFESSION _internal_restrict_to_profession(int index) const; - void _internal_add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField* _internal_mutable_restrict_to_profession(); - public: - ::Canary::protobuf::appearances::PLAYER_PROFESSION restrict_to_profession(int index) const; - void set_restrict_to_profession(int index, ::Canary::protobuf::appearances::PLAYER_PROFESSION value); - void add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField& restrict_to_profession() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField* mutable_restrict_to_profession(); - - // optional uint32 trade_as_object_id = 2; - bool has_trade_as_object_id() const; - private: - bool _internal_has_trade_as_object_id() const; - public: - void clear_trade_as_object_id(); - uint32_t trade_as_object_id() const; - void set_trade_as_object_id(uint32_t value); - private: - uint32_t _internal_trade_as_object_id() const; - void _internal_set_trade_as_object_id(uint32_t value); - public: - - // optional uint32 show_as_object_id = 3; - bool has_show_as_object_id() const; - private: - bool _internal_has_show_as_object_id() const; - public: - void clear_show_as_object_id(); - uint32_t show_as_object_id() const; - void set_show_as_object_id(uint32_t value); - private: - uint32_t _internal_show_as_object_id() const; - void _internal_set_show_as_object_id(uint32_t value); - public: - - // optional uint32 minimum_level = 6; - bool has_minimum_level() const; - private: - bool _internal_has_minimum_level() const; - public: - void clear_minimum_level(); - uint32_t minimum_level() const; - void set_minimum_level(uint32_t value); - private: - uint32_t _internal_minimum_level() const; - void _internal_set_minimum_level(uint32_t value); - public: - - // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; - bool has_category() const; - private: - bool _internal_has_category() const; - public: - void clear_category(); - ::Canary::protobuf::appearances::ITEM_CATEGORY category() const; - void set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value); - private: - ::Canary::protobuf::appearances::ITEM_CATEGORY _internal_category() const; - void _internal_set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagMarket) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField restrict_to_profession_; - uint32_t trade_as_object_id_; - uint32_t show_as_object_id_; - uint32_t minimum_level_; - int category_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagNPC final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagNPC) */ { - public: - inline AppearanceFlagNPC() : AppearanceFlagNPC(nullptr) {} - ~AppearanceFlagNPC() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagNPC(const AppearanceFlagNPC& from); - AppearanceFlagNPC(AppearanceFlagNPC&& from) noexcept - : AppearanceFlagNPC() { - *this = ::std::move(from); - } - - inline AppearanceFlagNPC& operator=(const AppearanceFlagNPC& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagNPC& operator=(AppearanceFlagNPC&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagNPC& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagNPC* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagNPC_default_instance_); - } - static constexpr int kIndexInFileMessages = - 19; - - friend void swap(AppearanceFlagNPC& a, AppearanceFlagNPC& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagNPC* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagNPC* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagNPC* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagNPC& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagNPC& from) { - AppearanceFlagNPC::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagNPC* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagNPC"; - } - protected: - explicit AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kNameFieldNumber = 1, - kLocationFieldNumber = 2, - kCurrencyQuestFlagDisplayNameFieldNumber = 6, - kSalePriceFieldNumber = 3, - kBuyPriceFieldNumber = 4, - kCurrencyObjectTypeIdFieldNumber = 5, - }; - // optional bytes name = 1; - bool has_name() const; - private: - bool _internal_has_name() const; - public: - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: - - // optional bytes location = 2; - bool has_location() const; - private: - bool _internal_has_location() const; - public: - void clear_location(); - const std::string& location() const; - template - void set_location(ArgT0&& arg0, ArgT... args); - std::string* mutable_location(); - PROTOBUF_NODISCARD std::string* release_location(); - void set_allocated_location(std::string* location); - private: - const std::string& _internal_location() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_location(const std::string& value); - std::string* _internal_mutable_location(); - public: - - // optional bytes currency_quest_flag_display_name = 6; - bool has_currency_quest_flag_display_name() const; - private: - bool _internal_has_currency_quest_flag_display_name() const; - public: - void clear_currency_quest_flag_display_name(); - const std::string& currency_quest_flag_display_name() const; - template - void set_currency_quest_flag_display_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_currency_quest_flag_display_name(); - PROTOBUF_NODISCARD std::string* release_currency_quest_flag_display_name(); - void set_allocated_currency_quest_flag_display_name(std::string* currency_quest_flag_display_name); - private: - const std::string& _internal_currency_quest_flag_display_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_currency_quest_flag_display_name(const std::string& value); - std::string* _internal_mutable_currency_quest_flag_display_name(); - public: - - // optional uint32 sale_price = 3; - bool has_sale_price() const; - private: - bool _internal_has_sale_price() const; - public: - void clear_sale_price(); - uint32_t sale_price() const; - void set_sale_price(uint32_t value); - private: - uint32_t _internal_sale_price() const; - void _internal_set_sale_price(uint32_t value); - public: - - // optional uint32 buy_price = 4; - bool has_buy_price() const; - private: - bool _internal_has_buy_price() const; - public: - void clear_buy_price(); - uint32_t buy_price() const; - void set_buy_price(uint32_t value); - private: - uint32_t _internal_buy_price() const; - void _internal_set_buy_price(uint32_t value); - public: - - // optional uint32 currency_object_type_id = 5; - bool has_currency_object_type_id() const; - private: - bool _internal_has_currency_object_type_id() const; - public: - void clear_currency_object_type_id(); - uint32_t currency_object_type_id() const; - void set_currency_object_type_id(uint32_t value); - private: - uint32_t _internal_currency_object_type_id() const; - void _internal_set_currency_object_type_id(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagNPC) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr location_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr currency_quest_flag_display_name_; - uint32_t sale_price_; - uint32_t buy_price_; - uint32_t currency_object_type_id_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagAutomap final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagAutomap) */ { - public: - inline AppearanceFlagAutomap() : AppearanceFlagAutomap(nullptr) {} - ~AppearanceFlagAutomap() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagAutomap(const AppearanceFlagAutomap& from); - AppearanceFlagAutomap(AppearanceFlagAutomap&& from) noexcept - : AppearanceFlagAutomap() { - *this = ::std::move(from); - } - - inline AppearanceFlagAutomap& operator=(const AppearanceFlagAutomap& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagAutomap& operator=(AppearanceFlagAutomap&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagAutomap& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagAutomap* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagAutomap_default_instance_); - } - static constexpr int kIndexInFileMessages = - 20; - - friend void swap(AppearanceFlagAutomap& a, AppearanceFlagAutomap& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagAutomap* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagAutomap* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagAutomap* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagAutomap& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagAutomap& from) { - AppearanceFlagAutomap::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagAutomap* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagAutomap"; - } - protected: - explicit AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kColorFieldNumber = 1, - }; - // optional uint32 color = 1; - bool has_color() const; - private: - bool _internal_has_color() const; - public: - void clear_color(); - uint32_t color() const; - void set_color(uint32_t value); - private: - uint32_t _internal_color() const; - void _internal_set_color(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagAutomap) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t color_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagHook final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagHook) */ { - public: - inline AppearanceFlagHook() : AppearanceFlagHook(nullptr) {} - ~AppearanceFlagHook() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagHook(const AppearanceFlagHook& from); - AppearanceFlagHook(AppearanceFlagHook&& from) noexcept - : AppearanceFlagHook() { - *this = ::std::move(from); - } - - inline AppearanceFlagHook& operator=(const AppearanceFlagHook& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagHook& operator=(AppearanceFlagHook&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagHook& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagHook* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagHook_default_instance_); - } - static constexpr int kIndexInFileMessages = - 21; - - friend void swap(AppearanceFlagHook& a, AppearanceFlagHook& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagHook* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagHook* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagHook* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagHook& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagHook& from) { - AppearanceFlagHook::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagHook* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagHook"; - } - protected: - explicit AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kDirectionFieldNumber = 1, - }; - // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; - bool has_direction() const; - private: - bool _internal_has_direction() const; - public: - void clear_direction(); - ::Canary::protobuf::appearances::HOOK_TYPE direction() const; - void set_direction(::Canary::protobuf::appearances::HOOK_TYPE value); - private: - ::Canary::protobuf::appearances::HOOK_TYPE _internal_direction() const; - void _internal_set_direction(::Canary::protobuf::appearances::HOOK_TYPE value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagHook) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - int direction_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagLenshelp final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagLenshelp) */ { - public: - inline AppearanceFlagLenshelp() : AppearanceFlagLenshelp(nullptr) {} - ~AppearanceFlagLenshelp() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagLenshelp(const AppearanceFlagLenshelp& from); - AppearanceFlagLenshelp(AppearanceFlagLenshelp&& from) noexcept - : AppearanceFlagLenshelp() { - *this = ::std::move(from); - } - - inline AppearanceFlagLenshelp& operator=(const AppearanceFlagLenshelp& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagLenshelp& operator=(AppearanceFlagLenshelp&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagLenshelp& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagLenshelp* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagLenshelp_default_instance_); - } - static constexpr int kIndexInFileMessages = - 22; - - friend void swap(AppearanceFlagLenshelp& a, AppearanceFlagLenshelp& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagLenshelp* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagLenshelp* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagLenshelp* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagLenshelp& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagLenshelp& from) { - AppearanceFlagLenshelp::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagLenshelp* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagLenshelp"; - } - protected: - explicit AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kIdFieldNumber = 1, - }; - // optional uint32 id = 1; - bool has_id() const; - private: - bool _internal_has_id() const; - public: - void clear_id(); - uint32_t id() const; - void set_id(uint32_t value); - private: - uint32_t _internal_id() const; - void _internal_set_id(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagLenshelp) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t id_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagChangedToExpire final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) */ { - public: - inline AppearanceFlagChangedToExpire() : AppearanceFlagChangedToExpire(nullptr) {} - ~AppearanceFlagChangedToExpire() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagChangedToExpire(const AppearanceFlagChangedToExpire& from); - AppearanceFlagChangedToExpire(AppearanceFlagChangedToExpire&& from) noexcept - : AppearanceFlagChangedToExpire() { - *this = ::std::move(from); - } - - inline AppearanceFlagChangedToExpire& operator=(const AppearanceFlagChangedToExpire& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagChangedToExpire& operator=(AppearanceFlagChangedToExpire&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagChangedToExpire& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagChangedToExpire* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagChangedToExpire_default_instance_); - } - static constexpr int kIndexInFileMessages = - 23; - - friend void swap(AppearanceFlagChangedToExpire& a, AppearanceFlagChangedToExpire& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagChangedToExpire* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagChangedToExpire* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagChangedToExpire* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagChangedToExpire& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagChangedToExpire& from) { - AppearanceFlagChangedToExpire::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagChangedToExpire* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagChangedToExpire"; - } - protected: - explicit AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kFormerObjectTypeidFieldNumber = 1, - }; - // optional uint32 former_object_typeid = 1; - bool has_former_object_typeid() const; - private: - bool _internal_has_former_object_typeid() const; - public: - void clear_former_object_typeid(); - uint32_t former_object_typeid() const; - void set_former_object_typeid(uint32_t value); - private: - uint32_t _internal_former_object_typeid() const; - void _internal_set_former_object_typeid(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t former_object_typeid_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class AppearanceFlagCyclopedia final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagCyclopedia) */ { - public: - inline AppearanceFlagCyclopedia() : AppearanceFlagCyclopedia(nullptr) {} - ~AppearanceFlagCyclopedia() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagCyclopedia(const AppearanceFlagCyclopedia& from); - AppearanceFlagCyclopedia(AppearanceFlagCyclopedia&& from) noexcept - : AppearanceFlagCyclopedia() { - *this = ::std::move(from); - } - - inline AppearanceFlagCyclopedia& operator=(const AppearanceFlagCyclopedia& from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagCyclopedia& operator=(AppearanceFlagCyclopedia&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagCyclopedia& default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagCyclopedia* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagCyclopedia_default_instance_); - } - static constexpr int kIndexInFileMessages = - 24; - - friend void swap(AppearanceFlagCyclopedia& a, AppearanceFlagCyclopedia& b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagCyclopedia* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagCyclopedia* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagCyclopedia* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagCyclopedia& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AppearanceFlagCyclopedia& from) { - AppearanceFlagCyclopedia::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagCyclopedia* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagCyclopedia"; - } - protected: - explicit AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kCyclopediaTypeFieldNumber = 1, - }; - // optional uint32 cyclopedia_type = 1; - bool has_cyclopedia_type() const; - private: - bool _internal_has_cyclopedia_type() const; - public: - void clear_cyclopedia_type(); - uint32_t cyclopedia_type() const; - void set_cyclopedia_type(uint32_t value); - private: - uint32_t _internal_cyclopedia_type() const; - void _internal_set_cyclopedia_type(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t cyclopedia_type_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// ------------------------------------------------------------------- - -class SpecialMeaningAppearanceIds final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) */ { - public: - inline SpecialMeaningAppearanceIds() : SpecialMeaningAppearanceIds(nullptr) {} - ~SpecialMeaningAppearanceIds() override; - explicit PROTOBUF_CONSTEXPR SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpecialMeaningAppearanceIds(const SpecialMeaningAppearanceIds& from); - SpecialMeaningAppearanceIds(SpecialMeaningAppearanceIds&& from) noexcept - : SpecialMeaningAppearanceIds() { - *this = ::std::move(from); - } - - inline SpecialMeaningAppearanceIds& operator=(const SpecialMeaningAppearanceIds& from) { - CopyFrom(from); - return *this; - } - inline SpecialMeaningAppearanceIds& operator=(SpecialMeaningAppearanceIds&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpecialMeaningAppearanceIds& default_instance() { - return *internal_default_instance(); - } - static inline const SpecialMeaningAppearanceIds* internal_default_instance() { - return reinterpret_cast( - &_SpecialMeaningAppearanceIds_default_instance_); - } - static constexpr int kIndexInFileMessages = - 25; - - friend void swap(SpecialMeaningAppearanceIds& a, SpecialMeaningAppearanceIds& b) { - a.Swap(&b); - } - inline void Swap(SpecialMeaningAppearanceIds* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpecialMeaningAppearanceIds* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpecialMeaningAppearanceIds* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpecialMeaningAppearanceIds& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SpecialMeaningAppearanceIds& from) { - SpecialMeaningAppearanceIds::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpecialMeaningAppearanceIds* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpecialMeaningAppearanceIds"; - } - protected: - explicit SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kGoldCoinIdFieldNumber = 1, - kPlatinumCoinIdFieldNumber = 2, - kCrystalCoinIdFieldNumber = 3, - kTibiaCoinIdFieldNumber = 4, - kStampedLetterIdFieldNumber = 5, - kSupplyStashIdFieldNumber = 6, - kRewardChestIdFieldNumber = 7, - }; - // optional uint32 gold_coin_id = 1; - bool has_gold_coin_id() const; - private: - bool _internal_has_gold_coin_id() const; - public: - void clear_gold_coin_id(); - uint32_t gold_coin_id() const; - void set_gold_coin_id(uint32_t value); - private: - uint32_t _internal_gold_coin_id() const; - void _internal_set_gold_coin_id(uint32_t value); - public: - - // optional uint32 platinum_coin_id = 2; - bool has_platinum_coin_id() const; - private: - bool _internal_has_platinum_coin_id() const; - public: - void clear_platinum_coin_id(); - uint32_t platinum_coin_id() const; - void set_platinum_coin_id(uint32_t value); - private: - uint32_t _internal_platinum_coin_id() const; - void _internal_set_platinum_coin_id(uint32_t value); - public: - - // optional uint32 crystal_coin_id = 3; - bool has_crystal_coin_id() const; - private: - bool _internal_has_crystal_coin_id() const; - public: - void clear_crystal_coin_id(); - uint32_t crystal_coin_id() const; - void set_crystal_coin_id(uint32_t value); - private: - uint32_t _internal_crystal_coin_id() const; - void _internal_set_crystal_coin_id(uint32_t value); - public: - - // optional uint32 tibia_coin_id = 4; - bool has_tibia_coin_id() const; - private: - bool _internal_has_tibia_coin_id() const; - public: - void clear_tibia_coin_id(); - uint32_t tibia_coin_id() const; - void set_tibia_coin_id(uint32_t value); - private: - uint32_t _internal_tibia_coin_id() const; - void _internal_set_tibia_coin_id(uint32_t value); - public: - - // optional uint32 stamped_letter_id = 5; - bool has_stamped_letter_id() const; - private: - bool _internal_has_stamped_letter_id() const; - public: - void clear_stamped_letter_id(); - uint32_t stamped_letter_id() const; - void set_stamped_letter_id(uint32_t value); - private: - uint32_t _internal_stamped_letter_id() const; - void _internal_set_stamped_letter_id(uint32_t value); - public: - - // optional uint32 supply_stash_id = 6; - bool has_supply_stash_id() const; - private: - bool _internal_has_supply_stash_id() const; - public: - void clear_supply_stash_id(); - uint32_t supply_stash_id() const; - void set_supply_stash_id(uint32_t value); - private: - uint32_t _internal_supply_stash_id() const; - void _internal_set_supply_stash_id(uint32_t value); - public: - - // optional uint32 reward_chest_id = 7; - bool has_reward_chest_id() const; - private: - bool _internal_has_reward_chest_id() const; - public: - void clear_reward_chest_id(); - uint32_t reward_chest_id() const; - void set_reward_chest_id(uint32_t value); - private: - uint32_t _internal_reward_chest_id() const; - void _internal_set_reward_chest_id(uint32_t value); - public: - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t gold_coin_id_; - uint32_t platinum_coin_id_; - uint32_t crystal_coin_id_; - uint32_t tibia_coin_id_; - uint32_t stamped_letter_id_; - uint32_t supply_stash_id_; - uint32_t reward_chest_id_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_appearances_2eproto; -}; -// =================================================================== - - -// =================================================================== - -#ifdef __GNUC__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wstrict-aliasing" -#endif // __GNUC__ -// Coordinate - -// optional uint32 x = 1; -inline bool Coordinate::_internal_has_x() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool Coordinate::has_x() const { - return _internal_has_x(); -} -inline void Coordinate::clear_x() { - _impl_.x_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t Coordinate::_internal_x() const { - return _impl_.x_; -} -inline uint32_t Coordinate::x() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.x) - return _internal_x(); -} -inline void Coordinate::_internal_set_x(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.x_ = value; -} -inline void Coordinate::set_x(uint32_t value) { - _internal_set_x(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.x) -} - -// optional uint32 y = 2; -inline bool Coordinate::_internal_has_y() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool Coordinate::has_y() const { - return _internal_has_y(); -} -inline void Coordinate::clear_y() { - _impl_.y_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t Coordinate::_internal_y() const { - return _impl_.y_; -} -inline uint32_t Coordinate::y() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.y) - return _internal_y(); -} -inline void Coordinate::_internal_set_y(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.y_ = value; -} -inline void Coordinate::set_y(uint32_t value) { - _internal_set_y(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.y) -} - -// optional uint32 z = 3; -inline bool Coordinate::_internal_has_z() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool Coordinate::has_z() const { - return _internal_has_z(); -} -inline void Coordinate::clear_z() { - _impl_.z_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline uint32_t Coordinate::_internal_z() const { - return _impl_.z_; -} -inline uint32_t Coordinate::z() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.z) - return _internal_z(); -} -inline void Coordinate::_internal_set_z(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.z_ = value; -} -inline void Coordinate::set_z(uint32_t value) { - _internal_set_z(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.z) -} - -// ------------------------------------------------------------------- - -// Appearances - -// repeated .Canary.protobuf.appearances.Appearance object = 1; -inline int Appearances::_internal_object_size() const { - return _impl_.object_.size(); -} -inline int Appearances::object_size() const { - return _internal_object_size(); -} -inline void Appearances::clear_object() { - _impl_.object_.Clear(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_object(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.object) - return _impl_.object_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* -Appearances::mutable_object() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.object) - return &_impl_.object_; -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::_internal_object(int index) const { - return _impl_.object_.Get(index); -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::object(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.object) - return _internal_object(index); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_object() { - return _impl_.object_.Add(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::add_object() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_object(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.object) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& -Appearances::object() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.object) - return _impl_.object_; -} - -// repeated .Canary.protobuf.appearances.Appearance outfit = 2; -inline int Appearances::_internal_outfit_size() const { - return _impl_.outfit_.size(); -} -inline int Appearances::outfit_size() const { - return _internal_outfit_size(); -} -inline void Appearances::clear_outfit() { - _impl_.outfit_.Clear(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_outfit(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.outfit) - return _impl_.outfit_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* -Appearances::mutable_outfit() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.outfit) - return &_impl_.outfit_; -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::_internal_outfit(int index) const { - return _impl_.outfit_.Get(index); -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::outfit(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.outfit) - return _internal_outfit(index); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_outfit() { - return _impl_.outfit_.Add(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::add_outfit() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_outfit(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.outfit) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& -Appearances::outfit() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.outfit) - return _impl_.outfit_; -} - -// repeated .Canary.protobuf.appearances.Appearance effect = 3; -inline int Appearances::_internal_effect_size() const { - return _impl_.effect_.size(); -} -inline int Appearances::effect_size() const { - return _internal_effect_size(); -} -inline void Appearances::clear_effect() { - _impl_.effect_.Clear(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_effect(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.effect) - return _impl_.effect_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* -Appearances::mutable_effect() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.effect) - return &_impl_.effect_; -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::_internal_effect(int index) const { - return _impl_.effect_.Get(index); -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::effect(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.effect) - return _internal_effect(index); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_effect() { - return _impl_.effect_.Add(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::add_effect() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_effect(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.effect) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& -Appearances::effect() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.effect) - return _impl_.effect_; -} - -// repeated .Canary.protobuf.appearances.Appearance missile = 4; -inline int Appearances::_internal_missile_size() const { - return _impl_.missile_.size(); -} -inline int Appearances::missile_size() const { - return _internal_missile_size(); -} -inline void Appearances::clear_missile() { - _impl_.missile_.Clear(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_missile(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.missile) - return _impl_.missile_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >* -Appearances::mutable_missile() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.missile) - return &_impl_.missile_; -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::_internal_missile(int index) const { - return _impl_.missile_.Get(index); -} -inline const ::Canary::protobuf::appearances::Appearance& Appearances::missile(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.missile) - return _internal_missile(index); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_missile() { - return _impl_.missile_.Add(); -} -inline ::Canary::protobuf::appearances::Appearance* Appearances::add_missile() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_missile(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.missile) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Appearance >& -Appearances::missile() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.missile) - return _impl_.missile_; -} - -// optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; -inline bool Appearances::_internal_has_special_meaning_appearance_ids() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.special_meaning_appearance_ids_ != nullptr); - return value; -} -inline bool Appearances::has_special_meaning_appearance_ids() const { - return _internal_has_special_meaning_appearance_ids(); -} -inline void Appearances::clear_special_meaning_appearance_ids() { - if (_impl_.special_meaning_appearance_ids_ != nullptr) _impl_.special_meaning_appearance_ids_->Clear(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds& Appearances::_internal_special_meaning_appearance_ids() const { - const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* p = _impl_.special_meaning_appearance_ids_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_SpecialMeaningAppearanceIds_default_instance_); -} -inline const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds& Appearances::special_meaning_appearance_ids() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - return _internal_special_meaning_appearance_ids(); -} -inline void Appearances::unsafe_arena_set_allocated_special_meaning_appearance_ids( - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.special_meaning_appearance_ids_); - } - _impl_.special_meaning_appearance_ids_ = special_meaning_appearance_ids; - if (special_meaning_appearance_ids) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) -} -inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::release_special_meaning_appearance_ids() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* temp = _impl_.special_meaning_appearance_ids_; - _impl_.special_meaning_appearance_ids_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::unsafe_arena_release_special_meaning_appearance_ids() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* temp = _impl_.special_meaning_appearance_ids_; - _impl_.special_meaning_appearance_ids_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::_internal_mutable_special_meaning_appearance_ids() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.special_meaning_appearance_ids_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpecialMeaningAppearanceIds>(GetArenaForAllocation()); - _impl_.special_meaning_appearance_ids_ = p; - } - return _impl_.special_meaning_appearance_ids_; -} -inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::mutable_special_meaning_appearance_ids() { - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* _msg = _internal_mutable_special_meaning_appearance_ids(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - return _msg; -} -inline void Appearances::set_allocated_special_meaning_appearance_ids(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.special_meaning_appearance_ids_; - } - if (special_meaning_appearance_ids) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(special_meaning_appearance_ids); - if (message_arena != submessage_arena) { - special_meaning_appearance_ids = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, special_meaning_appearance_ids, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.special_meaning_appearance_ids_ = special_meaning_appearance_ids; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) -} + namespace protobuf { + namespace appearances { + + enum PLAYER_ACTION : int { + PLAYER_ACTION_NONE = 0, + PLAYER_ACTION_LOOK = 1, + PLAYER_ACTION_USE = 2, + PLAYER_ACTION_OPEN = 3, + PLAYER_ACTION_AUTOWALK_HIGHLIGHT = 4 + }; + bool PLAYER_ACTION_IsValid(int value); + constexpr PLAYER_ACTION PLAYER_ACTION_MIN = PLAYER_ACTION_NONE; + constexpr PLAYER_ACTION PLAYER_ACTION_MAX = PLAYER_ACTION_AUTOWALK_HIGHLIGHT; + constexpr int PLAYER_ACTION_ARRAYSIZE = PLAYER_ACTION_MAX + 1; + + const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_ACTION_descriptor(); + template + inline const std::string &PLAYER_ACTION_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function PLAYER_ACTION_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + PLAYER_ACTION_descriptor(), enum_t_value + ); + } + inline bool PLAYER_ACTION_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PLAYER_ACTION* value + ) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + PLAYER_ACTION_descriptor(), name, value + ); + } + enum ITEM_CATEGORY : int { + ITEM_CATEGORY_ARMORS = 1, + ITEM_CATEGORY_AMULETS = 2, + ITEM_CATEGORY_BOOTS = 3, + ITEM_CATEGORY_CONTAINERS = 4, + ITEM_CATEGORY_DECORATION = 5, + ITEM_CATEGORY_FOOD = 6, + ITEM_CATEGORY_HELMETS_HATS = 7, + ITEM_CATEGORY_LEGS = 8, + ITEM_CATEGORY_OTHERS = 9, + ITEM_CATEGORY_POTIONS = 10, + ITEM_CATEGORY_RINGS = 11, + ITEM_CATEGORY_RUNES = 12, + ITEM_CATEGORY_SHIELDS = 13, + ITEM_CATEGORY_TOOLS = 14, + ITEM_CATEGORY_VALUABLES = 15, + ITEM_CATEGORY_AMMUNITION = 16, + ITEM_CATEGORY_AXES = 17, + ITEM_CATEGORY_CLUBS = 18, + ITEM_CATEGORY_DISTANCE_WEAPONS = 19, + ITEM_CATEGORY_SWORDS = 20, + ITEM_CATEGORY_WANDS_RODS = 21, + ITEM_CATEGORY_PREMIUM_SCROLLS = 22, + ITEM_CATEGORY_TIBIA_COINS = 23, + ITEM_CATEGORY_CREATURE_PRODUCTS = 24, + ITEM_CATEGORY_QUIVER = 25 + }; + bool ITEM_CATEGORY_IsValid(int value); + constexpr ITEM_CATEGORY ITEM_CATEGORY_MIN = ITEM_CATEGORY_ARMORS; + constexpr ITEM_CATEGORY ITEM_CATEGORY_MAX = ITEM_CATEGORY_QUIVER; + constexpr int ITEM_CATEGORY_ARRAYSIZE = ITEM_CATEGORY_MAX + 1; + + const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ITEM_CATEGORY_descriptor(); + template + inline const std::string &ITEM_CATEGORY_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function ITEM_CATEGORY_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + ITEM_CATEGORY_descriptor(), enum_t_value + ); + } + inline bool ITEM_CATEGORY_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ITEM_CATEGORY* value + ) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + ITEM_CATEGORY_descriptor(), name, value + ); + } + enum PLAYER_PROFESSION : int { + PLAYER_PROFESSION_ANY = -1, + PLAYER_PROFESSION_NONE = 0, + PLAYER_PROFESSION_KNIGHT = 1, + PLAYER_PROFESSION_PALADIN = 2, + PLAYER_PROFESSION_SORCERER = 3, + PLAYER_PROFESSION_DRUID = 4, + PLAYER_PROFESSION_PROMOTED = 10 + }; + bool PLAYER_PROFESSION_IsValid(int value); + constexpr PLAYER_PROFESSION PLAYER_PROFESSION_MIN = PLAYER_PROFESSION_ANY; + constexpr PLAYER_PROFESSION PLAYER_PROFESSION_MAX = PLAYER_PROFESSION_PROMOTED; + constexpr int PLAYER_PROFESSION_ARRAYSIZE = PLAYER_PROFESSION_MAX + 1; + + const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_PROFESSION_descriptor(); + template + inline const std::string &PLAYER_PROFESSION_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function PLAYER_PROFESSION_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + PLAYER_PROFESSION_descriptor(), enum_t_value + ); + } + inline bool PLAYER_PROFESSION_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PLAYER_PROFESSION* value + ) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + PLAYER_PROFESSION_descriptor(), name, value + ); + } + enum ANIMATION_LOOP_TYPE : int { + ANIMATION_LOOP_TYPE_PINGPONG = -1, + ANIMATION_LOOP_TYPE_INFINITE = 0, + ANIMATION_LOOP_TYPE_COUNTED = 1 + }; + bool ANIMATION_LOOP_TYPE_IsValid(int value); + constexpr ANIMATION_LOOP_TYPE ANIMATION_LOOP_TYPE_MIN = ANIMATION_LOOP_TYPE_PINGPONG; + constexpr ANIMATION_LOOP_TYPE ANIMATION_LOOP_TYPE_MAX = ANIMATION_LOOP_TYPE_COUNTED; + constexpr int ANIMATION_LOOP_TYPE_ARRAYSIZE = ANIMATION_LOOP_TYPE_MAX + 1; + + const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ANIMATION_LOOP_TYPE_descriptor(); + template + inline const std::string &ANIMATION_LOOP_TYPE_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function ANIMATION_LOOP_TYPE_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + ANIMATION_LOOP_TYPE_descriptor(), enum_t_value + ); + } + inline bool ANIMATION_LOOP_TYPE_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ANIMATION_LOOP_TYPE* value + ) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + ANIMATION_LOOP_TYPE_descriptor(), name, value + ); + } + enum HOOK_TYPE : int { + HOOK_TYPE_SOUTH = 1, + HOOK_TYPE_EAST = 2 + }; + bool HOOK_TYPE_IsValid(int value); + constexpr HOOK_TYPE HOOK_TYPE_MIN = HOOK_TYPE_SOUTH; + constexpr HOOK_TYPE HOOK_TYPE_MAX = HOOK_TYPE_EAST; + constexpr int HOOK_TYPE_ARRAYSIZE = HOOK_TYPE_MAX + 1; + + const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* HOOK_TYPE_descriptor(); + template + inline const std::string &HOOK_TYPE_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function HOOK_TYPE_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + HOOK_TYPE_descriptor(), enum_t_value + ); + } + inline bool HOOK_TYPE_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, HOOK_TYPE* value + ) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + HOOK_TYPE_descriptor(), name, value + ); + } + enum FIXED_FRAME_GROUP : int { + FIXED_FRAME_GROUP_OUTFIT_IDLE = 0, + FIXED_FRAME_GROUP_OUTFIT_MOVING = 1, + FIXED_FRAME_GROUP_OBJECT_INITIAL = 2 + }; + bool FIXED_FRAME_GROUP_IsValid(int value); + constexpr FIXED_FRAME_GROUP FIXED_FRAME_GROUP_MIN = FIXED_FRAME_GROUP_OUTFIT_IDLE; + constexpr FIXED_FRAME_GROUP FIXED_FRAME_GROUP_MAX = FIXED_FRAME_GROUP_OBJECT_INITIAL; + constexpr int FIXED_FRAME_GROUP_ARRAYSIZE = FIXED_FRAME_GROUP_MAX + 1; + + const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FIXED_FRAME_GROUP_descriptor(); + template + inline const std::string &FIXED_FRAME_GROUP_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function FIXED_FRAME_GROUP_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + FIXED_FRAME_GROUP_descriptor(), enum_t_value + ); + } + inline bool FIXED_FRAME_GROUP_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FIXED_FRAME_GROUP* value + ) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + FIXED_FRAME_GROUP_descriptor(), name, value + ); + } + // =================================================================== + + class Coordinate final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Coordinate) */ { + public: + inline Coordinate() : + Coordinate(nullptr) { } + ~Coordinate() override; + explicit PROTOBUF_CONSTEXPR Coordinate(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Coordinate(const Coordinate &from); + Coordinate(Coordinate &&from) noexcept + : + Coordinate() { + *this = ::std::move(from); + } + + inline Coordinate &operator=(const Coordinate &from) { + CopyFrom(from); + return *this; + } + inline Coordinate &operator=(Coordinate &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Coordinate &default_instance() { + return *internal_default_instance(); + } + static inline const Coordinate* internal_default_instance() { + return reinterpret_cast( + &_Coordinate_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 0; + + friend void swap(Coordinate &a, Coordinate &b) { + a.Swap(&b); + } + inline void Swap(Coordinate* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Coordinate* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Coordinate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Coordinate &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Coordinate &from) { + Coordinate::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Coordinate* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.Coordinate"; + } + + protected: + explicit Coordinate(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kXFieldNumber = 1, + kYFieldNumber = 2, + kZFieldNumber = 3, + }; + // optional uint32 x = 1; + bool has_x() const; + + private: + bool _internal_has_x() const; + + public: + void clear_x(); + uint32_t x() const; + void set_x(uint32_t value); + + private: + uint32_t _internal_x() const; + void _internal_set_x(uint32_t value); + + public: + // optional uint32 y = 2; + bool has_y() const; + + private: + bool _internal_has_y() const; + + public: + void clear_y(); + uint32_t y() const; + void set_y(uint32_t value); + + private: + uint32_t _internal_y() const; + void _internal_set_y(uint32_t value); + + public: + // optional uint32 z = 3; + bool has_z() const; + + private: + bool _internal_has_z() const; + + public: + void clear_z(); + uint32_t z() const; + void set_z(uint32_t value); + + private: + uint32_t _internal_z() const; + void _internal_set_z(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Coordinate) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t x_; + uint32_t y_; + uint32_t z_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class Appearances final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Appearances) */ { + public: + inline Appearances() : + Appearances(nullptr) { } + ~Appearances() override; + explicit PROTOBUF_CONSTEXPR Appearances(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Appearances(const Appearances &from); + Appearances(Appearances &&from) noexcept + : + Appearances() { + *this = ::std::move(from); + } + + inline Appearances &operator=(const Appearances &from) { + CopyFrom(from); + return *this; + } + inline Appearances &operator=(Appearances &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Appearances &default_instance() { + return *internal_default_instance(); + } + static inline const Appearances* internal_default_instance() { + return reinterpret_cast( + &_Appearances_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 1; + + friend void swap(Appearances &a, Appearances &b) { + a.Swap(&b); + } + inline void Swap(Appearances* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Appearances* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Appearances* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Appearances &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Appearances &from) { + Appearances::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Appearances* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.Appearances"; + } + + protected: + explicit Appearances(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kObjectFieldNumber = 1, + kOutfitFieldNumber = 2, + kEffectFieldNumber = 3, + kMissileFieldNumber = 4, + kSpecialMeaningAppearanceIdsFieldNumber = 5, + }; + // repeated .Canary.protobuf.appearances.Appearance object = 1; + int object_size() const; + + private: + int _internal_object_size() const; + + public: + void clear_object(); + ::Canary::protobuf::appearances::Appearance* mutable_object(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + mutable_object(); + + private: + const ::Canary::protobuf::appearances::Appearance &_internal_object(int index) const; + ::Canary::protobuf::appearances::Appearance* _internal_add_object(); + + public: + const ::Canary::protobuf::appearances::Appearance &object(int index) const; + ::Canary::protobuf::appearances::Appearance* add_object(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + object() const; + + // repeated .Canary.protobuf.appearances.Appearance outfit = 2; + int outfit_size() const; + + private: + int _internal_outfit_size() const; + + public: + void clear_outfit(); + ::Canary::protobuf::appearances::Appearance* mutable_outfit(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + mutable_outfit(); + + private: + const ::Canary::protobuf::appearances::Appearance &_internal_outfit(int index) const; + ::Canary::protobuf::appearances::Appearance* _internal_add_outfit(); + + public: + const ::Canary::protobuf::appearances::Appearance &outfit(int index) const; + ::Canary::protobuf::appearances::Appearance* add_outfit(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + outfit() const; + + // repeated .Canary.protobuf.appearances.Appearance effect = 3; + int effect_size() const; + + private: + int _internal_effect_size() const; + + public: + void clear_effect(); + ::Canary::protobuf::appearances::Appearance* mutable_effect(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + mutable_effect(); + + private: + const ::Canary::protobuf::appearances::Appearance &_internal_effect(int index) const; + ::Canary::protobuf::appearances::Appearance* _internal_add_effect(); + + public: + const ::Canary::protobuf::appearances::Appearance &effect(int index) const; + ::Canary::protobuf::appearances::Appearance* add_effect(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + effect() const; + + // repeated .Canary.protobuf.appearances.Appearance missile = 4; + int missile_size() const; + + private: + int _internal_missile_size() const; + + public: + void clear_missile(); + ::Canary::protobuf::appearances::Appearance* mutable_missile(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + mutable_missile(); + + private: + const ::Canary::protobuf::appearances::Appearance &_internal_missile(int index) const; + ::Canary::protobuf::appearances::Appearance* _internal_add_missile(); + + public: + const ::Canary::protobuf::appearances::Appearance &missile(int index) const; + ::Canary::protobuf::appearances::Appearance* add_missile(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + missile() const; + + // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; + bool has_special_meaning_appearance_ids() const; + + private: + bool _internal_has_special_meaning_appearance_ids() const; + + public: + void clear_special_meaning_appearance_ids(); + const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &special_meaning_appearance_ids() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* release_special_meaning_appearance_ids(); + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* mutable_special_meaning_appearance_ids(); + void set_allocated_special_meaning_appearance_ids(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids); + + private: + const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &_internal_special_meaning_appearance_ids() const; + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* _internal_mutable_special_meaning_appearance_ids(); + + public: + void unsafe_arena_set_allocated_special_meaning_appearance_ids( + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids + ); + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* unsafe_arena_release_special_meaning_appearance_ids(); + + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Appearances) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> object_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> outfit_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> effect_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> missile_; + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class SpritePhase final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpritePhase) */ { + public: + inline SpritePhase() : + SpritePhase(nullptr) { } + ~SpritePhase() override; + explicit PROTOBUF_CONSTEXPR SpritePhase(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SpritePhase(const SpritePhase &from); + SpritePhase(SpritePhase &&from) noexcept + : + SpritePhase() { + *this = ::std::move(from); + } + + inline SpritePhase &operator=(const SpritePhase &from) { + CopyFrom(from); + return *this; + } + inline SpritePhase &operator=(SpritePhase &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SpritePhase &default_instance() { + return *internal_default_instance(); + } + static inline const SpritePhase* internal_default_instance() { + return reinterpret_cast( + &_SpritePhase_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 2; + + friend void swap(SpritePhase &a, SpritePhase &b) { + a.Swap(&b); + } + inline void Swap(SpritePhase* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SpritePhase* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SpritePhase* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SpritePhase &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SpritePhase &from) { + SpritePhase::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SpritePhase* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.SpritePhase"; + } + + protected: + explicit SpritePhase(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDurationMinFieldNumber = 1, + kDurationMaxFieldNumber = 2, + }; + // optional uint32 duration_min = 1; + bool has_duration_min() const; + + private: + bool _internal_has_duration_min() const; + + public: + void clear_duration_min(); + uint32_t duration_min() const; + void set_duration_min(uint32_t value); + + private: + uint32_t _internal_duration_min() const; + void _internal_set_duration_min(uint32_t value); + + public: + // optional uint32 duration_max = 2; + bool has_duration_max() const; + + private: + bool _internal_has_duration_max() const; + + public: + void clear_duration_max(); + uint32_t duration_max() const; + void set_duration_max(uint32_t value); + + private: + uint32_t _internal_duration_max() const; + void _internal_set_duration_max(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpritePhase) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t duration_min_; + uint32_t duration_max_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class SpriteAnimation final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpriteAnimation) */ { + public: + inline SpriteAnimation() : + SpriteAnimation(nullptr) { } + ~SpriteAnimation() override; + explicit PROTOBUF_CONSTEXPR SpriteAnimation(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SpriteAnimation(const SpriteAnimation &from); + SpriteAnimation(SpriteAnimation &&from) noexcept + : + SpriteAnimation() { + *this = ::std::move(from); + } + + inline SpriteAnimation &operator=(const SpriteAnimation &from) { + CopyFrom(from); + return *this; + } + inline SpriteAnimation &operator=(SpriteAnimation &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SpriteAnimation &default_instance() { + return *internal_default_instance(); + } + static inline const SpriteAnimation* internal_default_instance() { + return reinterpret_cast( + &_SpriteAnimation_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 3; + + friend void swap(SpriteAnimation &a, SpriteAnimation &b) { + a.Swap(&b); + } + inline void Swap(SpriteAnimation* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SpriteAnimation* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SpriteAnimation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SpriteAnimation &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SpriteAnimation &from) { + SpriteAnimation::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SpriteAnimation* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.SpriteAnimation"; + } + + protected: + explicit SpriteAnimation(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSpritePhaseFieldNumber = 6, + kDefaultStartPhaseFieldNumber = 1, + kSynchronizedFieldNumber = 2, + kRandomStartPhaseFieldNumber = 3, + kLoopCountFieldNumber = 5, + kLoopTypeFieldNumber = 4, + }; + // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; + int sprite_phase_size() const; + + private: + int _internal_sprite_phase_size() const; + + public: + void clear_sprite_phase(); + ::Canary::protobuf::appearances::SpritePhase* mutable_sprite_phase(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase>* + mutable_sprite_phase(); + + private: + const ::Canary::protobuf::appearances::SpritePhase &_internal_sprite_phase(int index) const; + ::Canary::protobuf::appearances::SpritePhase* _internal_add_sprite_phase(); + + public: + const ::Canary::protobuf::appearances::SpritePhase &sprite_phase(int index) const; + ::Canary::protobuf::appearances::SpritePhase* add_sprite_phase(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase> & + sprite_phase() const; + + // optional uint32 default_start_phase = 1; + bool has_default_start_phase() const; + + private: + bool _internal_has_default_start_phase() const; + + public: + void clear_default_start_phase(); + uint32_t default_start_phase() const; + void set_default_start_phase(uint32_t value); + + private: + uint32_t _internal_default_start_phase() const; + void _internal_set_default_start_phase(uint32_t value); + + public: + // optional bool synchronized = 2; + bool has_synchronized() const; + + private: + bool _internal_has_synchronized() const; + + public: + void clear_synchronized(); + bool synchronized() const; + void set_synchronized(bool value); + + private: + bool _internal_synchronized() const; + void _internal_set_synchronized(bool value); + + public: + // optional bool random_start_phase = 3; + bool has_random_start_phase() const; + + private: + bool _internal_has_random_start_phase() const; + + public: + void clear_random_start_phase(); + bool random_start_phase() const; + void set_random_start_phase(bool value); + + private: + bool _internal_random_start_phase() const; + void _internal_set_random_start_phase(bool value); + + public: + // optional uint32 loop_count = 5; + bool has_loop_count() const; + + private: + bool _internal_has_loop_count() const; + + public: + void clear_loop_count(); + uint32_t loop_count() const; + void set_loop_count(uint32_t value); + + private: + uint32_t _internal_loop_count() const; + void _internal_set_loop_count(uint32_t value); + + public: + // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; + bool has_loop_type() const; + + private: + bool _internal_has_loop_type() const; + + public: + void clear_loop_type(); + ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE loop_type() const; + void set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value); + + private: + ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE _internal_loop_type() const; + void _internal_set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpriteAnimation) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase> sprite_phase_; + uint32_t default_start_phase_; + bool synchronized_; + bool random_start_phase_; + uint32_t loop_count_; + int loop_type_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class Box final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Box) */ { + public: + inline Box() : + Box(nullptr) { } + ~Box() override; + explicit PROTOBUF_CONSTEXPR Box(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Box(const Box &from); + Box(Box &&from) noexcept + : + Box() { + *this = ::std::move(from); + } + + inline Box &operator=(const Box &from) { + CopyFrom(from); + return *this; + } + inline Box &operator=(Box &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Box &default_instance() { + return *internal_default_instance(); + } + static inline const Box* internal_default_instance() { + return reinterpret_cast( + &_Box_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 4; + + friend void swap(Box &a, Box &b) { + a.Swap(&b); + } + inline void Swap(Box* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Box* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Box* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Box &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Box &from) { + Box::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Box* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.Box"; + } + + protected: + explicit Box(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kXFieldNumber = 1, + kYFieldNumber = 2, + kWidthFieldNumber = 3, + kHeightFieldNumber = 4, + }; + // optional uint32 x = 1; + bool has_x() const; + + private: + bool _internal_has_x() const; + + public: + void clear_x(); + uint32_t x() const; + void set_x(uint32_t value); + + private: + uint32_t _internal_x() const; + void _internal_set_x(uint32_t value); + + public: + // optional uint32 y = 2; + bool has_y() const; + + private: + bool _internal_has_y() const; + + public: + void clear_y(); + uint32_t y() const; + void set_y(uint32_t value); + + private: + uint32_t _internal_y() const; + void _internal_set_y(uint32_t value); + + public: + // optional uint32 width = 3; + bool has_width() const; + + private: + bool _internal_has_width() const; + + public: + void clear_width(); + uint32_t width() const; + void set_width(uint32_t value); + + private: + uint32_t _internal_width() const; + void _internal_set_width(uint32_t value); + + public: + // optional uint32 height = 4; + bool has_height() const; + + private: + bool _internal_has_height() const; + + public: + void clear_height(); + uint32_t height() const; + void set_height(uint32_t value); + + private: + uint32_t _internal_height() const; + void _internal_set_height(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Box) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t x_; + uint32_t y_; + uint32_t width_; + uint32_t height_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class SpriteInfo final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpriteInfo) */ { + public: + inline SpriteInfo() : + SpriteInfo(nullptr) { } + ~SpriteInfo() override; + explicit PROTOBUF_CONSTEXPR SpriteInfo(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SpriteInfo(const SpriteInfo &from); + SpriteInfo(SpriteInfo &&from) noexcept + : + SpriteInfo() { + *this = ::std::move(from); + } + + inline SpriteInfo &operator=(const SpriteInfo &from) { + CopyFrom(from); + return *this; + } + inline SpriteInfo &operator=(SpriteInfo &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SpriteInfo &default_instance() { + return *internal_default_instance(); + } + static inline const SpriteInfo* internal_default_instance() { + return reinterpret_cast( + &_SpriteInfo_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 5; + + friend void swap(SpriteInfo &a, SpriteInfo &b) { + a.Swap(&b); + } + inline void Swap(SpriteInfo* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SpriteInfo* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SpriteInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SpriteInfo &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SpriteInfo &from) { + SpriteInfo::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SpriteInfo* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.SpriteInfo"; + } + + protected: + explicit SpriteInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSpriteIdFieldNumber = 5, + kBoundingBoxPerDirectionFieldNumber = 9, + kAnimationFieldNumber = 6, + kPatternWidthFieldNumber = 1, + kPatternHeightFieldNumber = 2, + kPatternDepthFieldNumber = 3, + kLayersFieldNumber = 4, + kBoundingSquareFieldNumber = 7, + kIsOpaqueFieldNumber = 8, + }; + // repeated uint32 sprite_id = 5; + int sprite_id_size() const; + + private: + int _internal_sprite_id_size() const; + + public: + void clear_sprite_id(); + + private: + uint32_t _internal_sprite_id(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField & + _internal_sprite_id() const; + void _internal_add_sprite_id(uint32_t value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField* + _internal_mutable_sprite_id(); + + public: + uint32_t sprite_id(int index) const; + void set_sprite_id(int index, uint32_t value); + void add_sprite_id(uint32_t value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField & + sprite_id() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField* + mutable_sprite_id(); + + // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; + int bounding_box_per_direction_size() const; + + private: + int _internal_bounding_box_per_direction_size() const; + + public: + void clear_bounding_box_per_direction(); + ::Canary::protobuf::appearances::Box* mutable_bounding_box_per_direction(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box>* + mutable_bounding_box_per_direction(); + + private: + const ::Canary::protobuf::appearances::Box &_internal_bounding_box_per_direction(int index) const; + ::Canary::protobuf::appearances::Box* _internal_add_bounding_box_per_direction(); + + public: + const ::Canary::protobuf::appearances::Box &bounding_box_per_direction(int index) const; + ::Canary::protobuf::appearances::Box* add_bounding_box_per_direction(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box> & + bounding_box_per_direction() const; + + // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; + bool has_animation() const; + + private: + bool _internal_has_animation() const; + + public: + void clear_animation(); + const ::Canary::protobuf::appearances::SpriteAnimation &animation() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpriteAnimation* release_animation(); + ::Canary::protobuf::appearances::SpriteAnimation* mutable_animation(); + void set_allocated_animation(::Canary::protobuf::appearances::SpriteAnimation* animation); + + private: + const ::Canary::protobuf::appearances::SpriteAnimation &_internal_animation() const; + ::Canary::protobuf::appearances::SpriteAnimation* _internal_mutable_animation(); + + public: + void unsafe_arena_set_allocated_animation( + ::Canary::protobuf::appearances::SpriteAnimation* animation + ); + ::Canary::protobuf::appearances::SpriteAnimation* unsafe_arena_release_animation(); + + // optional uint32 pattern_width = 1; + bool has_pattern_width() const; + + private: + bool _internal_has_pattern_width() const; + + public: + void clear_pattern_width(); + uint32_t pattern_width() const; + void set_pattern_width(uint32_t value); + + private: + uint32_t _internal_pattern_width() const; + void _internal_set_pattern_width(uint32_t value); + + public: + // optional uint32 pattern_height = 2; + bool has_pattern_height() const; + + private: + bool _internal_has_pattern_height() const; + + public: + void clear_pattern_height(); + uint32_t pattern_height() const; + void set_pattern_height(uint32_t value); + + private: + uint32_t _internal_pattern_height() const; + void _internal_set_pattern_height(uint32_t value); + + public: + // optional uint32 pattern_depth = 3; + bool has_pattern_depth() const; + + private: + bool _internal_has_pattern_depth() const; + + public: + void clear_pattern_depth(); + uint32_t pattern_depth() const; + void set_pattern_depth(uint32_t value); + + private: + uint32_t _internal_pattern_depth() const; + void _internal_set_pattern_depth(uint32_t value); + + public: + // optional uint32 layers = 4; + bool has_layers() const; + + private: + bool _internal_has_layers() const; + + public: + void clear_layers(); + uint32_t layers() const; + void set_layers(uint32_t value); + + private: + uint32_t _internal_layers() const; + void _internal_set_layers(uint32_t value); + + public: + // optional uint32 bounding_square = 7; + bool has_bounding_square() const; + + private: + bool _internal_has_bounding_square() const; + + public: + void clear_bounding_square(); + uint32_t bounding_square() const; + void set_bounding_square(uint32_t value); + + private: + uint32_t _internal_bounding_square() const; + void _internal_set_bounding_square(uint32_t value); + + public: + // optional bool is_opaque = 8; + bool has_is_opaque() const; + + private: + bool _internal_has_is_opaque() const; + + public: + void clear_is_opaque(); + bool is_opaque() const; + void set_is_opaque(bool value); + + private: + bool _internal_is_opaque() const; + void _internal_set_is_opaque(bool value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpriteInfo) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField sprite_id_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box> bounding_box_per_direction_; + ::Canary::protobuf::appearances::SpriteAnimation* animation_; + uint32_t pattern_width_; + uint32_t pattern_height_; + uint32_t pattern_depth_; + uint32_t layers_; + uint32_t bounding_square_; + bool is_opaque_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class FrameGroup final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.FrameGroup) */ { + public: + inline FrameGroup() : + FrameGroup(nullptr) { } + ~FrameGroup() override; + explicit PROTOBUF_CONSTEXPR FrameGroup(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FrameGroup(const FrameGroup &from); + FrameGroup(FrameGroup &&from) noexcept + : + FrameGroup() { + *this = ::std::move(from); + } + + inline FrameGroup &operator=(const FrameGroup &from) { + CopyFrom(from); + return *this; + } + inline FrameGroup &operator=(FrameGroup &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FrameGroup &default_instance() { + return *internal_default_instance(); + } + static inline const FrameGroup* internal_default_instance() { + return reinterpret_cast( + &_FrameGroup_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 6; + + friend void swap(FrameGroup &a, FrameGroup &b) { + a.Swap(&b); + } + inline void Swap(FrameGroup* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FrameGroup* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + FrameGroup* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FrameGroup &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FrameGroup &from) { + FrameGroup::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FrameGroup* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.FrameGroup"; + } + + protected: + explicit FrameGroup(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSpriteInfoFieldNumber = 3, + kFixedFrameGroupFieldNumber = 1, + kIdFieldNumber = 2, + }; + // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; + bool has_sprite_info() const; + + private: + bool _internal_has_sprite_info() const; + + public: + void clear_sprite_info(); + const ::Canary::protobuf::appearances::SpriteInfo &sprite_info() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpriteInfo* release_sprite_info(); + ::Canary::protobuf::appearances::SpriteInfo* mutable_sprite_info(); + void set_allocated_sprite_info(::Canary::protobuf::appearances::SpriteInfo* sprite_info); + + private: + const ::Canary::protobuf::appearances::SpriteInfo &_internal_sprite_info() const; + ::Canary::protobuf::appearances::SpriteInfo* _internal_mutable_sprite_info(); + + public: + void unsafe_arena_set_allocated_sprite_info( + ::Canary::protobuf::appearances::SpriteInfo* sprite_info + ); + ::Canary::protobuf::appearances::SpriteInfo* unsafe_arena_release_sprite_info(); + + // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; + bool has_fixed_frame_group() const; + + private: + bool _internal_has_fixed_frame_group() const; + + public: + void clear_fixed_frame_group(); + ::Canary::protobuf::appearances::FIXED_FRAME_GROUP fixed_frame_group() const; + void set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value); + + private: + ::Canary::protobuf::appearances::FIXED_FRAME_GROUP _internal_fixed_frame_group() const; + void _internal_set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value); + + public: + // optional uint32 id = 2; + bool has_id() const; + + private: + bool _internal_has_id() const; + + public: + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.FrameGroup) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::Canary::protobuf::appearances::SpriteInfo* sprite_info_; + int fixed_frame_group_; + uint32_t id_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class Appearance final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Appearance) */ { + public: + inline Appearance() : + Appearance(nullptr) { } + ~Appearance() override; + explicit PROTOBUF_CONSTEXPR Appearance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Appearance(const Appearance &from); + Appearance(Appearance &&from) noexcept + : + Appearance() { + *this = ::std::move(from); + } + + inline Appearance &operator=(const Appearance &from) { + CopyFrom(from); + return *this; + } + inline Appearance &operator=(Appearance &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Appearance &default_instance() { + return *internal_default_instance(); + } + static inline const Appearance* internal_default_instance() { + return reinterpret_cast( + &_Appearance_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 7; + + friend void swap(Appearance &a, Appearance &b) { + a.Swap(&b); + } + inline void Swap(Appearance* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Appearance* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Appearance* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Appearance &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Appearance &from) { + Appearance::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Appearance* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.Appearance"; + } + + protected: + explicit Appearance(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFrameGroupFieldNumber = 2, + kNameFieldNumber = 4, + kDescriptionFieldNumber = 5, + kFlagsFieldNumber = 3, + kIdFieldNumber = 1, + }; + // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; + int frame_group_size() const; + + private: + int _internal_frame_group_size() const; + + public: + void clear_frame_group(); + ::Canary::protobuf::appearances::FrameGroup* mutable_frame_group(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup>* + mutable_frame_group(); + + private: + const ::Canary::protobuf::appearances::FrameGroup &_internal_frame_group(int index) const; + ::Canary::protobuf::appearances::FrameGroup* _internal_add_frame_group(); + + public: + const ::Canary::protobuf::appearances::FrameGroup &frame_group(int index) const; + ::Canary::protobuf::appearances::FrameGroup* add_frame_group(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup> & + frame_group() const; + + // optional bytes name = 4; + bool has_name() const; + + private: + bool _internal_has_name() const; + + public: + void clear_name(); + const std::string &name() const; + template + void set_name(ArgT0 &&arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + + private: + const std::string &_internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string &value); + std::string* _internal_mutable_name(); + + public: + // optional bytes description = 5; + bool has_description() const; + + private: + bool _internal_has_description() const; + + public: + void clear_description(); + const std::string &description() const; + template + void set_description(ArgT0 &&arg0, ArgT... args); + std::string* mutable_description(); + PROTOBUF_NODISCARD std::string* release_description(); + void set_allocated_description(std::string* description); + + private: + const std::string &_internal_description() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_description(const std::string &value); + std::string* _internal_mutable_description(); + + public: + // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; + bool has_flags() const; + + private: + bool _internal_has_flags() const; + + public: + void clear_flags(); + const ::Canary::protobuf::appearances::AppearanceFlags &flags() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlags* release_flags(); + ::Canary::protobuf::appearances::AppearanceFlags* mutable_flags(); + void set_allocated_flags(::Canary::protobuf::appearances::AppearanceFlags* flags); + + private: + const ::Canary::protobuf::appearances::AppearanceFlags &_internal_flags() const; + ::Canary::protobuf::appearances::AppearanceFlags* _internal_mutable_flags(); + + public: + void unsafe_arena_set_allocated_flags( + ::Canary::protobuf::appearances::AppearanceFlags* flags + ); + ::Canary::protobuf::appearances::AppearanceFlags* unsafe_arena_release_flags(); + + // optional uint32 id = 1; + bool has_id() const; + + private: + bool _internal_has_id() const; + + public: + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Appearance) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup> frame_group_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr description_; + ::Canary::protobuf::appearances::AppearanceFlags* flags_; + uint32_t id_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlags final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlags) */ { + public: + inline AppearanceFlags() : + AppearanceFlags(nullptr) { } + ~AppearanceFlags() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlags(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlags(const AppearanceFlags &from); + AppearanceFlags(AppearanceFlags &&from) noexcept + : + AppearanceFlags() { + *this = ::std::move(from); + } + + inline AppearanceFlags &operator=(const AppearanceFlags &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlags &operator=(AppearanceFlags &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlags &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlags* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlags_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 8; + + friend void swap(AppearanceFlags &a, AppearanceFlags &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlags* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlags* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlags* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlags &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlags &from) { + AppearanceFlags::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlags* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlags"; + } + + protected: + explicit AppearanceFlags(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNpcsaledataFieldNumber = 40, + kBankFieldNumber = 1, + kWriteFieldNumber = 10, + kWriteOnceFieldNumber = 11, + kHookFieldNumber = 21, + kLightFieldNumber = 23, + kShiftFieldNumber = 26, + kHeightFieldNumber = 27, + kAutomapFieldNumber = 30, + kLenshelpFieldNumber = 31, + kClothesFieldNumber = 34, + kDefaultActionFieldNumber = 35, + kMarketFieldNumber = 36, + kChangedtoexpireFieldNumber = 41, + kCyclopediaitemFieldNumber = 44, + kUpgradeclassificationFieldNumber = 48, + kClipFieldNumber = 2, + kBottomFieldNumber = 3, + kTopFieldNumber = 4, + kContainerFieldNumber = 5, + kCumulativeFieldNumber = 6, + kUsableFieldNumber = 7, + kForceuseFieldNumber = 8, + kMultiuseFieldNumber = 9, + kLiquidpoolFieldNumber = 12, + kUnpassFieldNumber = 13, + kUnmoveFieldNumber = 14, + kUnsightFieldNumber = 15, + kAvoidFieldNumber = 16, + kNoMovementAnimationFieldNumber = 17, + kTakeFieldNumber = 18, + kLiquidcontainerFieldNumber = 19, + kHangFieldNumber = 20, + kRotateFieldNumber = 22, + kDontHideFieldNumber = 24, + kTranslucentFieldNumber = 25, + kLyingObjectFieldNumber = 28, + kAnimateAlwaysFieldNumber = 29, + kFullbankFieldNumber = 32, + kIgnoreLookFieldNumber = 33, + kWrapFieldNumber = 37, + kUnwrapFieldNumber = 38, + kTopeffectFieldNumber = 39, + kCorpseFieldNumber = 42, + kPlayerCorpseFieldNumber = 43, + kAmmoFieldNumber = 45, + kShowOffSocketFieldNumber = 46, + kReportableFieldNumber = 47, + kReverseAddonsEastFieldNumber = 49, + kReverseAddonsWestFieldNumber = 50, + kReverseAddonsSouthFieldNumber = 51, + kReverseAddonsNorthFieldNumber = 52, + kWearoutFieldNumber = 53, + kClockexpireFieldNumber = 54, + kExpireFieldNumber = 55, + kExpirestopFieldNumber = 56, + kWrapkitFieldNumber = 57, + }; + // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; + int npcsaledata_size() const; + + private: + int _internal_npcsaledata_size() const; + + public: + void clear_npcsaledata(); + ::Canary::protobuf::appearances::AppearanceFlagNPC* mutable_npcsaledata(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC>* + mutable_npcsaledata(); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagNPC &_internal_npcsaledata(int index) const; + ::Canary::protobuf::appearances::AppearanceFlagNPC* _internal_add_npcsaledata(); + + public: + const ::Canary::protobuf::appearances::AppearanceFlagNPC &npcsaledata(int index) const; + ::Canary::protobuf::appearances::AppearanceFlagNPC* add_npcsaledata(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC> & + npcsaledata() const; + + // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; + bool has_bank() const; + + private: + bool _internal_has_bank() const; + + public: + void clear_bank(); + const ::Canary::protobuf::appearances::AppearanceFlagBank &bank() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagBank* release_bank(); + ::Canary::protobuf::appearances::AppearanceFlagBank* mutable_bank(); + void set_allocated_bank(::Canary::protobuf::appearances::AppearanceFlagBank* bank); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagBank &_internal_bank() const; + ::Canary::protobuf::appearances::AppearanceFlagBank* _internal_mutable_bank(); + + public: + void unsafe_arena_set_allocated_bank( + ::Canary::protobuf::appearances::AppearanceFlagBank* bank + ); + ::Canary::protobuf::appearances::AppearanceFlagBank* unsafe_arena_release_bank(); + + // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; + bool has_write() const; + + private: + bool _internal_has_write() const; + + public: + void clear_write(); + const ::Canary::protobuf::appearances::AppearanceFlagWrite &write() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagWrite* release_write(); + ::Canary::protobuf::appearances::AppearanceFlagWrite* mutable_write(); + void set_allocated_write(::Canary::protobuf::appearances::AppearanceFlagWrite* write); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagWrite &_internal_write() const; + ::Canary::protobuf::appearances::AppearanceFlagWrite* _internal_mutable_write(); + + public: + void unsafe_arena_set_allocated_write( + ::Canary::protobuf::appearances::AppearanceFlagWrite* write + ); + ::Canary::protobuf::appearances::AppearanceFlagWrite* unsafe_arena_release_write(); + + // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; + bool has_write_once() const; + + private: + bool _internal_has_write_once() const; + + public: + void clear_write_once(); + const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &write_once() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* release_write_once(); + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* mutable_write_once(); + void set_allocated_write_once(::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &_internal_write_once() const; + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* _internal_mutable_write_once(); + + public: + void unsafe_arena_set_allocated_write_once( + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once + ); + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* unsafe_arena_release_write_once(); + + // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; + bool has_hook() const; + + private: + bool _internal_has_hook() const; + + public: + void clear_hook(); + const ::Canary::protobuf::appearances::AppearanceFlagHook &hook() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagHook* release_hook(); + ::Canary::protobuf::appearances::AppearanceFlagHook* mutable_hook(); + void set_allocated_hook(::Canary::protobuf::appearances::AppearanceFlagHook* hook); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagHook &_internal_hook() const; + ::Canary::protobuf::appearances::AppearanceFlagHook* _internal_mutable_hook(); + + public: + void unsafe_arena_set_allocated_hook( + ::Canary::protobuf::appearances::AppearanceFlagHook* hook + ); + ::Canary::protobuf::appearances::AppearanceFlagHook* unsafe_arena_release_hook(); + + // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; + bool has_light() const; + + private: + bool _internal_has_light() const; + + public: + void clear_light(); + const ::Canary::protobuf::appearances::AppearanceFlagLight &light() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagLight* release_light(); + ::Canary::protobuf::appearances::AppearanceFlagLight* mutable_light(); + void set_allocated_light(::Canary::protobuf::appearances::AppearanceFlagLight* light); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagLight &_internal_light() const; + ::Canary::protobuf::appearances::AppearanceFlagLight* _internal_mutable_light(); + + public: + void unsafe_arena_set_allocated_light( + ::Canary::protobuf::appearances::AppearanceFlagLight* light + ); + ::Canary::protobuf::appearances::AppearanceFlagLight* unsafe_arena_release_light(); + + // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; + bool has_shift() const; + + private: + bool _internal_has_shift() const; + + public: + void clear_shift(); + const ::Canary::protobuf::appearances::AppearanceFlagShift &shift() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagShift* release_shift(); + ::Canary::protobuf::appearances::AppearanceFlagShift* mutable_shift(); + void set_allocated_shift(::Canary::protobuf::appearances::AppearanceFlagShift* shift); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagShift &_internal_shift() const; + ::Canary::protobuf::appearances::AppearanceFlagShift* _internal_mutable_shift(); + + public: + void unsafe_arena_set_allocated_shift( + ::Canary::protobuf::appearances::AppearanceFlagShift* shift + ); + ::Canary::protobuf::appearances::AppearanceFlagShift* unsafe_arena_release_shift(); + + // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; + bool has_height() const; + + private: + bool _internal_has_height() const; + + public: + void clear_height(); + const ::Canary::protobuf::appearances::AppearanceFlagHeight &height() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagHeight* release_height(); + ::Canary::protobuf::appearances::AppearanceFlagHeight* mutable_height(); + void set_allocated_height(::Canary::protobuf::appearances::AppearanceFlagHeight* height); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagHeight &_internal_height() const; + ::Canary::protobuf::appearances::AppearanceFlagHeight* _internal_mutable_height(); + + public: + void unsafe_arena_set_allocated_height( + ::Canary::protobuf::appearances::AppearanceFlagHeight* height + ); + ::Canary::protobuf::appearances::AppearanceFlagHeight* unsafe_arena_release_height(); + + // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; + bool has_automap() const; + + private: + bool _internal_has_automap() const; + + public: + void clear_automap(); + const ::Canary::protobuf::appearances::AppearanceFlagAutomap &automap() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagAutomap* release_automap(); + ::Canary::protobuf::appearances::AppearanceFlagAutomap* mutable_automap(); + void set_allocated_automap(::Canary::protobuf::appearances::AppearanceFlagAutomap* automap); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagAutomap &_internal_automap() const; + ::Canary::protobuf::appearances::AppearanceFlagAutomap* _internal_mutable_automap(); + + public: + void unsafe_arena_set_allocated_automap( + ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap + ); + ::Canary::protobuf::appearances::AppearanceFlagAutomap* unsafe_arena_release_automap(); + + // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; + bool has_lenshelp() const; + + private: + bool _internal_has_lenshelp() const; + + public: + void clear_lenshelp(); + const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &lenshelp() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagLenshelp* release_lenshelp(); + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* mutable_lenshelp(); + void set_allocated_lenshelp(::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &_internal_lenshelp() const; + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* _internal_mutable_lenshelp(); + + public: + void unsafe_arena_set_allocated_lenshelp( + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp + ); + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* unsafe_arena_release_lenshelp(); + + // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; + bool has_clothes() const; + + private: + bool _internal_has_clothes() const; + + public: + void clear_clothes(); + const ::Canary::protobuf::appearances::AppearanceFlagClothes &clothes() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagClothes* release_clothes(); + ::Canary::protobuf::appearances::AppearanceFlagClothes* mutable_clothes(); + void set_allocated_clothes(::Canary::protobuf::appearances::AppearanceFlagClothes* clothes); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagClothes &_internal_clothes() const; + ::Canary::protobuf::appearances::AppearanceFlagClothes* _internal_mutable_clothes(); + + public: + void unsafe_arena_set_allocated_clothes( + ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes + ); + ::Canary::protobuf::appearances::AppearanceFlagClothes* unsafe_arena_release_clothes(); + + // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; + bool has_default_action() const; + + private: + bool _internal_has_default_action() const; + + public: + void clear_default_action(); + const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &default_action() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* release_default_action(); + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* mutable_default_action(); + void set_allocated_default_action(::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &_internal_default_action() const; + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* _internal_mutable_default_action(); + + public: + void unsafe_arena_set_allocated_default_action( + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action + ); + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* unsafe_arena_release_default_action(); + + // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; + bool has_market() const; + + private: + bool _internal_has_market() const; + + public: + void clear_market(); + const ::Canary::protobuf::appearances::AppearanceFlagMarket &market() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagMarket* release_market(); + ::Canary::protobuf::appearances::AppearanceFlagMarket* mutable_market(); + void set_allocated_market(::Canary::protobuf::appearances::AppearanceFlagMarket* market); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagMarket &_internal_market() const; + ::Canary::protobuf::appearances::AppearanceFlagMarket* _internal_mutable_market(); + + public: + void unsafe_arena_set_allocated_market( + ::Canary::protobuf::appearances::AppearanceFlagMarket* market + ); + ::Canary::protobuf::appearances::AppearanceFlagMarket* unsafe_arena_release_market(); + + // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; + bool has_changedtoexpire() const; + + private: + bool _internal_has_changedtoexpire() const; + + public: + void clear_changedtoexpire(); + const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &changedtoexpire() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* release_changedtoexpire(); + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* mutable_changedtoexpire(); + void set_allocated_changedtoexpire(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &_internal_changedtoexpire() const; + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* _internal_mutable_changedtoexpire(); + + public: + void unsafe_arena_set_allocated_changedtoexpire( + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire + ); + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* unsafe_arena_release_changedtoexpire(); + + // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; + bool has_cyclopediaitem() const; + + private: + bool _internal_has_cyclopediaitem() const; + + public: + void clear_cyclopediaitem(); + const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &cyclopediaitem() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* release_cyclopediaitem(); + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* mutable_cyclopediaitem(); + void set_allocated_cyclopediaitem(::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &_internal_cyclopediaitem() const; + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* _internal_mutable_cyclopediaitem(); + + public: + void unsafe_arena_set_allocated_cyclopediaitem( + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem + ); + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* unsafe_arena_release_cyclopediaitem(); + + // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; + bool has_upgradeclassification() const; + + private: + bool _internal_has_upgradeclassification() const; + + public: + void clear_upgradeclassification(); + const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &upgradeclassification() const; + PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* release_upgradeclassification(); + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* mutable_upgradeclassification(); + void set_allocated_upgradeclassification(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification); + + private: + const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &_internal_upgradeclassification() const; + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* _internal_mutable_upgradeclassification(); + + public: + void unsafe_arena_set_allocated_upgradeclassification( + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification + ); + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* unsafe_arena_release_upgradeclassification(); + + // optional bool clip = 2; + bool has_clip() const; + + private: + bool _internal_has_clip() const; + + public: + void clear_clip(); + bool clip() const; + void set_clip(bool value); + + private: + bool _internal_clip() const; + void _internal_set_clip(bool value); + + public: + // optional bool bottom = 3; + bool has_bottom() const; + + private: + bool _internal_has_bottom() const; + + public: + void clear_bottom(); + bool bottom() const; + void set_bottom(bool value); + + private: + bool _internal_bottom() const; + void _internal_set_bottom(bool value); + + public: + // optional bool top = 4; + bool has_top() const; + + private: + bool _internal_has_top() const; + + public: + void clear_top(); + bool top() const; + void set_top(bool value); + + private: + bool _internal_top() const; + void _internal_set_top(bool value); + + public: + // optional bool container = 5; + bool has_container() const; + + private: + bool _internal_has_container() const; + + public: + void clear_container(); + bool container() const; + void set_container(bool value); + + private: + bool _internal_container() const; + void _internal_set_container(bool value); + + public: + // optional bool cumulative = 6; + bool has_cumulative() const; -// ------------------------------------------------------------------- + private: + bool _internal_has_cumulative() const; + + public: + void clear_cumulative(); + bool cumulative() const; + void set_cumulative(bool value); -// SpritePhase - -// optional uint32 duration_min = 1; -inline bool SpritePhase::_internal_has_duration_min() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool SpritePhase::has_duration_min() const { - return _internal_has_duration_min(); -} -inline void SpritePhase::clear_duration_min() { - _impl_.duration_min_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t SpritePhase::_internal_duration_min() const { - return _impl_.duration_min_; -} -inline uint32_t SpritePhase::duration_min() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpritePhase.duration_min) - return _internal_duration_min(); -} -inline void SpritePhase::_internal_set_duration_min(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.duration_min_ = value; -} -inline void SpritePhase::set_duration_min(uint32_t value) { - _internal_set_duration_min(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpritePhase.duration_min) -} + private: + bool _internal_cumulative() const; + void _internal_set_cumulative(bool value); -// optional uint32 duration_max = 2; -inline bool SpritePhase::_internal_has_duration_max() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool SpritePhase::has_duration_max() const { - return _internal_has_duration_max(); -} -inline void SpritePhase::clear_duration_max() { - _impl_.duration_max_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t SpritePhase::_internal_duration_max() const { - return _impl_.duration_max_; -} -inline uint32_t SpritePhase::duration_max() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpritePhase.duration_max) - return _internal_duration_max(); -} -inline void SpritePhase::_internal_set_duration_max(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.duration_max_ = value; -} -inline void SpritePhase::set_duration_max(uint32_t value) { - _internal_set_duration_max(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpritePhase.duration_max) -} + public: + // optional bool usable = 7; + bool has_usable() const; -// ------------------------------------------------------------------- + private: + bool _internal_has_usable() const; + + public: + void clear_usable(); + bool usable() const; + void set_usable(bool value); -// SpriteAnimation + private: + bool _internal_usable() const; + void _internal_set_usable(bool value); -// optional uint32 default_start_phase = 1; -inline bool SpriteAnimation::_internal_has_default_start_phase() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool SpriteAnimation::has_default_start_phase() const { - return _internal_has_default_start_phase(); -} -inline void SpriteAnimation::clear_default_start_phase() { - _impl_.default_start_phase_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t SpriteAnimation::_internal_default_start_phase() const { - return _impl_.default_start_phase_; -} -inline uint32_t SpriteAnimation::default_start_phase() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.default_start_phase) - return _internal_default_start_phase(); -} -inline void SpriteAnimation::_internal_set_default_start_phase(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.default_start_phase_ = value; -} -inline void SpriteAnimation::set_default_start_phase(uint32_t value) { - _internal_set_default_start_phase(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.default_start_phase) -} + public: + // optional bool forceuse = 8; + bool has_forceuse() const; -// optional bool synchronized = 2; -inline bool SpriteAnimation::_internal_has_synchronized() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool SpriteAnimation::has_synchronized() const { - return _internal_has_synchronized(); -} -inline void SpriteAnimation::clear_synchronized() { - _impl_.synchronized_ = false; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline bool SpriteAnimation::_internal_synchronized() const { - return _impl_.synchronized_; -} -inline bool SpriteAnimation::synchronized() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.synchronized) - return _internal_synchronized(); -} -inline void SpriteAnimation::_internal_set_synchronized(bool value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.synchronized_ = value; -} -inline void SpriteAnimation::set_synchronized(bool value) { - _internal_set_synchronized(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.synchronized) -} + private: + bool _internal_has_forceuse() const; -// optional bool random_start_phase = 3; -inline bool SpriteAnimation::_internal_has_random_start_phase() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool SpriteAnimation::has_random_start_phase() const { - return _internal_has_random_start_phase(); -} -inline void SpriteAnimation::clear_random_start_phase() { - _impl_.random_start_phase_ = false; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline bool SpriteAnimation::_internal_random_start_phase() const { - return _impl_.random_start_phase_; -} -inline bool SpriteAnimation::random_start_phase() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.random_start_phase) - return _internal_random_start_phase(); -} -inline void SpriteAnimation::_internal_set_random_start_phase(bool value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.random_start_phase_ = value; -} -inline void SpriteAnimation::set_random_start_phase(bool value) { - _internal_set_random_start_phase(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.random_start_phase) -} + public: + void clear_forceuse(); + bool forceuse() const; + void set_forceuse(bool value); -// optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; -inline bool SpriteAnimation::_internal_has_loop_type() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; -} -inline bool SpriteAnimation::has_loop_type() const { - return _internal_has_loop_type(); -} -inline void SpriteAnimation::clear_loop_type() { - _impl_.loop_type_ = -1; - _impl_._has_bits_[0] &= ~0x00000010u; -} -inline ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE SpriteAnimation::_internal_loop_type() const { - return static_cast< ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE >(_impl_.loop_type_); -} -inline ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE SpriteAnimation::loop_type() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.loop_type) - return _internal_loop_type(); -} -inline void SpriteAnimation::_internal_set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value) { - assert(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.loop_type_ = value; -} -inline void SpriteAnimation::set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value) { - _internal_set_loop_type(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.loop_type) -} + private: + bool _internal_forceuse() const; + void _internal_set_forceuse(bool value); -// optional uint32 loop_count = 5; -inline bool SpriteAnimation::_internal_has_loop_count() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool SpriteAnimation::has_loop_count() const { - return _internal_has_loop_count(); -} -inline void SpriteAnimation::clear_loop_count() { - _impl_.loop_count_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline uint32_t SpriteAnimation::_internal_loop_count() const { - return _impl_.loop_count_; -} -inline uint32_t SpriteAnimation::loop_count() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.loop_count) - return _internal_loop_count(); -} -inline void SpriteAnimation::_internal_set_loop_count(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.loop_count_ = value; -} -inline void SpriteAnimation::set_loop_count(uint32_t value) { - _internal_set_loop_count(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.loop_count) -} + public: + // optional bool multiuse = 9; + bool has_multiuse() const; -// repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; -inline int SpriteAnimation::_internal_sprite_phase_size() const { - return _impl_.sprite_phase_.size(); -} -inline int SpriteAnimation::sprite_phase_size() const { - return _internal_sprite_phase_size(); -} -inline void SpriteAnimation::clear_sprite_phase() { - _impl_.sprite_phase_.Clear(); -} -inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::mutable_sprite_phase(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _impl_.sprite_phase_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::SpritePhase >* -SpriteAnimation::mutable_sprite_phase() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return &_impl_.sprite_phase_; -} -inline const ::Canary::protobuf::appearances::SpritePhase& SpriteAnimation::_internal_sprite_phase(int index) const { - return _impl_.sprite_phase_.Get(index); -} -inline const ::Canary::protobuf::appearances::SpritePhase& SpriteAnimation::sprite_phase(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _internal_sprite_phase(index); -} -inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::_internal_add_sprite_phase() { - return _impl_.sprite_phase_.Add(); -} -inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::add_sprite_phase() { - ::Canary::protobuf::appearances::SpritePhase* _add = _internal_add_sprite_phase(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::SpritePhase >& -SpriteAnimation::sprite_phase() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _impl_.sprite_phase_; -} + private: + bool _internal_has_multiuse() const; -// ------------------------------------------------------------------- + public: + void clear_multiuse(); + bool multiuse() const; + void set_multiuse(bool value); -// Box + private: + bool _internal_multiuse() const; + void _internal_set_multiuse(bool value); -// optional uint32 x = 1; -inline bool Box::_internal_has_x() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool Box::has_x() const { - return _internal_has_x(); -} -inline void Box::clear_x() { - _impl_.x_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t Box::_internal_x() const { - return _impl_.x_; -} -inline uint32_t Box::x() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.x) - return _internal_x(); -} -inline void Box::_internal_set_x(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.x_ = value; -} -inline void Box::set_x(uint32_t value) { - _internal_set_x(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.x) -} + public: + // optional bool liquidpool = 12; + bool has_liquidpool() const; -// optional uint32 y = 2; -inline bool Box::_internal_has_y() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool Box::has_y() const { - return _internal_has_y(); -} -inline void Box::clear_y() { - _impl_.y_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t Box::_internal_y() const { - return _impl_.y_; -} -inline uint32_t Box::y() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.y) - return _internal_y(); -} -inline void Box::_internal_set_y(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.y_ = value; -} -inline void Box::set_y(uint32_t value) { - _internal_set_y(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.y) -} + private: + bool _internal_has_liquidpool() const; -// optional uint32 width = 3; -inline bool Box::_internal_has_width() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool Box::has_width() const { - return _internal_has_width(); -} -inline void Box::clear_width() { - _impl_.width_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline uint32_t Box::_internal_width() const { - return _impl_.width_; -} -inline uint32_t Box::width() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.width) - return _internal_width(); -} -inline void Box::_internal_set_width(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.width_ = value; -} -inline void Box::set_width(uint32_t value) { - _internal_set_width(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.width) -} + public: + void clear_liquidpool(); + bool liquidpool() const; + void set_liquidpool(bool value); -// optional uint32 height = 4; -inline bool Box::_internal_has_height() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool Box::has_height() const { - return _internal_has_height(); -} -inline void Box::clear_height() { - _impl_.height_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline uint32_t Box::_internal_height() const { - return _impl_.height_; -} -inline uint32_t Box::height() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.height) - return _internal_height(); -} -inline void Box::_internal_set_height(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.height_ = value; -} -inline void Box::set_height(uint32_t value) { - _internal_set_height(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.height) -} + private: + bool _internal_liquidpool() const; + void _internal_set_liquidpool(bool value); -// ------------------------------------------------------------------- + public: + // optional bool unpass = 13; + bool has_unpass() const; -// SpriteInfo + private: + bool _internal_has_unpass() const; -// optional uint32 pattern_width = 1; -inline bool SpriteInfo::_internal_has_pattern_width() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool SpriteInfo::has_pattern_width() const { - return _internal_has_pattern_width(); -} -inline void SpriteInfo::clear_pattern_width() { - _impl_.pattern_width_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t SpriteInfo::_internal_pattern_width() const { - return _impl_.pattern_width_; -} -inline uint32_t SpriteInfo::pattern_width() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_width) - return _internal_pattern_width(); -} -inline void SpriteInfo::_internal_set_pattern_width(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.pattern_width_ = value; -} -inline void SpriteInfo::set_pattern_width(uint32_t value) { - _internal_set_pattern_width(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_width) -} + public: + void clear_unpass(); + bool unpass() const; + void set_unpass(bool value); -// optional uint32 pattern_height = 2; -inline bool SpriteInfo::_internal_has_pattern_height() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool SpriteInfo::has_pattern_height() const { - return _internal_has_pattern_height(); -} -inline void SpriteInfo::clear_pattern_height() { - _impl_.pattern_height_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline uint32_t SpriteInfo::_internal_pattern_height() const { - return _impl_.pattern_height_; -} -inline uint32_t SpriteInfo::pattern_height() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_height) - return _internal_pattern_height(); -} -inline void SpriteInfo::_internal_set_pattern_height(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.pattern_height_ = value; -} -inline void SpriteInfo::set_pattern_height(uint32_t value) { - _internal_set_pattern_height(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_height) -} - -// optional uint32 pattern_depth = 3; -inline bool SpriteInfo::_internal_has_pattern_depth() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool SpriteInfo::has_pattern_depth() const { - return _internal_has_pattern_depth(); -} -inline void SpriteInfo::clear_pattern_depth() { - _impl_.pattern_depth_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline uint32_t SpriteInfo::_internal_pattern_depth() const { - return _impl_.pattern_depth_; -} -inline uint32_t SpriteInfo::pattern_depth() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_depth) - return _internal_pattern_depth(); -} -inline void SpriteInfo::_internal_set_pattern_depth(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.pattern_depth_ = value; -} -inline void SpriteInfo::set_pattern_depth(uint32_t value) { - _internal_set_pattern_depth(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_depth) -} - -// optional uint32 layers = 4; -inline bool SpriteInfo::_internal_has_layers() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; -} -inline bool SpriteInfo::has_layers() const { - return _internal_has_layers(); -} -inline void SpriteInfo::clear_layers() { - _impl_.layers_ = 0u; - _impl_._has_bits_[0] &= ~0x00000010u; -} -inline uint32_t SpriteInfo::_internal_layers() const { - return _impl_.layers_; -} -inline uint32_t SpriteInfo::layers() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.layers) - return _internal_layers(); -} -inline void SpriteInfo::_internal_set_layers(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.layers_ = value; -} -inline void SpriteInfo::set_layers(uint32_t value) { - _internal_set_layers(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.layers) -} - -// repeated uint32 sprite_id = 5; -inline int SpriteInfo::_internal_sprite_id_size() const { - return _impl_.sprite_id_.size(); -} -inline int SpriteInfo::sprite_id_size() const { - return _internal_sprite_id_size(); -} -inline void SpriteInfo::clear_sprite_id() { - _impl_.sprite_id_.Clear(); -} -inline uint32_t SpriteInfo::_internal_sprite_id(int index) const { - return _impl_.sprite_id_.Get(index); -} -inline uint32_t SpriteInfo::sprite_id(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.sprite_id) - return _internal_sprite_id(index); -} -inline void SpriteInfo::set_sprite_id(int index, uint32_t value) { - _impl_.sprite_id_.Set(index, value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.sprite_id) -} -inline void SpriteInfo::_internal_add_sprite_id(uint32_t value) { - _impl_.sprite_id_.Add(value); -} -inline void SpriteInfo::add_sprite_id(uint32_t value) { - _internal_add_sprite_id(value); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteInfo.sprite_id) -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >& -SpriteInfo::_internal_sprite_id() const { - return _impl_.sprite_id_; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >& -SpriteInfo::sprite_id() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteInfo.sprite_id) - return _internal_sprite_id(); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >* -SpriteInfo::_internal_mutable_sprite_id() { - return &_impl_.sprite_id_; -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint32_t >* -SpriteInfo::mutable_sprite_id() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteInfo.sprite_id) - return _internal_mutable_sprite_id(); -} - -// optional uint32 bounding_square = 7; -inline bool SpriteInfo::_internal_has_bounding_square() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - return value; -} -inline bool SpriteInfo::has_bounding_square() const { - return _internal_has_bounding_square(); -} -inline void SpriteInfo::clear_bounding_square() { - _impl_.bounding_square_ = 0u; - _impl_._has_bits_[0] &= ~0x00000020u; -} -inline uint32_t SpriteInfo::_internal_bounding_square() const { - return _impl_.bounding_square_; -} -inline uint32_t SpriteInfo::bounding_square() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.bounding_square) - return _internal_bounding_square(); -} -inline void SpriteInfo::_internal_set_bounding_square(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000020u; - _impl_.bounding_square_ = value; -} -inline void SpriteInfo::set_bounding_square(uint32_t value) { - _internal_set_bounding_square(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.bounding_square) -} - -// optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; -inline bool SpriteInfo::_internal_has_animation() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.animation_ != nullptr); - return value; -} -inline bool SpriteInfo::has_animation() const { - return _internal_has_animation(); -} -inline void SpriteInfo::clear_animation() { - if (_impl_.animation_ != nullptr) _impl_.animation_->Clear(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const ::Canary::protobuf::appearances::SpriteAnimation& SpriteInfo::_internal_animation() const { - const ::Canary::protobuf::appearances::SpriteAnimation* p = _impl_.animation_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_SpriteAnimation_default_instance_); -} -inline const ::Canary::protobuf::appearances::SpriteAnimation& SpriteInfo::animation() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.animation) - return _internal_animation(); -} -inline void SpriteInfo::unsafe_arena_set_allocated_animation( - ::Canary::protobuf::appearances::SpriteAnimation* animation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.animation_); - } - _impl_.animation_ = animation; - if (animation) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.SpriteInfo.animation) -} -inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::release_animation() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteAnimation* temp = _impl_.animation_; - _impl_.animation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::unsafe_arena_release_animation() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.SpriteInfo.animation) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteAnimation* temp = _impl_.animation_; - _impl_.animation_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::_internal_mutable_animation() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.animation_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpriteAnimation>(GetArenaForAllocation()); - _impl_.animation_ = p; - } - return _impl_.animation_; -} -inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::mutable_animation() { - ::Canary::protobuf::appearances::SpriteAnimation* _msg = _internal_mutable_animation(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteInfo.animation) - return _msg; -} -inline void SpriteInfo::set_allocated_animation(::Canary::protobuf::appearances::SpriteAnimation* animation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.animation_; - } - if (animation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(animation); - if (message_arena != submessage_arena) { - animation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, animation, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.animation_ = animation; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.SpriteInfo.animation) -} - -// optional bool is_opaque = 8; -inline bool SpriteInfo::_internal_has_is_opaque() const { - bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; - return value; -} -inline bool SpriteInfo::has_is_opaque() const { - return _internal_has_is_opaque(); -} -inline void SpriteInfo::clear_is_opaque() { - _impl_.is_opaque_ = false; - _impl_._has_bits_[0] &= ~0x00000040u; -} -inline bool SpriteInfo::_internal_is_opaque() const { - return _impl_.is_opaque_; -} -inline bool SpriteInfo::is_opaque() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.is_opaque) - return _internal_is_opaque(); -} -inline void SpriteInfo::_internal_set_is_opaque(bool value) { - _impl_._has_bits_[0] |= 0x00000040u; - _impl_.is_opaque_ = value; -} -inline void SpriteInfo::set_is_opaque(bool value) { - _internal_set_is_opaque(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.is_opaque) -} - -// repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; -inline int SpriteInfo::_internal_bounding_box_per_direction_size() const { - return _impl_.bounding_box_per_direction_.size(); -} -inline int SpriteInfo::bounding_box_per_direction_size() const { - return _internal_bounding_box_per_direction_size(); -} -inline void SpriteInfo::clear_bounding_box_per_direction() { - _impl_.bounding_box_per_direction_.Clear(); -} -inline ::Canary::protobuf::appearances::Box* SpriteInfo::mutable_bounding_box_per_direction(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _impl_.bounding_box_per_direction_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Box >* -SpriteInfo::mutable_bounding_box_per_direction() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return &_impl_.bounding_box_per_direction_; -} -inline const ::Canary::protobuf::appearances::Box& SpriteInfo::_internal_bounding_box_per_direction(int index) const { - return _impl_.bounding_box_per_direction_.Get(index); -} -inline const ::Canary::protobuf::appearances::Box& SpriteInfo::bounding_box_per_direction(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _internal_bounding_box_per_direction(index); -} -inline ::Canary::protobuf::appearances::Box* SpriteInfo::_internal_add_bounding_box_per_direction() { - return _impl_.bounding_box_per_direction_.Add(); -} -inline ::Canary::protobuf::appearances::Box* SpriteInfo::add_bounding_box_per_direction() { - ::Canary::protobuf::appearances::Box* _add = _internal_add_bounding_box_per_direction(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::Box >& -SpriteInfo::bounding_box_per_direction() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _impl_.bounding_box_per_direction_; -} - -// ------------------------------------------------------------------- - -// FrameGroup - -// optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; -inline bool FrameGroup::_internal_has_fixed_frame_group() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool FrameGroup::has_fixed_frame_group() const { - return _internal_has_fixed_frame_group(); -} -inline void FrameGroup::clear_fixed_frame_group() { - _impl_.fixed_frame_group_ = 0; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline ::Canary::protobuf::appearances::FIXED_FRAME_GROUP FrameGroup::_internal_fixed_frame_group() const { - return static_cast< ::Canary::protobuf::appearances::FIXED_FRAME_GROUP >(_impl_.fixed_frame_group_); -} -inline ::Canary::protobuf::appearances::FIXED_FRAME_GROUP FrameGroup::fixed_frame_group() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.fixed_frame_group) - return _internal_fixed_frame_group(); -} -inline void FrameGroup::_internal_set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value) { - assert(::Canary::protobuf::appearances::FIXED_FRAME_GROUP_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.fixed_frame_group_ = value; -} -inline void FrameGroup::set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value) { - _internal_set_fixed_frame_group(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.FrameGroup.fixed_frame_group) -} - -// optional uint32 id = 2; -inline bool FrameGroup::_internal_has_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool FrameGroup::has_id() const { - return _internal_has_id(); -} -inline void FrameGroup::clear_id() { - _impl_.id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline uint32_t FrameGroup::_internal_id() const { - return _impl_.id_; -} -inline uint32_t FrameGroup::id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.id) - return _internal_id(); -} -inline void FrameGroup::_internal_set_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.id_ = value; -} -inline void FrameGroup::set_id(uint32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.FrameGroup.id) -} - -// optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; -inline bool FrameGroup::_internal_has_sprite_info() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.sprite_info_ != nullptr); - return value; -} -inline bool FrameGroup::has_sprite_info() const { - return _internal_has_sprite_info(); -} -inline void FrameGroup::clear_sprite_info() { - if (_impl_.sprite_info_ != nullptr) _impl_.sprite_info_->Clear(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const ::Canary::protobuf::appearances::SpriteInfo& FrameGroup::_internal_sprite_info() const { - const ::Canary::protobuf::appearances::SpriteInfo* p = _impl_.sprite_info_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_SpriteInfo_default_instance_); -} -inline const ::Canary::protobuf::appearances::SpriteInfo& FrameGroup::sprite_info() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.sprite_info) - return _internal_sprite_info(); -} -inline void FrameGroup::unsafe_arena_set_allocated_sprite_info( - ::Canary::protobuf::appearances::SpriteInfo* sprite_info) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sprite_info_); - } - _impl_.sprite_info_ = sprite_info; - if (sprite_info) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.FrameGroup.sprite_info) -} -inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::release_sprite_info() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteInfo* temp = _impl_.sprite_info_; - _impl_.sprite_info_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::unsafe_arena_release_sprite_info() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.FrameGroup.sprite_info) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteInfo* temp = _impl_.sprite_info_; - _impl_.sprite_info_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::_internal_mutable_sprite_info() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.sprite_info_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpriteInfo>(GetArenaForAllocation()); - _impl_.sprite_info_ = p; - } - return _impl_.sprite_info_; -} -inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::mutable_sprite_info() { - ::Canary::protobuf::appearances::SpriteInfo* _msg = _internal_mutable_sprite_info(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.FrameGroup.sprite_info) - return _msg; -} -inline void FrameGroup::set_allocated_sprite_info(::Canary::protobuf::appearances::SpriteInfo* sprite_info) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.sprite_info_; - } - if (sprite_info) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sprite_info); - if (message_arena != submessage_arena) { - sprite_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, sprite_info, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.sprite_info_ = sprite_info; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.FrameGroup.sprite_info) -} - -// ------------------------------------------------------------------- - -// Appearance - -// optional uint32 id = 1; -inline bool Appearance::_internal_has_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool Appearance::has_id() const { - return _internal_has_id(); -} -inline void Appearance::clear_id() { - _impl_.id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline uint32_t Appearance::_internal_id() const { - return _impl_.id_; -} -inline uint32_t Appearance::id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.id) - return _internal_id(); -} -inline void Appearance::_internal_set_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.id_ = value; -} -inline void Appearance::set_id(uint32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.id) -} - -// repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; -inline int Appearance::_internal_frame_group_size() const { - return _impl_.frame_group_.size(); -} -inline int Appearance::frame_group_size() const { - return _internal_frame_group_size(); -} -inline void Appearance::clear_frame_group() { - _impl_.frame_group_.Clear(); -} -inline ::Canary::protobuf::appearances::FrameGroup* Appearance::mutable_frame_group(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.frame_group) - return _impl_.frame_group_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::FrameGroup >* -Appearance::mutable_frame_group() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearance.frame_group) - return &_impl_.frame_group_; -} -inline const ::Canary::protobuf::appearances::FrameGroup& Appearance::_internal_frame_group(int index) const { - return _impl_.frame_group_.Get(index); -} -inline const ::Canary::protobuf::appearances::FrameGroup& Appearance::frame_group(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.frame_group) - return _internal_frame_group(index); -} -inline ::Canary::protobuf::appearances::FrameGroup* Appearance::_internal_add_frame_group() { - return _impl_.frame_group_.Add(); -} -inline ::Canary::protobuf::appearances::FrameGroup* Appearance::add_frame_group() { - ::Canary::protobuf::appearances::FrameGroup* _add = _internal_add_frame_group(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearance.frame_group) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::FrameGroup >& -Appearance::frame_group() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearance.frame_group) - return _impl_.frame_group_; -} - -// optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; -inline bool Appearance::_internal_has_flags() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - PROTOBUF_ASSUME(!value || _impl_.flags_ != nullptr); - return value; -} -inline bool Appearance::has_flags() const { - return _internal_has_flags(); -} -inline void Appearance::clear_flags() { - if (_impl_.flags_ != nullptr) _impl_.flags_->Clear(); - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlags& Appearance::_internal_flags() const { - const ::Canary::protobuf::appearances::AppearanceFlags* p = _impl_.flags_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlags_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlags& Appearance::flags() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.flags) - return _internal_flags(); -} -inline void Appearance::unsafe_arena_set_allocated_flags( - ::Canary::protobuf::appearances::AppearanceFlags* flags) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.flags_); - } - _impl_.flags_ = flags; - if (flags) { - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.Appearance.flags) -} -inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::release_flags() { - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlags* temp = _impl_.flags_; - _impl_.flags_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::unsafe_arena_release_flags() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.flags) - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlags* temp = _impl_.flags_; - _impl_.flags_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::_internal_mutable_flags() { - _impl_._has_bits_[0] |= 0x00000004u; - if (_impl_.flags_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlags>(GetArenaForAllocation()); - _impl_.flags_ = p; - } - return _impl_.flags_; -} -inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::mutable_flags() { - ::Canary::protobuf::appearances::AppearanceFlags* _msg = _internal_mutable_flags(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.flags) - return _msg; -} -inline void Appearance::set_allocated_flags(::Canary::protobuf::appearances::AppearanceFlags* flags) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.flags_; - } - if (flags) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(flags); - if (message_arena != submessage_arena) { - flags = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, flags, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - _impl_.flags_ = flags; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.flags) -} - -// optional bytes name = 4; -inline bool Appearance::_internal_has_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool Appearance::has_name() const { - return _internal_has_name(); -} -inline void Appearance::clear_name() { - _impl_.name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const std::string& Appearance::name() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Appearance::set_name(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.name) -} -inline std::string* Appearance::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.name) - return _s; -} -inline const std::string& Appearance::_internal_name() const { - return _impl_.name_.Get(); -} -inline void Appearance::_internal_set_name(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.Set(value, GetArenaForAllocation()); -} -inline std::string* Appearance::_internal_mutable_name() { - _impl_._has_bits_[0] |= 0x00000001u; - return _impl_.name_.Mutable(GetArenaForAllocation()); -} -inline std::string* Appearance::release_name() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.name) - if (!_internal_has_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000001u; - auto* p = _impl_.name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void Appearance::set_allocated_name(std::string* name) { - if (name != nullptr) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.name) -} - -// optional bytes description = 5; -inline bool Appearance::_internal_has_description() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool Appearance::has_description() const { - return _internal_has_description(); -} -inline void Appearance::clear_description() { - _impl_.description_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline const std::string& Appearance::description() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.description) - return _internal_description(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Appearance::set_description(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.description_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.description) -} -inline std::string* Appearance::mutable_description() { - std::string* _s = _internal_mutable_description(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.description) - return _s; -} -inline const std::string& Appearance::_internal_description() const { - return _impl_.description_.Get(); -} -inline void Appearance::_internal_set_description(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.description_.Set(value, GetArenaForAllocation()); -} -inline std::string* Appearance::_internal_mutable_description() { - _impl_._has_bits_[0] |= 0x00000002u; - return _impl_.description_.Mutable(GetArenaForAllocation()); -} -inline std::string* Appearance::release_description() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.description) - if (!_internal_has_description()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000002u; - auto* p = _impl_.description_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.description_.IsDefault()) { - _impl_.description_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void Appearance::set_allocated_description(std::string* description) { - if (description != nullptr) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.description_.SetAllocated(description, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.description_.IsDefault()) { - _impl_.description_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.description) -} - -// ------------------------------------------------------------------- - -// AppearanceFlags - -// optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; -inline bool AppearanceFlags::_internal_has_bank() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.bank_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_bank() const { - return _internal_has_bank(); -} -inline void AppearanceFlags::clear_bank() { - if (_impl_.bank_ != nullptr) _impl_.bank_->Clear(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagBank& AppearanceFlags::_internal_bank() const { - const ::Canary::protobuf::appearances::AppearanceFlagBank* p = _impl_.bank_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagBank_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagBank& AppearanceFlags::bank() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.bank) - return _internal_bank(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_bank( - ::Canary::protobuf::appearances::AppearanceFlagBank* bank) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.bank_); - } - _impl_.bank_ = bank; - if (bank) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.bank) -} -inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::release_bank() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::AppearanceFlagBank* temp = _impl_.bank_; - _impl_.bank_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::unsafe_arena_release_bank() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.bank) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::AppearanceFlagBank* temp = _impl_.bank_; - _impl_.bank_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::_internal_mutable_bank() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.bank_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagBank>(GetArenaForAllocation()); - _impl_.bank_ = p; - } - return _impl_.bank_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::mutable_bank() { - ::Canary::protobuf::appearances::AppearanceFlagBank* _msg = _internal_mutable_bank(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.bank) - return _msg; -} -inline void AppearanceFlags::set_allocated_bank(::Canary::protobuf::appearances::AppearanceFlagBank* bank) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.bank_; - } - if (bank) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(bank); - if (message_arena != submessage_arena) { - bank = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, bank, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.bank_ = bank; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.bank) -} - -// optional bool clip = 2; -inline bool AppearanceFlags::_internal_has_clip() const { - bool value = (_impl_._has_bits_[0] & 0x00008000u) != 0; - return value; -} -inline bool AppearanceFlags::has_clip() const { - return _internal_has_clip(); -} -inline void AppearanceFlags::clear_clip() { - _impl_.clip_ = false; - _impl_._has_bits_[0] &= ~0x00008000u; -} -inline bool AppearanceFlags::_internal_clip() const { - return _impl_.clip_; -} -inline bool AppearanceFlags::clip() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clip) - return _internal_clip(); -} -inline void AppearanceFlags::_internal_set_clip(bool value) { - _impl_._has_bits_[0] |= 0x00008000u; - _impl_.clip_ = value; -} -inline void AppearanceFlags::set_clip(bool value) { - _internal_set_clip(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.clip) -} - -// optional bool bottom = 3; -inline bool AppearanceFlags::_internal_has_bottom() const { - bool value = (_impl_._has_bits_[0] & 0x00010000u) != 0; - return value; -} -inline bool AppearanceFlags::has_bottom() const { - return _internal_has_bottom(); -} -inline void AppearanceFlags::clear_bottom() { - _impl_.bottom_ = false; - _impl_._has_bits_[0] &= ~0x00010000u; -} -inline bool AppearanceFlags::_internal_bottom() const { - return _impl_.bottom_; -} -inline bool AppearanceFlags::bottom() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.bottom) - return _internal_bottom(); -} -inline void AppearanceFlags::_internal_set_bottom(bool value) { - _impl_._has_bits_[0] |= 0x00010000u; - _impl_.bottom_ = value; -} -inline void AppearanceFlags::set_bottom(bool value) { - _internal_set_bottom(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.bottom) -} - -// optional bool top = 4; -inline bool AppearanceFlags::_internal_has_top() const { - bool value = (_impl_._has_bits_[0] & 0x00020000u) != 0; - return value; -} -inline bool AppearanceFlags::has_top() const { - return _internal_has_top(); -} -inline void AppearanceFlags::clear_top() { - _impl_.top_ = false; - _impl_._has_bits_[0] &= ~0x00020000u; -} -inline bool AppearanceFlags::_internal_top() const { - return _impl_.top_; -} -inline bool AppearanceFlags::top() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.top) - return _internal_top(); -} -inline void AppearanceFlags::_internal_set_top(bool value) { - _impl_._has_bits_[0] |= 0x00020000u; - _impl_.top_ = value; -} -inline void AppearanceFlags::set_top(bool value) { - _internal_set_top(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.top) -} - -// optional bool container = 5; -inline bool AppearanceFlags::_internal_has_container() const { - bool value = (_impl_._has_bits_[0] & 0x00040000u) != 0; - return value; -} -inline bool AppearanceFlags::has_container() const { - return _internal_has_container(); -} -inline void AppearanceFlags::clear_container() { - _impl_.container_ = false; - _impl_._has_bits_[0] &= ~0x00040000u; -} -inline bool AppearanceFlags::_internal_container() const { - return _impl_.container_; -} -inline bool AppearanceFlags::container() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.container) - return _internal_container(); -} -inline void AppearanceFlags::_internal_set_container(bool value) { - _impl_._has_bits_[0] |= 0x00040000u; - _impl_.container_ = value; -} -inline void AppearanceFlags::set_container(bool value) { - _internal_set_container(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.container) -} - -// optional bool cumulative = 6; -inline bool AppearanceFlags::_internal_has_cumulative() const { - bool value = (_impl_._has_bits_[0] & 0x00080000u) != 0; - return value; -} -inline bool AppearanceFlags::has_cumulative() const { - return _internal_has_cumulative(); -} -inline void AppearanceFlags::clear_cumulative() { - _impl_.cumulative_ = false; - _impl_._has_bits_[0] &= ~0x00080000u; -} -inline bool AppearanceFlags::_internal_cumulative() const { - return _impl_.cumulative_; -} -inline bool AppearanceFlags::cumulative() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.cumulative) - return _internal_cumulative(); -} -inline void AppearanceFlags::_internal_set_cumulative(bool value) { - _impl_._has_bits_[0] |= 0x00080000u; - _impl_.cumulative_ = value; -} -inline void AppearanceFlags::set_cumulative(bool value) { - _internal_set_cumulative(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.cumulative) -} - -// optional bool usable = 7; -inline bool AppearanceFlags::_internal_has_usable() const { - bool value = (_impl_._has_bits_[0] & 0x00100000u) != 0; - return value; -} -inline bool AppearanceFlags::has_usable() const { - return _internal_has_usable(); -} -inline void AppearanceFlags::clear_usable() { - _impl_.usable_ = false; - _impl_._has_bits_[0] &= ~0x00100000u; -} -inline bool AppearanceFlags::_internal_usable() const { - return _impl_.usable_; -} -inline bool AppearanceFlags::usable() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.usable) - return _internal_usable(); -} -inline void AppearanceFlags::_internal_set_usable(bool value) { - _impl_._has_bits_[0] |= 0x00100000u; - _impl_.usable_ = value; -} -inline void AppearanceFlags::set_usable(bool value) { - _internal_set_usable(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.usable) -} - -// optional bool forceuse = 8; -inline bool AppearanceFlags::_internal_has_forceuse() const { - bool value = (_impl_._has_bits_[0] & 0x00200000u) != 0; - return value; -} -inline bool AppearanceFlags::has_forceuse() const { - return _internal_has_forceuse(); -} -inline void AppearanceFlags::clear_forceuse() { - _impl_.forceuse_ = false; - _impl_._has_bits_[0] &= ~0x00200000u; -} -inline bool AppearanceFlags::_internal_forceuse() const { - return _impl_.forceuse_; -} -inline bool AppearanceFlags::forceuse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.forceuse) - return _internal_forceuse(); -} -inline void AppearanceFlags::_internal_set_forceuse(bool value) { - _impl_._has_bits_[0] |= 0x00200000u; - _impl_.forceuse_ = value; -} -inline void AppearanceFlags::set_forceuse(bool value) { - _internal_set_forceuse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.forceuse) -} - -// optional bool multiuse = 9; -inline bool AppearanceFlags::_internal_has_multiuse() const { - bool value = (_impl_._has_bits_[0] & 0x00400000u) != 0; - return value; -} -inline bool AppearanceFlags::has_multiuse() const { - return _internal_has_multiuse(); -} -inline void AppearanceFlags::clear_multiuse() { - _impl_.multiuse_ = false; - _impl_._has_bits_[0] &= ~0x00400000u; -} -inline bool AppearanceFlags::_internal_multiuse() const { - return _impl_.multiuse_; -} -inline bool AppearanceFlags::multiuse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.multiuse) - return _internal_multiuse(); -} -inline void AppearanceFlags::_internal_set_multiuse(bool value) { - _impl_._has_bits_[0] |= 0x00400000u; - _impl_.multiuse_ = value; -} -inline void AppearanceFlags::set_multiuse(bool value) { - _internal_set_multiuse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.multiuse) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; -inline bool AppearanceFlags::_internal_has_write() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - PROTOBUF_ASSUME(!value || _impl_.write_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_write() const { - return _internal_has_write(); -} -inline void AppearanceFlags::clear_write() { - if (_impl_.write_ != nullptr) _impl_.write_->Clear(); - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagWrite& AppearanceFlags::_internal_write() const { - const ::Canary::protobuf::appearances::AppearanceFlagWrite* p = _impl_.write_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagWrite_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagWrite& AppearanceFlags::write() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.write) - return _internal_write(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_write( - ::Canary::protobuf::appearances::AppearanceFlagWrite* write) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.write_); - } - _impl_.write_ = write; - if (write) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write) -} -inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::release_write() { - _impl_._has_bits_[0] &= ~0x00000002u; - ::Canary::protobuf::appearances::AppearanceFlagWrite* temp = _impl_.write_; - _impl_.write_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::unsafe_arena_release_write() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.write) - _impl_._has_bits_[0] &= ~0x00000002u; - ::Canary::protobuf::appearances::AppearanceFlagWrite* temp = _impl_.write_; - _impl_.write_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::_internal_mutable_write() { - _impl_._has_bits_[0] |= 0x00000002u; - if (_impl_.write_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWrite>(GetArenaForAllocation()); - _impl_.write_ = p; - } - return _impl_.write_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::mutable_write() { - ::Canary::protobuf::appearances::AppearanceFlagWrite* _msg = _internal_mutable_write(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.write) - return _msg; -} -inline void AppearanceFlags::set_allocated_write(::Canary::protobuf::appearances::AppearanceFlagWrite* write) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.write_; - } - if (write) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(write); - if (message_arena != submessage_arena) { - write = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, write, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.write_ = write; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; -inline bool AppearanceFlags::_internal_has_write_once() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - PROTOBUF_ASSUME(!value || _impl_.write_once_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_write_once() const { - return _internal_has_write_once(); -} -inline void AppearanceFlags::clear_write_once() { - if (_impl_.write_once_ != nullptr) _impl_.write_once_->Clear(); - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce& AppearanceFlags::_internal_write_once() const { - const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* p = _impl_.write_once_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagWriteOnce_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce& AppearanceFlags::write_once() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.write_once) - return _internal_write_once(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_write_once( - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.write_once_); - } - _impl_.write_once_ = write_once; - if (write_once) { - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write_once) -} -inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::release_write_once() { - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* temp = _impl_.write_once_; - _impl_.write_once_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::unsafe_arena_release_write_once() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.write_once) - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* temp = _impl_.write_once_; - _impl_.write_once_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::_internal_mutable_write_once() { - _impl_._has_bits_[0] |= 0x00000004u; - if (_impl_.write_once_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWriteOnce>(GetArenaForAllocation()); - _impl_.write_once_ = p; - } - return _impl_.write_once_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::mutable_write_once() { - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* _msg = _internal_mutable_write_once(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.write_once) - return _msg; -} -inline void AppearanceFlags::set_allocated_write_once(::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.write_once_; - } - if (write_once) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(write_once); - if (message_arena != submessage_arena) { - write_once = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, write_once, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - _impl_.write_once_ = write_once; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write_once) -} - -// optional bool liquidpool = 12; -inline bool AppearanceFlags::_internal_has_liquidpool() const { - bool value = (_impl_._has_bits_[0] & 0x00800000u) != 0; - return value; -} -inline bool AppearanceFlags::has_liquidpool() const { - return _internal_has_liquidpool(); -} -inline void AppearanceFlags::clear_liquidpool() { - _impl_.liquidpool_ = false; - _impl_._has_bits_[0] &= ~0x00800000u; -} -inline bool AppearanceFlags::_internal_liquidpool() const { - return _impl_.liquidpool_; -} -inline bool AppearanceFlags::liquidpool() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.liquidpool) - return _internal_liquidpool(); -} -inline void AppearanceFlags::_internal_set_liquidpool(bool value) { - _impl_._has_bits_[0] |= 0x00800000u; - _impl_.liquidpool_ = value; -} -inline void AppearanceFlags::set_liquidpool(bool value) { - _internal_set_liquidpool(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.liquidpool) -} - -// optional bool unpass = 13; -inline bool AppearanceFlags::_internal_has_unpass() const { - bool value = (_impl_._has_bits_[0] & 0x01000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_unpass() const { - return _internal_has_unpass(); -} -inline void AppearanceFlags::clear_unpass() { - _impl_.unpass_ = false; - _impl_._has_bits_[0] &= ~0x01000000u; -} -inline bool AppearanceFlags::_internal_unpass() const { - return _impl_.unpass_; -} -inline bool AppearanceFlags::unpass() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unpass) - return _internal_unpass(); -} -inline void AppearanceFlags::_internal_set_unpass(bool value) { - _impl_._has_bits_[0] |= 0x01000000u; - _impl_.unpass_ = value; -} -inline void AppearanceFlags::set_unpass(bool value) { - _internal_set_unpass(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unpass) -} - -// optional bool unmove = 14; -inline bool AppearanceFlags::_internal_has_unmove() const { - bool value = (_impl_._has_bits_[0] & 0x02000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_unmove() const { - return _internal_has_unmove(); -} -inline void AppearanceFlags::clear_unmove() { - _impl_.unmove_ = false; - _impl_._has_bits_[0] &= ~0x02000000u; -} -inline bool AppearanceFlags::_internal_unmove() const { - return _impl_.unmove_; -} -inline bool AppearanceFlags::unmove() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unmove) - return _internal_unmove(); -} -inline void AppearanceFlags::_internal_set_unmove(bool value) { - _impl_._has_bits_[0] |= 0x02000000u; - _impl_.unmove_ = value; -} -inline void AppearanceFlags::set_unmove(bool value) { - _internal_set_unmove(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unmove) -} - -// optional bool unsight = 15; -inline bool AppearanceFlags::_internal_has_unsight() const { - bool value = (_impl_._has_bits_[0] & 0x04000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_unsight() const { - return _internal_has_unsight(); -} -inline void AppearanceFlags::clear_unsight() { - _impl_.unsight_ = false; - _impl_._has_bits_[0] &= ~0x04000000u; -} -inline bool AppearanceFlags::_internal_unsight() const { - return _impl_.unsight_; -} -inline bool AppearanceFlags::unsight() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unsight) - return _internal_unsight(); -} -inline void AppearanceFlags::_internal_set_unsight(bool value) { - _impl_._has_bits_[0] |= 0x04000000u; - _impl_.unsight_ = value; -} -inline void AppearanceFlags::set_unsight(bool value) { - _internal_set_unsight(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unsight) -} - -// optional bool avoid = 16; -inline bool AppearanceFlags::_internal_has_avoid() const { - bool value = (_impl_._has_bits_[0] & 0x08000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_avoid() const { - return _internal_has_avoid(); -} -inline void AppearanceFlags::clear_avoid() { - _impl_.avoid_ = false; - _impl_._has_bits_[0] &= ~0x08000000u; -} -inline bool AppearanceFlags::_internal_avoid() const { - return _impl_.avoid_; -} -inline bool AppearanceFlags::avoid() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.avoid) - return _internal_avoid(); -} -inline void AppearanceFlags::_internal_set_avoid(bool value) { - _impl_._has_bits_[0] |= 0x08000000u; - _impl_.avoid_ = value; -} -inline void AppearanceFlags::set_avoid(bool value) { - _internal_set_avoid(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.avoid) -} - -// optional bool no_movement_animation = 17; -inline bool AppearanceFlags::_internal_has_no_movement_animation() const { - bool value = (_impl_._has_bits_[0] & 0x10000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_no_movement_animation() const { - return _internal_has_no_movement_animation(); -} -inline void AppearanceFlags::clear_no_movement_animation() { - _impl_.no_movement_animation_ = false; - _impl_._has_bits_[0] &= ~0x10000000u; -} -inline bool AppearanceFlags::_internal_no_movement_animation() const { - return _impl_.no_movement_animation_; -} -inline bool AppearanceFlags::no_movement_animation() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.no_movement_animation) - return _internal_no_movement_animation(); -} -inline void AppearanceFlags::_internal_set_no_movement_animation(bool value) { - _impl_._has_bits_[0] |= 0x10000000u; - _impl_.no_movement_animation_ = value; -} -inline void AppearanceFlags::set_no_movement_animation(bool value) { - _internal_set_no_movement_animation(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.no_movement_animation) -} - -// optional bool take = 18; -inline bool AppearanceFlags::_internal_has_take() const { - bool value = (_impl_._has_bits_[0] & 0x20000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_take() const { - return _internal_has_take(); -} -inline void AppearanceFlags::clear_take() { - _impl_.take_ = false; - _impl_._has_bits_[0] &= ~0x20000000u; -} -inline bool AppearanceFlags::_internal_take() const { - return _impl_.take_; -} -inline bool AppearanceFlags::take() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.take) - return _internal_take(); -} -inline void AppearanceFlags::_internal_set_take(bool value) { - _impl_._has_bits_[0] |= 0x20000000u; - _impl_.take_ = value; -} -inline void AppearanceFlags::set_take(bool value) { - _internal_set_take(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.take) -} - -// optional bool liquidcontainer = 19; -inline bool AppearanceFlags::_internal_has_liquidcontainer() const { - bool value = (_impl_._has_bits_[0] & 0x40000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_liquidcontainer() const { - return _internal_has_liquidcontainer(); -} -inline void AppearanceFlags::clear_liquidcontainer() { - _impl_.liquidcontainer_ = false; - _impl_._has_bits_[0] &= ~0x40000000u; -} -inline bool AppearanceFlags::_internal_liquidcontainer() const { - return _impl_.liquidcontainer_; -} -inline bool AppearanceFlags::liquidcontainer() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.liquidcontainer) - return _internal_liquidcontainer(); -} -inline void AppearanceFlags::_internal_set_liquidcontainer(bool value) { - _impl_._has_bits_[0] |= 0x40000000u; - _impl_.liquidcontainer_ = value; -} -inline void AppearanceFlags::set_liquidcontainer(bool value) { - _internal_set_liquidcontainer(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.liquidcontainer) -} - -// optional bool hang = 20; -inline bool AppearanceFlags::_internal_has_hang() const { - bool value = (_impl_._has_bits_[0] & 0x80000000u) != 0; - return value; -} -inline bool AppearanceFlags::has_hang() const { - return _internal_has_hang(); -} -inline void AppearanceFlags::clear_hang() { - _impl_.hang_ = false; - _impl_._has_bits_[0] &= ~0x80000000u; -} -inline bool AppearanceFlags::_internal_hang() const { - return _impl_.hang_; -} -inline bool AppearanceFlags::hang() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.hang) - return _internal_hang(); -} -inline void AppearanceFlags::_internal_set_hang(bool value) { - _impl_._has_bits_[0] |= 0x80000000u; - _impl_.hang_ = value; -} -inline void AppearanceFlags::set_hang(bool value) { - _internal_set_hang(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.hang) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; -inline bool AppearanceFlags::_internal_has_hook() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - PROTOBUF_ASSUME(!value || _impl_.hook_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_hook() const { - return _internal_has_hook(); -} -inline void AppearanceFlags::clear_hook() { - if (_impl_.hook_ != nullptr) _impl_.hook_->Clear(); - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagHook& AppearanceFlags::_internal_hook() const { - const ::Canary::protobuf::appearances::AppearanceFlagHook* p = _impl_.hook_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagHook_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagHook& AppearanceFlags::hook() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.hook) - return _internal_hook(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_hook( - ::Canary::protobuf::appearances::AppearanceFlagHook* hook) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.hook_); - } - _impl_.hook_ = hook; - if (hook) { - _impl_._has_bits_[0] |= 0x00000008u; - } else { - _impl_._has_bits_[0] &= ~0x00000008u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.hook) -} -inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::release_hook() { - _impl_._has_bits_[0] &= ~0x00000008u; - ::Canary::protobuf::appearances::AppearanceFlagHook* temp = _impl_.hook_; - _impl_.hook_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::unsafe_arena_release_hook() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.hook) - _impl_._has_bits_[0] &= ~0x00000008u; - ::Canary::protobuf::appearances::AppearanceFlagHook* temp = _impl_.hook_; - _impl_.hook_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::_internal_mutable_hook() { - _impl_._has_bits_[0] |= 0x00000008u; - if (_impl_.hook_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHook>(GetArenaForAllocation()); - _impl_.hook_ = p; - } - return _impl_.hook_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::mutable_hook() { - ::Canary::protobuf::appearances::AppearanceFlagHook* _msg = _internal_mutable_hook(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.hook) - return _msg; -} -inline void AppearanceFlags::set_allocated_hook(::Canary::protobuf::appearances::AppearanceFlagHook* hook) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.hook_; - } - if (hook) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(hook); - if (message_arena != submessage_arena) { - hook = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, hook, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000008u; - } else { - _impl_._has_bits_[0] &= ~0x00000008u; - } - _impl_.hook_ = hook; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.hook) -} - -// optional bool rotate = 22; -inline bool AppearanceFlags::_internal_has_rotate() const { - bool value = (_impl_._has_bits_[1] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlags::has_rotate() const { - return _internal_has_rotate(); -} -inline void AppearanceFlags::clear_rotate() { - _impl_.rotate_ = false; - _impl_._has_bits_[1] &= ~0x00000001u; -} -inline bool AppearanceFlags::_internal_rotate() const { - return _impl_.rotate_; -} -inline bool AppearanceFlags::rotate() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.rotate) - return _internal_rotate(); -} -inline void AppearanceFlags::_internal_set_rotate(bool value) { - _impl_._has_bits_[1] |= 0x00000001u; - _impl_.rotate_ = value; -} -inline void AppearanceFlags::set_rotate(bool value) { - _internal_set_rotate(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.rotate) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; -inline bool AppearanceFlags::_internal_has_light() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - PROTOBUF_ASSUME(!value || _impl_.light_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_light() const { - return _internal_has_light(); -} -inline void AppearanceFlags::clear_light() { - if (_impl_.light_ != nullptr) _impl_.light_->Clear(); - _impl_._has_bits_[0] &= ~0x00000010u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagLight& AppearanceFlags::_internal_light() const { - const ::Canary::protobuf::appearances::AppearanceFlagLight* p = _impl_.light_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagLight_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagLight& AppearanceFlags::light() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.light) - return _internal_light(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_light( - ::Canary::protobuf::appearances::AppearanceFlagLight* light) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.light_); - } - _impl_.light_ = light; - if (light) { - _impl_._has_bits_[0] |= 0x00000010u; - } else { - _impl_._has_bits_[0] &= ~0x00000010u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.light) -} -inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::release_light() { - _impl_._has_bits_[0] &= ~0x00000010u; - ::Canary::protobuf::appearances::AppearanceFlagLight* temp = _impl_.light_; - _impl_.light_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::unsafe_arena_release_light() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.light) - _impl_._has_bits_[0] &= ~0x00000010u; - ::Canary::protobuf::appearances::AppearanceFlagLight* temp = _impl_.light_; - _impl_.light_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::_internal_mutable_light() { - _impl_._has_bits_[0] |= 0x00000010u; - if (_impl_.light_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLight>(GetArenaForAllocation()); - _impl_.light_ = p; - } - return _impl_.light_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::mutable_light() { - ::Canary::protobuf::appearances::AppearanceFlagLight* _msg = _internal_mutable_light(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.light) - return _msg; -} -inline void AppearanceFlags::set_allocated_light(::Canary::protobuf::appearances::AppearanceFlagLight* light) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.light_; - } - if (light) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(light); - if (message_arena != submessage_arena) { - light = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, light, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000010u; - } else { - _impl_._has_bits_[0] &= ~0x00000010u; - } - _impl_.light_ = light; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.light) -} - -// optional bool dont_hide = 24; -inline bool AppearanceFlags::_internal_has_dont_hide() const { - bool value = (_impl_._has_bits_[1] & 0x00000002u) != 0; - return value; -} -inline bool AppearanceFlags::has_dont_hide() const { - return _internal_has_dont_hide(); -} -inline void AppearanceFlags::clear_dont_hide() { - _impl_.dont_hide_ = false; - _impl_._has_bits_[1] &= ~0x00000002u; -} -inline bool AppearanceFlags::_internal_dont_hide() const { - return _impl_.dont_hide_; -} -inline bool AppearanceFlags::dont_hide() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.dont_hide) - return _internal_dont_hide(); -} -inline void AppearanceFlags::_internal_set_dont_hide(bool value) { - _impl_._has_bits_[1] |= 0x00000002u; - _impl_.dont_hide_ = value; -} -inline void AppearanceFlags::set_dont_hide(bool value) { - _internal_set_dont_hide(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.dont_hide) -} - -// optional bool translucent = 25; -inline bool AppearanceFlags::_internal_has_translucent() const { - bool value = (_impl_._has_bits_[1] & 0x00000004u) != 0; - return value; -} -inline bool AppearanceFlags::has_translucent() const { - return _internal_has_translucent(); -} -inline void AppearanceFlags::clear_translucent() { - _impl_.translucent_ = false; - _impl_._has_bits_[1] &= ~0x00000004u; -} -inline bool AppearanceFlags::_internal_translucent() const { - return _impl_.translucent_; -} -inline bool AppearanceFlags::translucent() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.translucent) - return _internal_translucent(); -} -inline void AppearanceFlags::_internal_set_translucent(bool value) { - _impl_._has_bits_[1] |= 0x00000004u; - _impl_.translucent_ = value; -} -inline void AppearanceFlags::set_translucent(bool value) { - _internal_set_translucent(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.translucent) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; -inline bool AppearanceFlags::_internal_has_shift() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - PROTOBUF_ASSUME(!value || _impl_.shift_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_shift() const { - return _internal_has_shift(); -} -inline void AppearanceFlags::clear_shift() { - if (_impl_.shift_ != nullptr) _impl_.shift_->Clear(); - _impl_._has_bits_[0] &= ~0x00000020u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagShift& AppearanceFlags::_internal_shift() const { - const ::Canary::protobuf::appearances::AppearanceFlagShift* p = _impl_.shift_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagShift_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagShift& AppearanceFlags::shift() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.shift) - return _internal_shift(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_shift( - ::Canary::protobuf::appearances::AppearanceFlagShift* shift) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.shift_); - } - _impl_.shift_ = shift; - if (shift) { - _impl_._has_bits_[0] |= 0x00000020u; - } else { - _impl_._has_bits_[0] &= ~0x00000020u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.shift) -} -inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::release_shift() { - _impl_._has_bits_[0] &= ~0x00000020u; - ::Canary::protobuf::appearances::AppearanceFlagShift* temp = _impl_.shift_; - _impl_.shift_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::unsafe_arena_release_shift() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.shift) - _impl_._has_bits_[0] &= ~0x00000020u; - ::Canary::protobuf::appearances::AppearanceFlagShift* temp = _impl_.shift_; - _impl_.shift_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::_internal_mutable_shift() { - _impl_._has_bits_[0] |= 0x00000020u; - if (_impl_.shift_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagShift>(GetArenaForAllocation()); - _impl_.shift_ = p; - } - return _impl_.shift_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::mutable_shift() { - ::Canary::protobuf::appearances::AppearanceFlagShift* _msg = _internal_mutable_shift(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.shift) - return _msg; -} -inline void AppearanceFlags::set_allocated_shift(::Canary::protobuf::appearances::AppearanceFlagShift* shift) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.shift_; - } - if (shift) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(shift); - if (message_arena != submessage_arena) { - shift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, shift, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000020u; - } else { - _impl_._has_bits_[0] &= ~0x00000020u; - } - _impl_.shift_ = shift; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.shift) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; -inline bool AppearanceFlags::_internal_has_height() const { - bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; - PROTOBUF_ASSUME(!value || _impl_.height_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_height() const { - return _internal_has_height(); -} -inline void AppearanceFlags::clear_height() { - if (_impl_.height_ != nullptr) _impl_.height_->Clear(); - _impl_._has_bits_[0] &= ~0x00000040u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagHeight& AppearanceFlags::_internal_height() const { - const ::Canary::protobuf::appearances::AppearanceFlagHeight* p = _impl_.height_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagHeight_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagHeight& AppearanceFlags::height() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.height) - return _internal_height(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_height( - ::Canary::protobuf::appearances::AppearanceFlagHeight* height) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.height_); - } - _impl_.height_ = height; - if (height) { - _impl_._has_bits_[0] |= 0x00000040u; - } else { - _impl_._has_bits_[0] &= ~0x00000040u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.height) -} -inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::release_height() { - _impl_._has_bits_[0] &= ~0x00000040u; - ::Canary::protobuf::appearances::AppearanceFlagHeight* temp = _impl_.height_; - _impl_.height_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::unsafe_arena_release_height() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.height) - _impl_._has_bits_[0] &= ~0x00000040u; - ::Canary::protobuf::appearances::AppearanceFlagHeight* temp = _impl_.height_; - _impl_.height_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::_internal_mutable_height() { - _impl_._has_bits_[0] |= 0x00000040u; - if (_impl_.height_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHeight>(GetArenaForAllocation()); - _impl_.height_ = p; - } - return _impl_.height_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::mutable_height() { - ::Canary::protobuf::appearances::AppearanceFlagHeight* _msg = _internal_mutable_height(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.height) - return _msg; -} -inline void AppearanceFlags::set_allocated_height(::Canary::protobuf::appearances::AppearanceFlagHeight* height) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.height_; - } - if (height) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(height); - if (message_arena != submessage_arena) { - height = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, height, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000040u; - } else { - _impl_._has_bits_[0] &= ~0x00000040u; - } - _impl_.height_ = height; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.height) -} - -// optional bool lying_object = 28; -inline bool AppearanceFlags::_internal_has_lying_object() const { - bool value = (_impl_._has_bits_[1] & 0x00000008u) != 0; - return value; -} -inline bool AppearanceFlags::has_lying_object() const { - return _internal_has_lying_object(); -} -inline void AppearanceFlags::clear_lying_object() { - _impl_.lying_object_ = false; - _impl_._has_bits_[1] &= ~0x00000008u; -} -inline bool AppearanceFlags::_internal_lying_object() const { - return _impl_.lying_object_; -} -inline bool AppearanceFlags::lying_object() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.lying_object) - return _internal_lying_object(); -} -inline void AppearanceFlags::_internal_set_lying_object(bool value) { - _impl_._has_bits_[1] |= 0x00000008u; - _impl_.lying_object_ = value; -} -inline void AppearanceFlags::set_lying_object(bool value) { - _internal_set_lying_object(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.lying_object) -} - -// optional bool animate_always = 29; -inline bool AppearanceFlags::_internal_has_animate_always() const { - bool value = (_impl_._has_bits_[1] & 0x00000010u) != 0; - return value; -} -inline bool AppearanceFlags::has_animate_always() const { - return _internal_has_animate_always(); -} -inline void AppearanceFlags::clear_animate_always() { - _impl_.animate_always_ = false; - _impl_._has_bits_[1] &= ~0x00000010u; -} -inline bool AppearanceFlags::_internal_animate_always() const { - return _impl_.animate_always_; -} -inline bool AppearanceFlags::animate_always() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.animate_always) - return _internal_animate_always(); -} -inline void AppearanceFlags::_internal_set_animate_always(bool value) { - _impl_._has_bits_[1] |= 0x00000010u; - _impl_.animate_always_ = value; -} -inline void AppearanceFlags::set_animate_always(bool value) { - _internal_set_animate_always(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.animate_always) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; -inline bool AppearanceFlags::_internal_has_automap() const { - bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0; - PROTOBUF_ASSUME(!value || _impl_.automap_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_automap() const { - return _internal_has_automap(); -} -inline void AppearanceFlags::clear_automap() { - if (_impl_.automap_ != nullptr) _impl_.automap_->Clear(); - _impl_._has_bits_[0] &= ~0x00000080u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagAutomap& AppearanceFlags::_internal_automap() const { - const ::Canary::protobuf::appearances::AppearanceFlagAutomap* p = _impl_.automap_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagAutomap_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagAutomap& AppearanceFlags::automap() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.automap) - return _internal_automap(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_automap( - ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.automap_); - } - _impl_.automap_ = automap; - if (automap) { - _impl_._has_bits_[0] |= 0x00000080u; - } else { - _impl_._has_bits_[0] &= ~0x00000080u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.automap) -} -inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::release_automap() { - _impl_._has_bits_[0] &= ~0x00000080u; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* temp = _impl_.automap_; - _impl_.automap_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::unsafe_arena_release_automap() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.automap) - _impl_._has_bits_[0] &= ~0x00000080u; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* temp = _impl_.automap_; - _impl_.automap_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::_internal_mutable_automap() { - _impl_._has_bits_[0] |= 0x00000080u; - if (_impl_.automap_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagAutomap>(GetArenaForAllocation()); - _impl_.automap_ = p; - } - return _impl_.automap_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::mutable_automap() { - ::Canary::protobuf::appearances::AppearanceFlagAutomap* _msg = _internal_mutable_automap(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.automap) - return _msg; -} -inline void AppearanceFlags::set_allocated_automap(::Canary::protobuf::appearances::AppearanceFlagAutomap* automap) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.automap_; - } - if (automap) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(automap); - if (message_arena != submessage_arena) { - automap = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, automap, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000080u; - } else { - _impl_._has_bits_[0] &= ~0x00000080u; - } - _impl_.automap_ = automap; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.automap) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; -inline bool AppearanceFlags::_internal_has_lenshelp() const { - bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0; - PROTOBUF_ASSUME(!value || _impl_.lenshelp_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_lenshelp() const { - return _internal_has_lenshelp(); -} -inline void AppearanceFlags::clear_lenshelp() { - if (_impl_.lenshelp_ != nullptr) _impl_.lenshelp_->Clear(); - _impl_._has_bits_[0] &= ~0x00000100u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagLenshelp& AppearanceFlags::_internal_lenshelp() const { - const ::Canary::protobuf::appearances::AppearanceFlagLenshelp* p = _impl_.lenshelp_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagLenshelp_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagLenshelp& AppearanceFlags::lenshelp() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - return _internal_lenshelp(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_lenshelp( - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.lenshelp_); - } - _impl_.lenshelp_ = lenshelp; - if (lenshelp) { - _impl_._has_bits_[0] |= 0x00000100u; - } else { - _impl_._has_bits_[0] &= ~0x00000100u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.lenshelp) -} -inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::release_lenshelp() { - _impl_._has_bits_[0] &= ~0x00000100u; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* temp = _impl_.lenshelp_; - _impl_.lenshelp_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::unsafe_arena_release_lenshelp() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - _impl_._has_bits_[0] &= ~0x00000100u; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* temp = _impl_.lenshelp_; - _impl_.lenshelp_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::_internal_mutable_lenshelp() { - _impl_._has_bits_[0] |= 0x00000100u; - if (_impl_.lenshelp_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLenshelp>(GetArenaForAllocation()); - _impl_.lenshelp_ = p; - } - return _impl_.lenshelp_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::mutable_lenshelp() { - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* _msg = _internal_mutable_lenshelp(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - return _msg; -} -inline void AppearanceFlags::set_allocated_lenshelp(::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.lenshelp_; - } - if (lenshelp) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(lenshelp); - if (message_arena != submessage_arena) { - lenshelp = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, lenshelp, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000100u; - } else { - _impl_._has_bits_[0] &= ~0x00000100u; - } - _impl_.lenshelp_ = lenshelp; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.lenshelp) -} - -// optional bool fullbank = 32; -inline bool AppearanceFlags::_internal_has_fullbank() const { - bool value = (_impl_._has_bits_[1] & 0x00000020u) != 0; - return value; -} -inline bool AppearanceFlags::has_fullbank() const { - return _internal_has_fullbank(); -} -inline void AppearanceFlags::clear_fullbank() { - _impl_.fullbank_ = false; - _impl_._has_bits_[1] &= ~0x00000020u; -} -inline bool AppearanceFlags::_internal_fullbank() const { - return _impl_.fullbank_; -} -inline bool AppearanceFlags::fullbank() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.fullbank) - return _internal_fullbank(); -} -inline void AppearanceFlags::_internal_set_fullbank(bool value) { - _impl_._has_bits_[1] |= 0x00000020u; - _impl_.fullbank_ = value; -} -inline void AppearanceFlags::set_fullbank(bool value) { - _internal_set_fullbank(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.fullbank) -} - -// optional bool ignore_look = 33; -inline bool AppearanceFlags::_internal_has_ignore_look() const { - bool value = (_impl_._has_bits_[1] & 0x00000040u) != 0; - return value; -} -inline bool AppearanceFlags::has_ignore_look() const { - return _internal_has_ignore_look(); -} -inline void AppearanceFlags::clear_ignore_look() { - _impl_.ignore_look_ = false; - _impl_._has_bits_[1] &= ~0x00000040u; -} -inline bool AppearanceFlags::_internal_ignore_look() const { - return _impl_.ignore_look_; -} -inline bool AppearanceFlags::ignore_look() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.ignore_look) - return _internal_ignore_look(); -} -inline void AppearanceFlags::_internal_set_ignore_look(bool value) { - _impl_._has_bits_[1] |= 0x00000040u; - _impl_.ignore_look_ = value; -} -inline void AppearanceFlags::set_ignore_look(bool value) { - _internal_set_ignore_look(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.ignore_look) -} - -// optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; -inline bool AppearanceFlags::_internal_has_clothes() const { - bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0; - PROTOBUF_ASSUME(!value || _impl_.clothes_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_clothes() const { - return _internal_has_clothes(); -} -inline void AppearanceFlags::clear_clothes() { - if (_impl_.clothes_ != nullptr) _impl_.clothes_->Clear(); - _impl_._has_bits_[0] &= ~0x00000200u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagClothes& AppearanceFlags::_internal_clothes() const { - const ::Canary::protobuf::appearances::AppearanceFlagClothes* p = _impl_.clothes_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagClothes_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagClothes& AppearanceFlags::clothes() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clothes) - return _internal_clothes(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_clothes( - ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.clothes_); - } - _impl_.clothes_ = clothes; - if (clothes) { - _impl_._has_bits_[0] |= 0x00000200u; - } else { - _impl_._has_bits_[0] &= ~0x00000200u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.clothes) -} -inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::release_clothes() { - _impl_._has_bits_[0] &= ~0x00000200u; - ::Canary::protobuf::appearances::AppearanceFlagClothes* temp = _impl_.clothes_; - _impl_.clothes_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::unsafe_arena_release_clothes() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.clothes) - _impl_._has_bits_[0] &= ~0x00000200u; - ::Canary::protobuf::appearances::AppearanceFlagClothes* temp = _impl_.clothes_; - _impl_.clothes_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::_internal_mutable_clothes() { - _impl_._has_bits_[0] |= 0x00000200u; - if (_impl_.clothes_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagClothes>(GetArenaForAllocation()); - _impl_.clothes_ = p; - } - return _impl_.clothes_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::mutable_clothes() { - ::Canary::protobuf::appearances::AppearanceFlagClothes* _msg = _internal_mutable_clothes(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.clothes) - return _msg; -} -inline void AppearanceFlags::set_allocated_clothes(::Canary::protobuf::appearances::AppearanceFlagClothes* clothes) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.clothes_; - } - if (clothes) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(clothes); - if (message_arena != submessage_arena) { - clothes = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, clothes, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000200u; - } else { - _impl_._has_bits_[0] &= ~0x00000200u; - } - _impl_.clothes_ = clothes; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.clothes) -} + private: + bool _internal_unpass() const; + void _internal_set_unpass(bool value); -// optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; -inline bool AppearanceFlags::_internal_has_default_action() const { - bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0; - PROTOBUF_ASSUME(!value || _impl_.default_action_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_default_action() const { - return _internal_has_default_action(); -} -inline void AppearanceFlags::clear_default_action() { - if (_impl_.default_action_ != nullptr) _impl_.default_action_->Clear(); - _impl_._has_bits_[0] &= ~0x00000400u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction& AppearanceFlags::_internal_default_action() const { - const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* p = _impl_.default_action_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagDefaultAction_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction& AppearanceFlags::default_action() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.default_action) - return _internal_default_action(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_default_action( - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.default_action_); - } - _impl_.default_action_ = default_action; - if (default_action) { - _impl_._has_bits_[0] |= 0x00000400u; - } else { - _impl_._has_bits_[0] &= ~0x00000400u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.default_action) -} -inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::release_default_action() { - _impl_._has_bits_[0] &= ~0x00000400u; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* temp = _impl_.default_action_; - _impl_.default_action_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::unsafe_arena_release_default_action() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.default_action) - _impl_._has_bits_[0] &= ~0x00000400u; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* temp = _impl_.default_action_; - _impl_.default_action_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::_internal_mutable_default_action() { - _impl_._has_bits_[0] |= 0x00000400u; - if (_impl_.default_action_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagDefaultAction>(GetArenaForAllocation()); - _impl_.default_action_ = p; - } - return _impl_.default_action_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::mutable_default_action() { - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* _msg = _internal_mutable_default_action(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.default_action) - return _msg; -} -inline void AppearanceFlags::set_allocated_default_action(::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.default_action_; - } - if (default_action) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(default_action); - if (message_arena != submessage_arena) { - default_action = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, default_action, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000400u; - } else { - _impl_._has_bits_[0] &= ~0x00000400u; - } - _impl_.default_action_ = default_action; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.default_action) -} + public: + // optional bool unmove = 14; + bool has_unmove() const; -// optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; -inline bool AppearanceFlags::_internal_has_market() const { - bool value = (_impl_._has_bits_[0] & 0x00000800u) != 0; - PROTOBUF_ASSUME(!value || _impl_.market_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_market() const { - return _internal_has_market(); -} -inline void AppearanceFlags::clear_market() { - if (_impl_.market_ != nullptr) _impl_.market_->Clear(); - _impl_._has_bits_[0] &= ~0x00000800u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagMarket& AppearanceFlags::_internal_market() const { - const ::Canary::protobuf::appearances::AppearanceFlagMarket* p = _impl_.market_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagMarket_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagMarket& AppearanceFlags::market() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.market) - return _internal_market(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_market( - ::Canary::protobuf::appearances::AppearanceFlagMarket* market) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.market_); - } - _impl_.market_ = market; - if (market) { - _impl_._has_bits_[0] |= 0x00000800u; - } else { - _impl_._has_bits_[0] &= ~0x00000800u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.market) -} -inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::release_market() { - _impl_._has_bits_[0] &= ~0x00000800u; - ::Canary::protobuf::appearances::AppearanceFlagMarket* temp = _impl_.market_; - _impl_.market_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::unsafe_arena_release_market() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.market) - _impl_._has_bits_[0] &= ~0x00000800u; - ::Canary::protobuf::appearances::AppearanceFlagMarket* temp = _impl_.market_; - _impl_.market_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::_internal_mutable_market() { - _impl_._has_bits_[0] |= 0x00000800u; - if (_impl_.market_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagMarket>(GetArenaForAllocation()); - _impl_.market_ = p; - } - return _impl_.market_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::mutable_market() { - ::Canary::protobuf::appearances::AppearanceFlagMarket* _msg = _internal_mutable_market(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.market) - return _msg; -} -inline void AppearanceFlags::set_allocated_market(::Canary::protobuf::appearances::AppearanceFlagMarket* market) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.market_; - } - if (market) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(market); - if (message_arena != submessage_arena) { - market = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, market, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00000800u; - } else { - _impl_._has_bits_[0] &= ~0x00000800u; - } - _impl_.market_ = market; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.market) -} + private: + bool _internal_has_unmove() const; -// optional bool wrap = 37; -inline bool AppearanceFlags::_internal_has_wrap() const { - bool value = (_impl_._has_bits_[1] & 0x00000080u) != 0; - return value; -} -inline bool AppearanceFlags::has_wrap() const { - return _internal_has_wrap(); -} -inline void AppearanceFlags::clear_wrap() { - _impl_.wrap_ = false; - _impl_._has_bits_[1] &= ~0x00000080u; -} -inline bool AppearanceFlags::_internal_wrap() const { - return _impl_.wrap_; -} -inline bool AppearanceFlags::wrap() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wrap) - return _internal_wrap(); -} -inline void AppearanceFlags::_internal_set_wrap(bool value) { - _impl_._has_bits_[1] |= 0x00000080u; - _impl_.wrap_ = value; -} -inline void AppearanceFlags::set_wrap(bool value) { - _internal_set_wrap(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wrap) -} + public: + void clear_unmove(); + bool unmove() const; + void set_unmove(bool value); -// optional bool unwrap = 38; -inline bool AppearanceFlags::_internal_has_unwrap() const { - bool value = (_impl_._has_bits_[1] & 0x00000100u) != 0; - return value; -} -inline bool AppearanceFlags::has_unwrap() const { - return _internal_has_unwrap(); -} -inline void AppearanceFlags::clear_unwrap() { - _impl_.unwrap_ = false; - _impl_._has_bits_[1] &= ~0x00000100u; -} -inline bool AppearanceFlags::_internal_unwrap() const { - return _impl_.unwrap_; -} -inline bool AppearanceFlags::unwrap() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unwrap) - return _internal_unwrap(); -} -inline void AppearanceFlags::_internal_set_unwrap(bool value) { - _impl_._has_bits_[1] |= 0x00000100u; - _impl_.unwrap_ = value; -} -inline void AppearanceFlags::set_unwrap(bool value) { - _internal_set_unwrap(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unwrap) -} + private: + bool _internal_unmove() const; + void _internal_set_unmove(bool value); -// optional bool topeffect = 39; -inline bool AppearanceFlags::_internal_has_topeffect() const { - bool value = (_impl_._has_bits_[1] & 0x00000200u) != 0; - return value; -} -inline bool AppearanceFlags::has_topeffect() const { - return _internal_has_topeffect(); -} -inline void AppearanceFlags::clear_topeffect() { - _impl_.topeffect_ = false; - _impl_._has_bits_[1] &= ~0x00000200u; -} -inline bool AppearanceFlags::_internal_topeffect() const { - return _impl_.topeffect_; -} -inline bool AppearanceFlags::topeffect() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.topeffect) - return _internal_topeffect(); -} -inline void AppearanceFlags::_internal_set_topeffect(bool value) { - _impl_._has_bits_[1] |= 0x00000200u; - _impl_.topeffect_ = value; -} -inline void AppearanceFlags::set_topeffect(bool value) { - _internal_set_topeffect(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.topeffect) -} + public: + // optional bool unsight = 15; + bool has_unsight() const; -// repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; -inline int AppearanceFlags::_internal_npcsaledata_size() const { - return _impl_.npcsaledata_.size(); -} -inline int AppearanceFlags::npcsaledata_size() const { - return _internal_npcsaledata_size(); -} -inline void AppearanceFlags::clear_npcsaledata() { - _impl_.npcsaledata_.Clear(); -} -inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::mutable_npcsaledata(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _impl_.npcsaledata_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::AppearanceFlagNPC >* -AppearanceFlags::mutable_npcsaledata() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return &_impl_.npcsaledata_; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagNPC& AppearanceFlags::_internal_npcsaledata(int index) const { - return _impl_.npcsaledata_.Get(index); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagNPC& AppearanceFlags::npcsaledata(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _internal_npcsaledata(index); -} -inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::_internal_add_npcsaledata() { - return _impl_.npcsaledata_.Add(); -} -inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::add_npcsaledata() { - ::Canary::protobuf::appearances::AppearanceFlagNPC* _add = _internal_add_npcsaledata(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::appearances::AppearanceFlagNPC >& -AppearanceFlags::npcsaledata() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _impl_.npcsaledata_; -} + private: + bool _internal_has_unsight() const; -// optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; -inline bool AppearanceFlags::_internal_has_changedtoexpire() const { - bool value = (_impl_._has_bits_[0] & 0x00001000u) != 0; - PROTOBUF_ASSUME(!value || _impl_.changedtoexpire_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_changedtoexpire() const { - return _internal_has_changedtoexpire(); -} -inline void AppearanceFlags::clear_changedtoexpire() { - if (_impl_.changedtoexpire_ != nullptr) _impl_.changedtoexpire_->Clear(); - _impl_._has_bits_[0] &= ~0x00001000u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire& AppearanceFlags::_internal_changedtoexpire() const { - const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* p = _impl_.changedtoexpire_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagChangedToExpire_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire& AppearanceFlags::changedtoexpire() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - return _internal_changedtoexpire(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_changedtoexpire( - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.changedtoexpire_); - } - _impl_.changedtoexpire_ = changedtoexpire; - if (changedtoexpire) { - _impl_._has_bits_[0] |= 0x00001000u; - } else { - _impl_._has_bits_[0] &= ~0x00001000u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) -} -inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::release_changedtoexpire() { - _impl_._has_bits_[0] &= ~0x00001000u; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* temp = _impl_.changedtoexpire_; - _impl_.changedtoexpire_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::unsafe_arena_release_changedtoexpire() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - _impl_._has_bits_[0] &= ~0x00001000u; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* temp = _impl_.changedtoexpire_; - _impl_.changedtoexpire_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::_internal_mutable_changedtoexpire() { - _impl_._has_bits_[0] |= 0x00001000u; - if (_impl_.changedtoexpire_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagChangedToExpire>(GetArenaForAllocation()); - _impl_.changedtoexpire_ = p; - } - return _impl_.changedtoexpire_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::mutable_changedtoexpire() { - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* _msg = _internal_mutable_changedtoexpire(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - return _msg; -} -inline void AppearanceFlags::set_allocated_changedtoexpire(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.changedtoexpire_; - } - if (changedtoexpire) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(changedtoexpire); - if (message_arena != submessage_arena) { - changedtoexpire = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, changedtoexpire, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00001000u; - } else { - _impl_._has_bits_[0] &= ~0x00001000u; - } - _impl_.changedtoexpire_ = changedtoexpire; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) -} + public: + void clear_unsight(); + bool unsight() const; + void set_unsight(bool value); -// optional bool corpse = 42; -inline bool AppearanceFlags::_internal_has_corpse() const { - bool value = (_impl_._has_bits_[1] & 0x00000400u) != 0; - return value; -} -inline bool AppearanceFlags::has_corpse() const { - return _internal_has_corpse(); -} -inline void AppearanceFlags::clear_corpse() { - _impl_.corpse_ = false; - _impl_._has_bits_[1] &= ~0x00000400u; -} -inline bool AppearanceFlags::_internal_corpse() const { - return _impl_.corpse_; -} -inline bool AppearanceFlags::corpse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.corpse) - return _internal_corpse(); -} -inline void AppearanceFlags::_internal_set_corpse(bool value) { - _impl_._has_bits_[1] |= 0x00000400u; - _impl_.corpse_ = value; -} -inline void AppearanceFlags::set_corpse(bool value) { - _internal_set_corpse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.corpse) -} + private: + bool _internal_unsight() const; + void _internal_set_unsight(bool value); -// optional bool player_corpse = 43; -inline bool AppearanceFlags::_internal_has_player_corpse() const { - bool value = (_impl_._has_bits_[1] & 0x00000800u) != 0; - return value; -} -inline bool AppearanceFlags::has_player_corpse() const { - return _internal_has_player_corpse(); -} -inline void AppearanceFlags::clear_player_corpse() { - _impl_.player_corpse_ = false; - _impl_._has_bits_[1] &= ~0x00000800u; -} -inline bool AppearanceFlags::_internal_player_corpse() const { - return _impl_.player_corpse_; -} -inline bool AppearanceFlags::player_corpse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.player_corpse) - return _internal_player_corpse(); -} -inline void AppearanceFlags::_internal_set_player_corpse(bool value) { - _impl_._has_bits_[1] |= 0x00000800u; - _impl_.player_corpse_ = value; -} -inline void AppearanceFlags::set_player_corpse(bool value) { - _internal_set_player_corpse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.player_corpse) -} + public: + // optional bool avoid = 16; + bool has_avoid() const; -// optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; -inline bool AppearanceFlags::_internal_has_cyclopediaitem() const { - bool value = (_impl_._has_bits_[0] & 0x00002000u) != 0; - PROTOBUF_ASSUME(!value || _impl_.cyclopediaitem_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_cyclopediaitem() const { - return _internal_has_cyclopediaitem(); -} -inline void AppearanceFlags::clear_cyclopediaitem() { - if (_impl_.cyclopediaitem_ != nullptr) _impl_.cyclopediaitem_->Clear(); - _impl_._has_bits_[0] &= ~0x00002000u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia& AppearanceFlags::_internal_cyclopediaitem() const { - const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* p = _impl_.cyclopediaitem_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagCyclopedia_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia& AppearanceFlags::cyclopediaitem() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - return _internal_cyclopediaitem(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_cyclopediaitem( - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cyclopediaitem_); - } - _impl_.cyclopediaitem_ = cyclopediaitem; - if (cyclopediaitem) { - _impl_._has_bits_[0] |= 0x00002000u; - } else { - _impl_._has_bits_[0] &= ~0x00002000u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) -} -inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::release_cyclopediaitem() { - _impl_._has_bits_[0] &= ~0x00002000u; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* temp = _impl_.cyclopediaitem_; - _impl_.cyclopediaitem_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::unsafe_arena_release_cyclopediaitem() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - _impl_._has_bits_[0] &= ~0x00002000u; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* temp = _impl_.cyclopediaitem_; - _impl_.cyclopediaitem_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::_internal_mutable_cyclopediaitem() { - _impl_._has_bits_[0] |= 0x00002000u; - if (_impl_.cyclopediaitem_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagCyclopedia>(GetArenaForAllocation()); - _impl_.cyclopediaitem_ = p; - } - return _impl_.cyclopediaitem_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::mutable_cyclopediaitem() { - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* _msg = _internal_mutable_cyclopediaitem(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - return _msg; -} -inline void AppearanceFlags::set_allocated_cyclopediaitem(::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.cyclopediaitem_; - } - if (cyclopediaitem) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cyclopediaitem); - if (message_arena != submessage_arena) { - cyclopediaitem = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, cyclopediaitem, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00002000u; - } else { - _impl_._has_bits_[0] &= ~0x00002000u; - } - _impl_.cyclopediaitem_ = cyclopediaitem; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) -} + private: + bool _internal_has_avoid() const; -// optional bool ammo = 45; -inline bool AppearanceFlags::_internal_has_ammo() const { - bool value = (_impl_._has_bits_[1] & 0x00001000u) != 0; - return value; -} -inline bool AppearanceFlags::has_ammo() const { - return _internal_has_ammo(); -} -inline void AppearanceFlags::clear_ammo() { - _impl_.ammo_ = false; - _impl_._has_bits_[1] &= ~0x00001000u; -} -inline bool AppearanceFlags::_internal_ammo() const { - return _impl_.ammo_; -} -inline bool AppearanceFlags::ammo() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.ammo) - return _internal_ammo(); -} -inline void AppearanceFlags::_internal_set_ammo(bool value) { - _impl_._has_bits_[1] |= 0x00001000u; - _impl_.ammo_ = value; -} -inline void AppearanceFlags::set_ammo(bool value) { - _internal_set_ammo(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.ammo) -} + public: + void clear_avoid(); + bool avoid() const; + void set_avoid(bool value); -// optional bool show_off_socket = 46; -inline bool AppearanceFlags::_internal_has_show_off_socket() const { - bool value = (_impl_._has_bits_[1] & 0x00002000u) != 0; - return value; -} -inline bool AppearanceFlags::has_show_off_socket() const { - return _internal_has_show_off_socket(); -} -inline void AppearanceFlags::clear_show_off_socket() { - _impl_.show_off_socket_ = false; - _impl_._has_bits_[1] &= ~0x00002000u; -} -inline bool AppearanceFlags::_internal_show_off_socket() const { - return _impl_.show_off_socket_; -} -inline bool AppearanceFlags::show_off_socket() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.show_off_socket) - return _internal_show_off_socket(); -} -inline void AppearanceFlags::_internal_set_show_off_socket(bool value) { - _impl_._has_bits_[1] |= 0x00002000u; - _impl_.show_off_socket_ = value; -} -inline void AppearanceFlags::set_show_off_socket(bool value) { - _internal_set_show_off_socket(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.show_off_socket) -} + private: + bool _internal_avoid() const; + void _internal_set_avoid(bool value); -// optional bool reportable = 47; -inline bool AppearanceFlags::_internal_has_reportable() const { - bool value = (_impl_._has_bits_[1] & 0x00004000u) != 0; - return value; -} -inline bool AppearanceFlags::has_reportable() const { - return _internal_has_reportable(); -} -inline void AppearanceFlags::clear_reportable() { - _impl_.reportable_ = false; - _impl_._has_bits_[1] &= ~0x00004000u; -} -inline bool AppearanceFlags::_internal_reportable() const { - return _impl_.reportable_; -} -inline bool AppearanceFlags::reportable() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reportable) - return _internal_reportable(); -} -inline void AppearanceFlags::_internal_set_reportable(bool value) { - _impl_._has_bits_[1] |= 0x00004000u; - _impl_.reportable_ = value; -} -inline void AppearanceFlags::set_reportable(bool value) { - _internal_set_reportable(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reportable) -} + public: + // optional bool no_movement_animation = 17; + bool has_no_movement_animation() const; -// optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; -inline bool AppearanceFlags::_internal_has_upgradeclassification() const { - bool value = (_impl_._has_bits_[0] & 0x00004000u) != 0; - PROTOBUF_ASSUME(!value || _impl_.upgradeclassification_ != nullptr); - return value; -} -inline bool AppearanceFlags::has_upgradeclassification() const { - return _internal_has_upgradeclassification(); -} -inline void AppearanceFlags::clear_upgradeclassification() { - if (_impl_.upgradeclassification_ != nullptr) _impl_.upgradeclassification_->Clear(); - _impl_._has_bits_[0] &= ~0x00004000u; -} -inline const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification& AppearanceFlags::_internal_upgradeclassification() const { - const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* p = _impl_.upgradeclassification_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::appearances::_AppearanceFlagUpgradeClassification_default_instance_); -} -inline const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification& AppearanceFlags::upgradeclassification() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - return _internal_upgradeclassification(); -} -inline void AppearanceFlags::unsafe_arena_set_allocated_upgradeclassification( - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.upgradeclassification_); - } - _impl_.upgradeclassification_ = upgradeclassification; - if (upgradeclassification) { - _impl_._has_bits_[0] |= 0x00004000u; - } else { - _impl_._has_bits_[0] &= ~0x00004000u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) -} -inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::release_upgradeclassification() { - _impl_._has_bits_[0] &= ~0x00004000u; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* temp = _impl_.upgradeclassification_; - _impl_.upgradeclassification_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::unsafe_arena_release_upgradeclassification() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - _impl_._has_bits_[0] &= ~0x00004000u; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* temp = _impl_.upgradeclassification_; - _impl_.upgradeclassification_ = nullptr; - return temp; -} -inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::_internal_mutable_upgradeclassification() { - _impl_._has_bits_[0] |= 0x00004000u; - if (_impl_.upgradeclassification_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification>(GetArenaForAllocation()); - _impl_.upgradeclassification_ = p; - } - return _impl_.upgradeclassification_; -} -inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::mutable_upgradeclassification() { - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* _msg = _internal_mutable_upgradeclassification(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - return _msg; -} -inline void AppearanceFlags::set_allocated_upgradeclassification(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.upgradeclassification_; - } - if (upgradeclassification) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(upgradeclassification); - if (message_arena != submessage_arena) { - upgradeclassification = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, upgradeclassification, submessage_arena); - } - _impl_._has_bits_[0] |= 0x00004000u; - } else { - _impl_._has_bits_[0] &= ~0x00004000u; - } - _impl_.upgradeclassification_ = upgradeclassification; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) -} + private: + bool _internal_has_no_movement_animation() const; -// optional bool reverse_addons_east = 49; -inline bool AppearanceFlags::_internal_has_reverse_addons_east() const { - bool value = (_impl_._has_bits_[1] & 0x00008000u) != 0; - return value; -} -inline bool AppearanceFlags::has_reverse_addons_east() const { - return _internal_has_reverse_addons_east(); -} -inline void AppearanceFlags::clear_reverse_addons_east() { - _impl_.reverse_addons_east_ = false; - _impl_._has_bits_[1] &= ~0x00008000u; -} -inline bool AppearanceFlags::_internal_reverse_addons_east() const { - return _impl_.reverse_addons_east_; -} -inline bool AppearanceFlags::reverse_addons_east() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_east) - return _internal_reverse_addons_east(); -} -inline void AppearanceFlags::_internal_set_reverse_addons_east(bool value) { - _impl_._has_bits_[1] |= 0x00008000u; - _impl_.reverse_addons_east_ = value; -} -inline void AppearanceFlags::set_reverse_addons_east(bool value) { - _internal_set_reverse_addons_east(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_east) -} + public: + void clear_no_movement_animation(); + bool no_movement_animation() const; + void set_no_movement_animation(bool value); -// optional bool reverse_addons_west = 50; -inline bool AppearanceFlags::_internal_has_reverse_addons_west() const { - bool value = (_impl_._has_bits_[1] & 0x00010000u) != 0; - return value; -} -inline bool AppearanceFlags::has_reverse_addons_west() const { - return _internal_has_reverse_addons_west(); -} -inline void AppearanceFlags::clear_reverse_addons_west() { - _impl_.reverse_addons_west_ = false; - _impl_._has_bits_[1] &= ~0x00010000u; -} -inline bool AppearanceFlags::_internal_reverse_addons_west() const { - return _impl_.reverse_addons_west_; -} -inline bool AppearanceFlags::reverse_addons_west() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_west) - return _internal_reverse_addons_west(); -} -inline void AppearanceFlags::_internal_set_reverse_addons_west(bool value) { - _impl_._has_bits_[1] |= 0x00010000u; - _impl_.reverse_addons_west_ = value; -} -inline void AppearanceFlags::set_reverse_addons_west(bool value) { - _internal_set_reverse_addons_west(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_west) -} + private: + bool _internal_no_movement_animation() const; + void _internal_set_no_movement_animation(bool value); -// optional bool reverse_addons_south = 51; -inline bool AppearanceFlags::_internal_has_reverse_addons_south() const { - bool value = (_impl_._has_bits_[1] & 0x00020000u) != 0; - return value; -} -inline bool AppearanceFlags::has_reverse_addons_south() const { - return _internal_has_reverse_addons_south(); -} -inline void AppearanceFlags::clear_reverse_addons_south() { - _impl_.reverse_addons_south_ = false; - _impl_._has_bits_[1] &= ~0x00020000u; -} -inline bool AppearanceFlags::_internal_reverse_addons_south() const { - return _impl_.reverse_addons_south_; -} -inline bool AppearanceFlags::reverse_addons_south() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_south) - return _internal_reverse_addons_south(); -} -inline void AppearanceFlags::_internal_set_reverse_addons_south(bool value) { - _impl_._has_bits_[1] |= 0x00020000u; - _impl_.reverse_addons_south_ = value; -} -inline void AppearanceFlags::set_reverse_addons_south(bool value) { - _internal_set_reverse_addons_south(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_south) -} + public: + // optional bool take = 18; + bool has_take() const; -// optional bool reverse_addons_north = 52; -inline bool AppearanceFlags::_internal_has_reverse_addons_north() const { - bool value = (_impl_._has_bits_[1] & 0x00040000u) != 0; - return value; -} -inline bool AppearanceFlags::has_reverse_addons_north() const { - return _internal_has_reverse_addons_north(); -} -inline void AppearanceFlags::clear_reverse_addons_north() { - _impl_.reverse_addons_north_ = false; - _impl_._has_bits_[1] &= ~0x00040000u; -} -inline bool AppearanceFlags::_internal_reverse_addons_north() const { - return _impl_.reverse_addons_north_; -} -inline bool AppearanceFlags::reverse_addons_north() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_north) - return _internal_reverse_addons_north(); -} -inline void AppearanceFlags::_internal_set_reverse_addons_north(bool value) { - _impl_._has_bits_[1] |= 0x00040000u; - _impl_.reverse_addons_north_ = value; -} -inline void AppearanceFlags::set_reverse_addons_north(bool value) { - _internal_set_reverse_addons_north(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_north) -} + private: + bool _internal_has_take() const; -// optional bool wearout = 53; -inline bool AppearanceFlags::_internal_has_wearout() const { - bool value = (_impl_._has_bits_[1] & 0x00080000u) != 0; - return value; -} -inline bool AppearanceFlags::has_wearout() const { - return _internal_has_wearout(); -} -inline void AppearanceFlags::clear_wearout() { - _impl_.wearout_ = false; - _impl_._has_bits_[1] &= ~0x00080000u; -} -inline bool AppearanceFlags::_internal_wearout() const { - return _impl_.wearout_; -} -inline bool AppearanceFlags::wearout() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wearout) - return _internal_wearout(); -} -inline void AppearanceFlags::_internal_set_wearout(bool value) { - _impl_._has_bits_[1] |= 0x00080000u; - _impl_.wearout_ = value; -} -inline void AppearanceFlags::set_wearout(bool value) { - _internal_set_wearout(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wearout) -} + public: + void clear_take(); + bool take() const; + void set_take(bool value); -// optional bool clockexpire = 54; -inline bool AppearanceFlags::_internal_has_clockexpire() const { - bool value = (_impl_._has_bits_[1] & 0x00100000u) != 0; - return value; -} -inline bool AppearanceFlags::has_clockexpire() const { - return _internal_has_clockexpire(); -} -inline void AppearanceFlags::clear_clockexpire() { - _impl_.clockexpire_ = false; - _impl_._has_bits_[1] &= ~0x00100000u; -} -inline bool AppearanceFlags::_internal_clockexpire() const { - return _impl_.clockexpire_; -} -inline bool AppearanceFlags::clockexpire() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clockexpire) - return _internal_clockexpire(); -} -inline void AppearanceFlags::_internal_set_clockexpire(bool value) { - _impl_._has_bits_[1] |= 0x00100000u; - _impl_.clockexpire_ = value; -} -inline void AppearanceFlags::set_clockexpire(bool value) { - _internal_set_clockexpire(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.clockexpire) -} + private: + bool _internal_take() const; + void _internal_set_take(bool value); -// optional bool expire = 55; -inline bool AppearanceFlags::_internal_has_expire() const { - bool value = (_impl_._has_bits_[1] & 0x00200000u) != 0; - return value; -} -inline bool AppearanceFlags::has_expire() const { - return _internal_has_expire(); -} -inline void AppearanceFlags::clear_expire() { - _impl_.expire_ = false; - _impl_._has_bits_[1] &= ~0x00200000u; -} -inline bool AppearanceFlags::_internal_expire() const { - return _impl_.expire_; -} -inline bool AppearanceFlags::expire() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.expire) - return _internal_expire(); -} -inline void AppearanceFlags::_internal_set_expire(bool value) { - _impl_._has_bits_[1] |= 0x00200000u; - _impl_.expire_ = value; -} -inline void AppearanceFlags::set_expire(bool value) { - _internal_set_expire(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.expire) -} + public: + // optional bool liquidcontainer = 19; + bool has_liquidcontainer() const; -// optional bool expirestop = 56; -inline bool AppearanceFlags::_internal_has_expirestop() const { - bool value = (_impl_._has_bits_[1] & 0x00400000u) != 0; - return value; -} -inline bool AppearanceFlags::has_expirestop() const { - return _internal_has_expirestop(); -} -inline void AppearanceFlags::clear_expirestop() { - _impl_.expirestop_ = false; - _impl_._has_bits_[1] &= ~0x00400000u; -} -inline bool AppearanceFlags::_internal_expirestop() const { - return _impl_.expirestop_; -} -inline bool AppearanceFlags::expirestop() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.expirestop) - return _internal_expirestop(); -} -inline void AppearanceFlags::_internal_set_expirestop(bool value) { - _impl_._has_bits_[1] |= 0x00400000u; - _impl_.expirestop_ = value; -} -inline void AppearanceFlags::set_expirestop(bool value) { - _internal_set_expirestop(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.expirestop) -} + private: + bool _internal_has_liquidcontainer() const; -// optional bool wrapkit = 57; -inline bool AppearanceFlags::_internal_has_wrapkit() const { - bool value = (_impl_._has_bits_[1] & 0x00800000u) != 0; - return value; -} -inline bool AppearanceFlags::has_wrapkit() const { - return _internal_has_wrapkit(); -} -inline void AppearanceFlags::clear_wrapkit() { - _impl_.wrapkit_ = false; - _impl_._has_bits_[1] &= ~0x00800000u; -} -inline bool AppearanceFlags::_internal_wrapkit() const { - return _impl_.wrapkit_; -} -inline bool AppearanceFlags::wrapkit() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wrapkit) - return _internal_wrapkit(); -} -inline void AppearanceFlags::_internal_set_wrapkit(bool value) { - _impl_._has_bits_[1] |= 0x00800000u; - _impl_.wrapkit_ = value; -} -inline void AppearanceFlags::set_wrapkit(bool value) { - _internal_set_wrapkit(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wrapkit) -} + public: + void clear_liquidcontainer(); + bool liquidcontainer() const; + void set_liquidcontainer(bool value); -// ------------------------------------------------------------------- + private: + bool _internal_liquidcontainer() const; + void _internal_set_liquidcontainer(bool value); -// AppearanceFlagUpgradeClassification + public: + // optional bool hang = 20; + bool has_hang() const; -// optional uint32 upgrade_classification = 1; -inline bool AppearanceFlagUpgradeClassification::_internal_has_upgrade_classification() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagUpgradeClassification::has_upgrade_classification() const { - return _internal_has_upgrade_classification(); -} -inline void AppearanceFlagUpgradeClassification::clear_upgrade_classification() { - _impl_.upgrade_classification_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagUpgradeClassification::_internal_upgrade_classification() const { - return _impl_.upgrade_classification_; -} -inline uint32_t AppearanceFlagUpgradeClassification::upgrade_classification() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification.upgrade_classification) - return _internal_upgrade_classification(); -} -inline void AppearanceFlagUpgradeClassification::_internal_set_upgrade_classification(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.upgrade_classification_ = value; -} -inline void AppearanceFlagUpgradeClassification::set_upgrade_classification(uint32_t value) { - _internal_set_upgrade_classification(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification.upgrade_classification) -} + private: + bool _internal_has_hang() const; -// ------------------------------------------------------------------- + public: + void clear_hang(); + bool hang() const; + void set_hang(bool value); -// AppearanceFlagBank + private: + bool _internal_hang() const; + void _internal_set_hang(bool value); -// optional uint32 waypoints = 1; -inline bool AppearanceFlagBank::_internal_has_waypoints() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagBank::has_waypoints() const { - return _internal_has_waypoints(); -} -inline void AppearanceFlagBank::clear_waypoints() { - _impl_.waypoints_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagBank::_internal_waypoints() const { - return _impl_.waypoints_; -} -inline uint32_t AppearanceFlagBank::waypoints() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagBank.waypoints) - return _internal_waypoints(); -} -inline void AppearanceFlagBank::_internal_set_waypoints(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.waypoints_ = value; -} -inline void AppearanceFlagBank::set_waypoints(uint32_t value) { - _internal_set_waypoints(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagBank.waypoints) -} + public: + // optional bool rotate = 22; + bool has_rotate() const; -// ------------------------------------------------------------------- + private: + bool _internal_has_rotate() const; -// AppearanceFlagWrite + public: + void clear_rotate(); + bool rotate() const; + void set_rotate(bool value); -// optional uint32 max_text_length = 1; -inline bool AppearanceFlagWrite::_internal_has_max_text_length() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagWrite::has_max_text_length() const { - return _internal_has_max_text_length(); -} -inline void AppearanceFlagWrite::clear_max_text_length() { - _impl_.max_text_length_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagWrite::_internal_max_text_length() const { - return _impl_.max_text_length_; -} -inline uint32_t AppearanceFlagWrite::max_text_length() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagWrite.max_text_length) - return _internal_max_text_length(); -} -inline void AppearanceFlagWrite::_internal_set_max_text_length(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.max_text_length_ = value; -} -inline void AppearanceFlagWrite::set_max_text_length(uint32_t value) { - _internal_set_max_text_length(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagWrite.max_text_length) -} + private: + bool _internal_rotate() const; + void _internal_set_rotate(bool value); -// ------------------------------------------------------------------- + public: + // optional bool dont_hide = 24; + bool has_dont_hide() const; -// AppearanceFlagWriteOnce + private: + bool _internal_has_dont_hide() const; -// optional uint32 max_text_length_once = 1; -inline bool AppearanceFlagWriteOnce::_internal_has_max_text_length_once() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagWriteOnce::has_max_text_length_once() const { - return _internal_has_max_text_length_once(); -} -inline void AppearanceFlagWriteOnce::clear_max_text_length_once() { - _impl_.max_text_length_once_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagWriteOnce::_internal_max_text_length_once() const { - return _impl_.max_text_length_once_; -} -inline uint32_t AppearanceFlagWriteOnce::max_text_length_once() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagWriteOnce.max_text_length_once) - return _internal_max_text_length_once(); -} -inline void AppearanceFlagWriteOnce::_internal_set_max_text_length_once(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.max_text_length_once_ = value; -} -inline void AppearanceFlagWriteOnce::set_max_text_length_once(uint32_t value) { - _internal_set_max_text_length_once(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagWriteOnce.max_text_length_once) -} + public: + void clear_dont_hide(); + bool dont_hide() const; + void set_dont_hide(bool value); -// ------------------------------------------------------------------- + private: + bool _internal_dont_hide() const; + void _internal_set_dont_hide(bool value); -// AppearanceFlagLight + public: + // optional bool translucent = 25; + bool has_translucent() const; -// optional uint32 brightness = 1; -inline bool AppearanceFlagLight::_internal_has_brightness() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagLight::has_brightness() const { - return _internal_has_brightness(); -} -inline void AppearanceFlagLight::clear_brightness() { - _impl_.brightness_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagLight::_internal_brightness() const { - return _impl_.brightness_; -} -inline uint32_t AppearanceFlagLight::brightness() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLight.brightness) - return _internal_brightness(); -} -inline void AppearanceFlagLight::_internal_set_brightness(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.brightness_ = value; -} -inline void AppearanceFlagLight::set_brightness(uint32_t value) { - _internal_set_brightness(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLight.brightness) -} + private: + bool _internal_has_translucent() const; -// optional uint32 color = 2; -inline bool AppearanceFlagLight::_internal_has_color() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool AppearanceFlagLight::has_color() const { - return _internal_has_color(); -} -inline void AppearanceFlagLight::clear_color() { - _impl_.color_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t AppearanceFlagLight::_internal_color() const { - return _impl_.color_; -} -inline uint32_t AppearanceFlagLight::color() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLight.color) - return _internal_color(); -} -inline void AppearanceFlagLight::_internal_set_color(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.color_ = value; -} -inline void AppearanceFlagLight::set_color(uint32_t value) { - _internal_set_color(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLight.color) -} + public: + void clear_translucent(); + bool translucent() const; + void set_translucent(bool value); -// ------------------------------------------------------------------- + private: + bool _internal_translucent() const; + void _internal_set_translucent(bool value); -// AppearanceFlagHeight + public: + // optional bool lying_object = 28; + bool has_lying_object() const; -// optional uint32 elevation = 1; -inline bool AppearanceFlagHeight::_internal_has_elevation() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagHeight::has_elevation() const { - return _internal_has_elevation(); -} -inline void AppearanceFlagHeight::clear_elevation() { - _impl_.elevation_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagHeight::_internal_elevation() const { - return _impl_.elevation_; -} -inline uint32_t AppearanceFlagHeight::elevation() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagHeight.elevation) - return _internal_elevation(); -} -inline void AppearanceFlagHeight::_internal_set_elevation(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.elevation_ = value; -} -inline void AppearanceFlagHeight::set_elevation(uint32_t value) { - _internal_set_elevation(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagHeight.elevation) -} + private: + bool _internal_has_lying_object() const; -// ------------------------------------------------------------------- + public: + void clear_lying_object(); + bool lying_object() const; + void set_lying_object(bool value); -// AppearanceFlagShift + private: + bool _internal_lying_object() const; + void _internal_set_lying_object(bool value); -// optional uint32 x = 1; -inline bool AppearanceFlagShift::_internal_has_x() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagShift::has_x() const { - return _internal_has_x(); -} -inline void AppearanceFlagShift::clear_x() { - _impl_.x_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagShift::_internal_x() const { - return _impl_.x_; -} -inline uint32_t AppearanceFlagShift::x() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagShift.x) - return _internal_x(); -} -inline void AppearanceFlagShift::_internal_set_x(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.x_ = value; -} -inline void AppearanceFlagShift::set_x(uint32_t value) { - _internal_set_x(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagShift.x) -} + public: + // optional bool animate_always = 29; + bool has_animate_always() const; + + private: + bool _internal_has_animate_always() const; + + public: + void clear_animate_always(); + bool animate_always() const; + void set_animate_always(bool value); + + private: + bool _internal_animate_always() const; + void _internal_set_animate_always(bool value); + + public: + // optional bool fullbank = 32; + bool has_fullbank() const; + + private: + bool _internal_has_fullbank() const; + + public: + void clear_fullbank(); + bool fullbank() const; + void set_fullbank(bool value); + + private: + bool _internal_fullbank() const; + void _internal_set_fullbank(bool value); + + public: + // optional bool ignore_look = 33; + bool has_ignore_look() const; + + private: + bool _internal_has_ignore_look() const; + + public: + void clear_ignore_look(); + bool ignore_look() const; + void set_ignore_look(bool value); + + private: + bool _internal_ignore_look() const; + void _internal_set_ignore_look(bool value); -// optional uint32 y = 2; -inline bool AppearanceFlagShift::_internal_has_y() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool AppearanceFlagShift::has_y() const { - return _internal_has_y(); -} -inline void AppearanceFlagShift::clear_y() { - _impl_.y_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t AppearanceFlagShift::_internal_y() const { - return _impl_.y_; -} -inline uint32_t AppearanceFlagShift::y() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagShift.y) - return _internal_y(); -} -inline void AppearanceFlagShift::_internal_set_y(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.y_ = value; -} -inline void AppearanceFlagShift::set_y(uint32_t value) { - _internal_set_y(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagShift.y) -} + public: + // optional bool wrap = 37; + bool has_wrap() const; -// ------------------------------------------------------------------- + private: + bool _internal_has_wrap() const; -// AppearanceFlagClothes + public: + void clear_wrap(); + bool wrap() const; + void set_wrap(bool value); -// optional uint32 slot = 1; -inline bool AppearanceFlagClothes::_internal_has_slot() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagClothes::has_slot() const { - return _internal_has_slot(); -} -inline void AppearanceFlagClothes::clear_slot() { - _impl_.slot_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagClothes::_internal_slot() const { - return _impl_.slot_; -} -inline uint32_t AppearanceFlagClothes::slot() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagClothes.slot) - return _internal_slot(); -} -inline void AppearanceFlagClothes::_internal_set_slot(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.slot_ = value; -} -inline void AppearanceFlagClothes::set_slot(uint32_t value) { - _internal_set_slot(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagClothes.slot) -} + private: + bool _internal_wrap() const; + void _internal_set_wrap(bool value); -// ------------------------------------------------------------------- + public: + // optional bool unwrap = 38; + bool has_unwrap() const; -// AppearanceFlagDefaultAction + private: + bool _internal_has_unwrap() const; -// optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; -inline bool AppearanceFlagDefaultAction::_internal_has_action() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagDefaultAction::has_action() const { - return _internal_has_action(); -} -inline void AppearanceFlagDefaultAction::clear_action() { - _impl_.action_ = 0; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline ::Canary::protobuf::appearances::PLAYER_ACTION AppearanceFlagDefaultAction::_internal_action() const { - return static_cast< ::Canary::protobuf::appearances::PLAYER_ACTION >(_impl_.action_); -} -inline ::Canary::protobuf::appearances::PLAYER_ACTION AppearanceFlagDefaultAction::action() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagDefaultAction.action) - return _internal_action(); -} -inline void AppearanceFlagDefaultAction::_internal_set_action(::Canary::protobuf::appearances::PLAYER_ACTION value) { - assert(::Canary::protobuf::appearances::PLAYER_ACTION_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.action_ = value; -} -inline void AppearanceFlagDefaultAction::set_action(::Canary::protobuf::appearances::PLAYER_ACTION value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagDefaultAction.action) -} + public: + void clear_unwrap(); + bool unwrap() const; + void set_unwrap(bool value); -// ------------------------------------------------------------------- + private: + bool _internal_unwrap() const; + void _internal_set_unwrap(bool value); -// AppearanceFlagMarket + public: + // optional bool topeffect = 39; + bool has_topeffect() const; -// optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; -inline bool AppearanceFlagMarket::_internal_has_category() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool AppearanceFlagMarket::has_category() const { - return _internal_has_category(); -} -inline void AppearanceFlagMarket::clear_category() { - _impl_.category_ = 1; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline ::Canary::protobuf::appearances::ITEM_CATEGORY AppearanceFlagMarket::_internal_category() const { - return static_cast< ::Canary::protobuf::appearances::ITEM_CATEGORY >(_impl_.category_); -} -inline ::Canary::protobuf::appearances::ITEM_CATEGORY AppearanceFlagMarket::category() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.category) - return _internal_category(); -} -inline void AppearanceFlagMarket::_internal_set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value) { - assert(::Canary::protobuf::appearances::ITEM_CATEGORY_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.category_ = value; -} -inline void AppearanceFlagMarket::set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value) { - _internal_set_category(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.category) -} + private: + bool _internal_has_topeffect() const; -// optional uint32 trade_as_object_id = 2; -inline bool AppearanceFlagMarket::_internal_has_trade_as_object_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagMarket::has_trade_as_object_id() const { - return _internal_has_trade_as_object_id(); -} -inline void AppearanceFlagMarket::clear_trade_as_object_id() { - _impl_.trade_as_object_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagMarket::_internal_trade_as_object_id() const { - return _impl_.trade_as_object_id_; -} -inline uint32_t AppearanceFlagMarket::trade_as_object_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.trade_as_object_id) - return _internal_trade_as_object_id(); -} -inline void AppearanceFlagMarket::_internal_set_trade_as_object_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.trade_as_object_id_ = value; -} -inline void AppearanceFlagMarket::set_trade_as_object_id(uint32_t value) { - _internal_set_trade_as_object_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.trade_as_object_id) -} + public: + void clear_topeffect(); + bool topeffect() const; + void set_topeffect(bool value); -// optional uint32 show_as_object_id = 3; -inline bool AppearanceFlagMarket::_internal_has_show_as_object_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool AppearanceFlagMarket::has_show_as_object_id() const { - return _internal_has_show_as_object_id(); -} -inline void AppearanceFlagMarket::clear_show_as_object_id() { - _impl_.show_as_object_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t AppearanceFlagMarket::_internal_show_as_object_id() const { - return _impl_.show_as_object_id_; -} -inline uint32_t AppearanceFlagMarket::show_as_object_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.show_as_object_id) - return _internal_show_as_object_id(); -} -inline void AppearanceFlagMarket::_internal_set_show_as_object_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.show_as_object_id_ = value; -} -inline void AppearanceFlagMarket::set_show_as_object_id(uint32_t value) { - _internal_set_show_as_object_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.show_as_object_id) -} + private: + bool _internal_topeffect() const; + void _internal_set_topeffect(bool value); -// repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; -inline int AppearanceFlagMarket::_internal_restrict_to_profession_size() const { - return _impl_.restrict_to_profession_.size(); -} -inline int AppearanceFlagMarket::restrict_to_profession_size() const { - return _internal_restrict_to_profession_size(); -} -inline void AppearanceFlagMarket::clear_restrict_to_profession() { - _impl_.restrict_to_profession_.Clear(); -} -inline ::Canary::protobuf::appearances::PLAYER_PROFESSION AppearanceFlagMarket::_internal_restrict_to_profession(int index) const { - return static_cast< ::Canary::protobuf::appearances::PLAYER_PROFESSION >(_impl_.restrict_to_profession_.Get(index)); -} -inline ::Canary::protobuf::appearances::PLAYER_PROFESSION AppearanceFlagMarket::restrict_to_profession(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - return _internal_restrict_to_profession(index); -} -inline void AppearanceFlagMarket::set_restrict_to_profession(int index, ::Canary::protobuf::appearances::PLAYER_PROFESSION value) { - assert(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(value)); - _impl_.restrict_to_profession_.Set(index, value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) -} -inline void AppearanceFlagMarket::_internal_add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value) { - assert(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(value)); - _impl_.restrict_to_profession_.Add(value); -} -inline void AppearanceFlagMarket::add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value) { - _internal_add_restrict_to_profession(value); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField& -AppearanceFlagMarket::restrict_to_profession() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - return _impl_.restrict_to_profession_; -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* -AppearanceFlagMarket::_internal_mutable_restrict_to_profession() { - return &_impl_.restrict_to_profession_; -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* -AppearanceFlagMarket::mutable_restrict_to_profession() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - return _internal_mutable_restrict_to_profession(); -} + public: + // optional bool corpse = 42; + bool has_corpse() const; -// optional uint32 minimum_level = 6; -inline bool AppearanceFlagMarket::_internal_has_minimum_level() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool AppearanceFlagMarket::has_minimum_level() const { - return _internal_has_minimum_level(); -} -inline void AppearanceFlagMarket::clear_minimum_level() { - _impl_.minimum_level_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline uint32_t AppearanceFlagMarket::_internal_minimum_level() const { - return _impl_.minimum_level_; -} -inline uint32_t AppearanceFlagMarket::minimum_level() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.minimum_level) - return _internal_minimum_level(); -} -inline void AppearanceFlagMarket::_internal_set_minimum_level(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.minimum_level_ = value; -} -inline void AppearanceFlagMarket::set_minimum_level(uint32_t value) { - _internal_set_minimum_level(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.minimum_level) -} + private: + bool _internal_has_corpse() const; -// ------------------------------------------------------------------- + public: + void clear_corpse(); + bool corpse() const; + void set_corpse(bool value); -// AppearanceFlagNPC + private: + bool _internal_corpse() const; + void _internal_set_corpse(bool value); -// optional bytes name = 1; -inline bool AppearanceFlagNPC::_internal_has_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagNPC::has_name() const { - return _internal_has_name(); -} -inline void AppearanceFlagNPC::clear_name() { - _impl_.name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const std::string& AppearanceFlagNPC::name() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AppearanceFlagNPC::set_name(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.name) -} -inline std::string* AppearanceFlagNPC::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.name) - return _s; -} -inline const std::string& AppearanceFlagNPC::_internal_name() const { - return _impl_.name_.Get(); -} -inline void AppearanceFlagNPC::_internal_set_name(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.Set(value, GetArenaForAllocation()); -} -inline std::string* AppearanceFlagNPC::_internal_mutable_name() { - _impl_._has_bits_[0] |= 0x00000001u; - return _impl_.name_.Mutable(GetArenaForAllocation()); -} -inline std::string* AppearanceFlagNPC::release_name() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.name) - if (!_internal_has_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000001u; - auto* p = _impl_.name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void AppearanceFlagNPC::set_allocated_name(std::string* name) { - if (name != nullptr) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.name) -} + public: + // optional bool player_corpse = 43; + bool has_player_corpse() const; -// optional bytes location = 2; -inline bool AppearanceFlagNPC::_internal_has_location() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool AppearanceFlagNPC::has_location() const { - return _internal_has_location(); -} -inline void AppearanceFlagNPC::clear_location() { - _impl_.location_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline const std::string& AppearanceFlagNPC::location() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.location) - return _internal_location(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AppearanceFlagNPC::set_location(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.location_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.location) -} -inline std::string* AppearanceFlagNPC::mutable_location() { - std::string* _s = _internal_mutable_location(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.location) - return _s; -} -inline const std::string& AppearanceFlagNPC::_internal_location() const { - return _impl_.location_.Get(); -} -inline void AppearanceFlagNPC::_internal_set_location(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.location_.Set(value, GetArenaForAllocation()); -} -inline std::string* AppearanceFlagNPC::_internal_mutable_location() { - _impl_._has_bits_[0] |= 0x00000002u; - return _impl_.location_.Mutable(GetArenaForAllocation()); -} -inline std::string* AppearanceFlagNPC::release_location() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.location) - if (!_internal_has_location()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000002u; - auto* p = _impl_.location_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.location_.IsDefault()) { - _impl_.location_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void AppearanceFlagNPC::set_allocated_location(std::string* location) { - if (location != nullptr) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.location_.SetAllocated(location, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.location_.IsDefault()) { - _impl_.location_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.location) -} + private: + bool _internal_has_player_corpse() const; -// optional uint32 sale_price = 3; -inline bool AppearanceFlagNPC::_internal_has_sale_price() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool AppearanceFlagNPC::has_sale_price() const { - return _internal_has_sale_price(); -} -inline void AppearanceFlagNPC::clear_sale_price() { - _impl_.sale_price_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline uint32_t AppearanceFlagNPC::_internal_sale_price() const { - return _impl_.sale_price_; -} -inline uint32_t AppearanceFlagNPC::sale_price() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.sale_price) - return _internal_sale_price(); -} -inline void AppearanceFlagNPC::_internal_set_sale_price(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.sale_price_ = value; -} -inline void AppearanceFlagNPC::set_sale_price(uint32_t value) { - _internal_set_sale_price(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.sale_price) -} + public: + void clear_player_corpse(); + bool player_corpse() const; + void set_player_corpse(bool value); -// optional uint32 buy_price = 4; -inline bool AppearanceFlagNPC::_internal_has_buy_price() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; -} -inline bool AppearanceFlagNPC::has_buy_price() const { - return _internal_has_buy_price(); -} -inline void AppearanceFlagNPC::clear_buy_price() { - _impl_.buy_price_ = 0u; - _impl_._has_bits_[0] &= ~0x00000010u; -} -inline uint32_t AppearanceFlagNPC::_internal_buy_price() const { - return _impl_.buy_price_; -} -inline uint32_t AppearanceFlagNPC::buy_price() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.buy_price) - return _internal_buy_price(); -} -inline void AppearanceFlagNPC::_internal_set_buy_price(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.buy_price_ = value; -} -inline void AppearanceFlagNPC::set_buy_price(uint32_t value) { - _internal_set_buy_price(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.buy_price) -} + private: + bool _internal_player_corpse() const; + void _internal_set_player_corpse(bool value); -// optional uint32 currency_object_type_id = 5; -inline bool AppearanceFlagNPC::_internal_has_currency_object_type_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - return value; -} -inline bool AppearanceFlagNPC::has_currency_object_type_id() const { - return _internal_has_currency_object_type_id(); -} -inline void AppearanceFlagNPC::clear_currency_object_type_id() { - _impl_.currency_object_type_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000020u; -} -inline uint32_t AppearanceFlagNPC::_internal_currency_object_type_id() const { - return _impl_.currency_object_type_id_; -} -inline uint32_t AppearanceFlagNPC::currency_object_type_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.currency_object_type_id) - return _internal_currency_object_type_id(); -} -inline void AppearanceFlagNPC::_internal_set_currency_object_type_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000020u; - _impl_.currency_object_type_id_ = value; -} -inline void AppearanceFlagNPC::set_currency_object_type_id(uint32_t value) { - _internal_set_currency_object_type_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.currency_object_type_id) -} + public: + // optional bool ammo = 45; + bool has_ammo() const; -// optional bytes currency_quest_flag_display_name = 6; -inline bool AppearanceFlagNPC::_internal_has_currency_quest_flag_display_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool AppearanceFlagNPC::has_currency_quest_flag_display_name() const { - return _internal_has_currency_quest_flag_display_name(); -} -inline void AppearanceFlagNPC::clear_currency_quest_flag_display_name() { - _impl_.currency_quest_flag_display_name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline const std::string& AppearanceFlagNPC::currency_quest_flag_display_name() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - return _internal_currency_quest_flag_display_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AppearanceFlagNPC::set_currency_quest_flag_display_name(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.currency_quest_flag_display_name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) -} -inline std::string* AppearanceFlagNPC::mutable_currency_quest_flag_display_name() { - std::string* _s = _internal_mutable_currency_quest_flag_display_name(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - return _s; -} -inline const std::string& AppearanceFlagNPC::_internal_currency_quest_flag_display_name() const { - return _impl_.currency_quest_flag_display_name_.Get(); -} -inline void AppearanceFlagNPC::_internal_set_currency_quest_flag_display_name(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.currency_quest_flag_display_name_.Set(value, GetArenaForAllocation()); -} -inline std::string* AppearanceFlagNPC::_internal_mutable_currency_quest_flag_display_name() { - _impl_._has_bits_[0] |= 0x00000004u; - return _impl_.currency_quest_flag_display_name_.Mutable(GetArenaForAllocation()); -} -inline std::string* AppearanceFlagNPC::release_currency_quest_flag_display_name() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - if (!_internal_has_currency_quest_flag_display_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000004u; - auto* p = _impl_.currency_quest_flag_display_name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.currency_quest_flag_display_name_.IsDefault()) { - _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void AppearanceFlagNPC::set_allocated_currency_quest_flag_display_name(std::string* currency_quest_flag_display_name) { - if (currency_quest_flag_display_name != nullptr) { - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - _impl_.currency_quest_flag_display_name_.SetAllocated(currency_quest_flag_display_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.currency_quest_flag_display_name_.IsDefault()) { - _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) -} + private: + bool _internal_has_ammo() const; -// ------------------------------------------------------------------- + public: + void clear_ammo(); + bool ammo() const; + void set_ammo(bool value); -// AppearanceFlagAutomap + private: + bool _internal_ammo() const; + void _internal_set_ammo(bool value); -// optional uint32 color = 1; -inline bool AppearanceFlagAutomap::_internal_has_color() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagAutomap::has_color() const { - return _internal_has_color(); -} -inline void AppearanceFlagAutomap::clear_color() { - _impl_.color_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagAutomap::_internal_color() const { - return _impl_.color_; -} -inline uint32_t AppearanceFlagAutomap::color() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagAutomap.color) - return _internal_color(); -} -inline void AppearanceFlagAutomap::_internal_set_color(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.color_ = value; -} -inline void AppearanceFlagAutomap::set_color(uint32_t value) { - _internal_set_color(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagAutomap.color) -} + public: + // optional bool show_off_socket = 46; + bool has_show_off_socket() const; -// ------------------------------------------------------------------- + private: + bool _internal_has_show_off_socket() const; -// AppearanceFlagHook + public: + void clear_show_off_socket(); + bool show_off_socket() const; + void set_show_off_socket(bool value); -// optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; -inline bool AppearanceFlagHook::_internal_has_direction() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagHook::has_direction() const { - return _internal_has_direction(); -} -inline void AppearanceFlagHook::clear_direction() { - _impl_.direction_ = 1; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline ::Canary::protobuf::appearances::HOOK_TYPE AppearanceFlagHook::_internal_direction() const { - return static_cast< ::Canary::protobuf::appearances::HOOK_TYPE >(_impl_.direction_); -} -inline ::Canary::protobuf::appearances::HOOK_TYPE AppearanceFlagHook::direction() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagHook.direction) - return _internal_direction(); -} -inline void AppearanceFlagHook::_internal_set_direction(::Canary::protobuf::appearances::HOOK_TYPE value) { - assert(::Canary::protobuf::appearances::HOOK_TYPE_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.direction_ = value; -} -inline void AppearanceFlagHook::set_direction(::Canary::protobuf::appearances::HOOK_TYPE value) { - _internal_set_direction(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagHook.direction) -} + private: + bool _internal_show_off_socket() const; + void _internal_set_show_off_socket(bool value); -// ------------------------------------------------------------------- + public: + // optional bool reportable = 47; + bool has_reportable() const; -// AppearanceFlagLenshelp + private: + bool _internal_has_reportable() const; -// optional uint32 id = 1; -inline bool AppearanceFlagLenshelp::_internal_has_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagLenshelp::has_id() const { - return _internal_has_id(); -} -inline void AppearanceFlagLenshelp::clear_id() { - _impl_.id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagLenshelp::_internal_id() const { - return _impl_.id_; -} -inline uint32_t AppearanceFlagLenshelp::id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLenshelp.id) - return _internal_id(); -} -inline void AppearanceFlagLenshelp::_internal_set_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.id_ = value; -} -inline void AppearanceFlagLenshelp::set_id(uint32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLenshelp.id) -} + public: + void clear_reportable(); + bool reportable() const; + void set_reportable(bool value); -// ------------------------------------------------------------------- + private: + bool _internal_reportable() const; + void _internal_set_reportable(bool value); -// AppearanceFlagChangedToExpire + public: + // optional bool reverse_addons_east = 49; + bool has_reverse_addons_east() const; -// optional uint32 former_object_typeid = 1; -inline bool AppearanceFlagChangedToExpire::_internal_has_former_object_typeid() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagChangedToExpire::has_former_object_typeid() const { - return _internal_has_former_object_typeid(); -} -inline void AppearanceFlagChangedToExpire::clear_former_object_typeid() { - _impl_.former_object_typeid_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagChangedToExpire::_internal_former_object_typeid() const { - return _impl_.former_object_typeid_; -} -inline uint32_t AppearanceFlagChangedToExpire::former_object_typeid() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagChangedToExpire.former_object_typeid) - return _internal_former_object_typeid(); -} -inline void AppearanceFlagChangedToExpire::_internal_set_former_object_typeid(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.former_object_typeid_ = value; -} -inline void AppearanceFlagChangedToExpire::set_former_object_typeid(uint32_t value) { - _internal_set_former_object_typeid(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagChangedToExpire.former_object_typeid) -} + private: + bool _internal_has_reverse_addons_east() const; -// ------------------------------------------------------------------- + public: + void clear_reverse_addons_east(); + bool reverse_addons_east() const; + void set_reverse_addons_east(bool value); -// AppearanceFlagCyclopedia + private: + bool _internal_reverse_addons_east() const; + void _internal_set_reverse_addons_east(bool value); -// optional uint32 cyclopedia_type = 1; -inline bool AppearanceFlagCyclopedia::_internal_has_cyclopedia_type() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool AppearanceFlagCyclopedia::has_cyclopedia_type() const { - return _internal_has_cyclopedia_type(); -} -inline void AppearanceFlagCyclopedia::clear_cyclopedia_type() { - _impl_.cyclopedia_type_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t AppearanceFlagCyclopedia::_internal_cyclopedia_type() const { - return _impl_.cyclopedia_type_; -} -inline uint32_t AppearanceFlagCyclopedia::cyclopedia_type() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagCyclopedia.cyclopedia_type) - return _internal_cyclopedia_type(); -} -inline void AppearanceFlagCyclopedia::_internal_set_cyclopedia_type(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.cyclopedia_type_ = value; -} -inline void AppearanceFlagCyclopedia::set_cyclopedia_type(uint32_t value) { - _internal_set_cyclopedia_type(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagCyclopedia.cyclopedia_type) -} + public: + // optional bool reverse_addons_west = 50; + bool has_reverse_addons_west() const; -// ------------------------------------------------------------------- + private: + bool _internal_has_reverse_addons_west() const; -// SpecialMeaningAppearanceIds + public: + void clear_reverse_addons_west(); + bool reverse_addons_west() const; + void set_reverse_addons_west(bool value); -// optional uint32 gold_coin_id = 1; -inline bool SpecialMeaningAppearanceIds::_internal_has_gold_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_gold_coin_id() const { - return _internal_has_gold_coin_id(); -} -inline void SpecialMeaningAppearanceIds::clear_gold_coin_id() { - _impl_.gold_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_gold_coin_id() const { - return _impl_.gold_coin_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::gold_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.gold_coin_id) - return _internal_gold_coin_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_gold_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.gold_coin_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_gold_coin_id(uint32_t value) { - _internal_set_gold_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.gold_coin_id) -} + private: + bool _internal_reverse_addons_west() const; + void _internal_set_reverse_addons_west(bool value); -// optional uint32 platinum_coin_id = 2; -inline bool SpecialMeaningAppearanceIds::_internal_has_platinum_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_platinum_coin_id() const { - return _internal_has_platinum_coin_id(); -} -inline void SpecialMeaningAppearanceIds::clear_platinum_coin_id() { - _impl_.platinum_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_platinum_coin_id() const { - return _impl_.platinum_coin_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::platinum_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.platinum_coin_id) - return _internal_platinum_coin_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_platinum_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.platinum_coin_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_platinum_coin_id(uint32_t value) { - _internal_set_platinum_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.platinum_coin_id) -} + public: + // optional bool reverse_addons_south = 51; + bool has_reverse_addons_south() const; -// optional uint32 crystal_coin_id = 3; -inline bool SpecialMeaningAppearanceIds::_internal_has_crystal_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_crystal_coin_id() const { - return _internal_has_crystal_coin_id(); -} -inline void SpecialMeaningAppearanceIds::clear_crystal_coin_id() { - _impl_.crystal_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_crystal_coin_id() const { - return _impl_.crystal_coin_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::crystal_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.crystal_coin_id) - return _internal_crystal_coin_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_crystal_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.crystal_coin_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_crystal_coin_id(uint32_t value) { - _internal_set_crystal_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.crystal_coin_id) -} + private: + bool _internal_has_reverse_addons_south() const; -// optional uint32 tibia_coin_id = 4; -inline bool SpecialMeaningAppearanceIds::_internal_has_tibia_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_tibia_coin_id() const { - return _internal_has_tibia_coin_id(); -} -inline void SpecialMeaningAppearanceIds::clear_tibia_coin_id() { - _impl_.tibia_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_tibia_coin_id() const { - return _impl_.tibia_coin_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::tibia_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.tibia_coin_id) - return _internal_tibia_coin_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_tibia_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.tibia_coin_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_tibia_coin_id(uint32_t value) { - _internal_set_tibia_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.tibia_coin_id) -} + public: + void clear_reverse_addons_south(); + bool reverse_addons_south() const; + void set_reverse_addons_south(bool value); -// optional uint32 stamped_letter_id = 5; -inline bool SpecialMeaningAppearanceIds::_internal_has_stamped_letter_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_stamped_letter_id() const { - return _internal_has_stamped_letter_id(); -} -inline void SpecialMeaningAppearanceIds::clear_stamped_letter_id() { - _impl_.stamped_letter_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000010u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_stamped_letter_id() const { - return _impl_.stamped_letter_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::stamped_letter_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.stamped_letter_id) - return _internal_stamped_letter_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_stamped_letter_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.stamped_letter_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_stamped_letter_id(uint32_t value) { - _internal_set_stamped_letter_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.stamped_letter_id) -} + private: + bool _internal_reverse_addons_south() const; + void _internal_set_reverse_addons_south(bool value); -// optional uint32 supply_stash_id = 6; -inline bool SpecialMeaningAppearanceIds::_internal_has_supply_stash_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_supply_stash_id() const { - return _internal_has_supply_stash_id(); -} -inline void SpecialMeaningAppearanceIds::clear_supply_stash_id() { - _impl_.supply_stash_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000020u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_supply_stash_id() const { - return _impl_.supply_stash_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::supply_stash_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.supply_stash_id) - return _internal_supply_stash_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_supply_stash_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000020u; - _impl_.supply_stash_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_supply_stash_id(uint32_t value) { - _internal_set_supply_stash_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.supply_stash_id) -} + public: + // optional bool reverse_addons_north = 52; + bool has_reverse_addons_north() const; -// optional uint32 reward_chest_id = 7; -inline bool SpecialMeaningAppearanceIds::_internal_has_reward_chest_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; - return value; -} -inline bool SpecialMeaningAppearanceIds::has_reward_chest_id() const { - return _internal_has_reward_chest_id(); -} -inline void SpecialMeaningAppearanceIds::clear_reward_chest_id() { - _impl_.reward_chest_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000040u; -} -inline uint32_t SpecialMeaningAppearanceIds::_internal_reward_chest_id() const { - return _impl_.reward_chest_id_; -} -inline uint32_t SpecialMeaningAppearanceIds::reward_chest_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.reward_chest_id) - return _internal_reward_chest_id(); -} -inline void SpecialMeaningAppearanceIds::_internal_set_reward_chest_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000040u; - _impl_.reward_chest_id_ = value; -} -inline void SpecialMeaningAppearanceIds::set_reward_chest_id(uint32_t value) { - _internal_set_reward_chest_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.reward_chest_id) -} + private: + bool _internal_has_reverse_addons_north() const; + + public: + void clear_reverse_addons_north(); + bool reverse_addons_north() const; + void set_reverse_addons_north(bool value); + + private: + bool _internal_reverse_addons_north() const; + void _internal_set_reverse_addons_north(bool value); + + public: + // optional bool wearout = 53; + bool has_wearout() const; + + private: + bool _internal_has_wearout() const; + + public: + void clear_wearout(); + bool wearout() const; + void set_wearout(bool value); + + private: + bool _internal_wearout() const; + void _internal_set_wearout(bool value); + + public: + // optional bool clockexpire = 54; + bool has_clockexpire() const; + + private: + bool _internal_has_clockexpire() const; + + public: + void clear_clockexpire(); + bool clockexpire() const; + void set_clockexpire(bool value); + + private: + bool _internal_clockexpire() const; + void _internal_set_clockexpire(bool value); + + public: + // optional bool expire = 55; + bool has_expire() const; + + private: + bool _internal_has_expire() const; + + public: + void clear_expire(); + bool expire() const; + void set_expire(bool value); + + private: + bool _internal_expire() const; + void _internal_set_expire(bool value); + + public: + // optional bool expirestop = 56; + bool has_expirestop() const; + + private: + bool _internal_has_expirestop() const; + + public: + void clear_expirestop(); + bool expirestop() const; + void set_expirestop(bool value); + + private: + bool _internal_expirestop() const; + void _internal_set_expirestop(bool value); + + public: + // optional bool wrapkit = 57; + bool has_wrapkit() const; + + private: + bool _internal_has_wrapkit() const; + + public: + void clear_wrapkit(); + bool wrapkit() const; + void set_wrapkit(bool value); + + private: + bool _internal_wrapkit() const; + void _internal_set_wrapkit(bool value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlags) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC> npcsaledata_; + ::Canary::protobuf::appearances::AppearanceFlagBank* bank_; + ::Canary::protobuf::appearances::AppearanceFlagWrite* write_; + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once_; + ::Canary::protobuf::appearances::AppearanceFlagHook* hook_; + ::Canary::protobuf::appearances::AppearanceFlagLight* light_; + ::Canary::protobuf::appearances::AppearanceFlagShift* shift_; + ::Canary::protobuf::appearances::AppearanceFlagHeight* height_; + ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap_; + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp_; + ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes_; + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action_; + ::Canary::protobuf::appearances::AppearanceFlagMarket* market_; + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire_; + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem_; + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification_; + bool clip_; + bool bottom_; + bool top_; + bool container_; + bool cumulative_; + bool usable_; + bool forceuse_; + bool multiuse_; + bool liquidpool_; + bool unpass_; + bool unmove_; + bool unsight_; + bool avoid_; + bool no_movement_animation_; + bool take_; + bool liquidcontainer_; + bool hang_; + bool rotate_; + bool dont_hide_; + bool translucent_; + bool lying_object_; + bool animate_always_; + bool fullbank_; + bool ignore_look_; + bool wrap_; + bool unwrap_; + bool topeffect_; + bool corpse_; + bool player_corpse_; + bool ammo_; + bool show_off_socket_; + bool reportable_; + bool reverse_addons_east_; + bool reverse_addons_west_; + bool reverse_addons_south_; + bool reverse_addons_north_; + bool wearout_; + bool clockexpire_; + bool expire_; + bool expirestop_; + bool wrapkit_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagUpgradeClassification final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) */ { + public: + inline AppearanceFlagUpgradeClassification() : + AppearanceFlagUpgradeClassification(nullptr) { } + ~AppearanceFlagUpgradeClassification() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagUpgradeClassification(const AppearanceFlagUpgradeClassification &from); + AppearanceFlagUpgradeClassification(AppearanceFlagUpgradeClassification &&from) noexcept + : + AppearanceFlagUpgradeClassification() { + *this = ::std::move(from); + } + + inline AppearanceFlagUpgradeClassification &operator=(const AppearanceFlagUpgradeClassification &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagUpgradeClassification &operator=(AppearanceFlagUpgradeClassification &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagUpgradeClassification &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagUpgradeClassification* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagUpgradeClassification_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 9; + + friend void swap(AppearanceFlagUpgradeClassification &a, AppearanceFlagUpgradeClassification &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagUpgradeClassification* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagUpgradeClassification* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagUpgradeClassification* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagUpgradeClassification &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagUpgradeClassification &from) { + AppearanceFlagUpgradeClassification::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagUpgradeClassification* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagUpgradeClassification"; + } + + protected: + explicit AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUpgradeClassificationFieldNumber = 1, + }; + // optional uint32 upgrade_classification = 1; + bool has_upgrade_classification() const; + + private: + bool _internal_has_upgrade_classification() const; + + public: + void clear_upgrade_classification(); + uint32_t upgrade_classification() const; + void set_upgrade_classification(uint32_t value); + + private: + uint32_t _internal_upgrade_classification() const; + void _internal_set_upgrade_classification(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t upgrade_classification_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagBank final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagBank) */ { + public: + inline AppearanceFlagBank() : + AppearanceFlagBank(nullptr) { } + ~AppearanceFlagBank() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagBank(const AppearanceFlagBank &from); + AppearanceFlagBank(AppearanceFlagBank &&from) noexcept + : + AppearanceFlagBank() { + *this = ::std::move(from); + } + + inline AppearanceFlagBank &operator=(const AppearanceFlagBank &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagBank &operator=(AppearanceFlagBank &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagBank &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagBank* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagBank_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 10; + + friend void swap(AppearanceFlagBank &a, AppearanceFlagBank &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagBank* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagBank* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagBank* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagBank &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagBank &from) { + AppearanceFlagBank::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagBank* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagBank"; + } + + protected: + explicit AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kWaypointsFieldNumber = 1, + }; + // optional uint32 waypoints = 1; + bool has_waypoints() const; + + private: + bool _internal_has_waypoints() const; + + public: + void clear_waypoints(); + uint32_t waypoints() const; + void set_waypoints(uint32_t value); + + private: + uint32_t _internal_waypoints() const; + void _internal_set_waypoints(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagBank) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t waypoints_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagWrite final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagWrite) */ { + public: + inline AppearanceFlagWrite() : + AppearanceFlagWrite(nullptr) { } + ~AppearanceFlagWrite() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagWrite(const AppearanceFlagWrite &from); + AppearanceFlagWrite(AppearanceFlagWrite &&from) noexcept + : + AppearanceFlagWrite() { + *this = ::std::move(from); + } + + inline AppearanceFlagWrite &operator=(const AppearanceFlagWrite &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagWrite &operator=(AppearanceFlagWrite &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagWrite &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagWrite* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagWrite_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 11; + + friend void swap(AppearanceFlagWrite &a, AppearanceFlagWrite &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagWrite* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagWrite* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagWrite* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagWrite &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagWrite &from) { + AppearanceFlagWrite::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagWrite* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagWrite"; + } + + protected: + explicit AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMaxTextLengthFieldNumber = 1, + }; + // optional uint32 max_text_length = 1; + bool has_max_text_length() const; + + private: + bool _internal_has_max_text_length() const; + + public: + void clear_max_text_length(); + uint32_t max_text_length() const; + void set_max_text_length(uint32_t value); + + private: + uint32_t _internal_max_text_length() const; + void _internal_set_max_text_length(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagWrite) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t max_text_length_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagWriteOnce final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagWriteOnce) */ { + public: + inline AppearanceFlagWriteOnce() : + AppearanceFlagWriteOnce(nullptr) { } + ~AppearanceFlagWriteOnce() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagWriteOnce(const AppearanceFlagWriteOnce &from); + AppearanceFlagWriteOnce(AppearanceFlagWriteOnce &&from) noexcept + : + AppearanceFlagWriteOnce() { + *this = ::std::move(from); + } + + inline AppearanceFlagWriteOnce &operator=(const AppearanceFlagWriteOnce &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagWriteOnce &operator=(AppearanceFlagWriteOnce &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagWriteOnce &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagWriteOnce* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagWriteOnce_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 12; + + friend void swap(AppearanceFlagWriteOnce &a, AppearanceFlagWriteOnce &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagWriteOnce* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagWriteOnce* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagWriteOnce* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagWriteOnce &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagWriteOnce &from) { + AppearanceFlagWriteOnce::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagWriteOnce* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagWriteOnce"; + } + + protected: + explicit AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMaxTextLengthOnceFieldNumber = 1, + }; + // optional uint32 max_text_length_once = 1; + bool has_max_text_length_once() const; + + private: + bool _internal_has_max_text_length_once() const; + + public: + void clear_max_text_length_once(); + uint32_t max_text_length_once() const; + void set_max_text_length_once(uint32_t value); + + private: + uint32_t _internal_max_text_length_once() const; + void _internal_set_max_text_length_once(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagWriteOnce) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t max_text_length_once_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagLight final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagLight) */ { + public: + inline AppearanceFlagLight() : + AppearanceFlagLight(nullptr) { } + ~AppearanceFlagLight() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagLight(const AppearanceFlagLight &from); + AppearanceFlagLight(AppearanceFlagLight &&from) noexcept + : + AppearanceFlagLight() { + *this = ::std::move(from); + } + + inline AppearanceFlagLight &operator=(const AppearanceFlagLight &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagLight &operator=(AppearanceFlagLight &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagLight &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagLight* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagLight_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 13; + + friend void swap(AppearanceFlagLight &a, AppearanceFlagLight &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagLight* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagLight* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagLight* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagLight &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagLight &from) { + AppearanceFlagLight::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagLight* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagLight"; + } + + protected: + explicit AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kBrightnessFieldNumber = 1, + kColorFieldNumber = 2, + }; + // optional uint32 brightness = 1; + bool has_brightness() const; + + private: + bool _internal_has_brightness() const; + + public: + void clear_brightness(); + uint32_t brightness() const; + void set_brightness(uint32_t value); + + private: + uint32_t _internal_brightness() const; + void _internal_set_brightness(uint32_t value); + + public: + // optional uint32 color = 2; + bool has_color() const; + + private: + bool _internal_has_color() const; + + public: + void clear_color(); + uint32_t color() const; + void set_color(uint32_t value); + + private: + uint32_t _internal_color() const; + void _internal_set_color(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagLight) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t brightness_; + uint32_t color_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagHeight final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagHeight) */ { + public: + inline AppearanceFlagHeight() : + AppearanceFlagHeight(nullptr) { } + ~AppearanceFlagHeight() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagHeight(const AppearanceFlagHeight &from); + AppearanceFlagHeight(AppearanceFlagHeight &&from) noexcept + : + AppearanceFlagHeight() { + *this = ::std::move(from); + } + + inline AppearanceFlagHeight &operator=(const AppearanceFlagHeight &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagHeight &operator=(AppearanceFlagHeight &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagHeight &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagHeight* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagHeight_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 14; + + friend void swap(AppearanceFlagHeight &a, AppearanceFlagHeight &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagHeight* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagHeight* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagHeight* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagHeight &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagHeight &from) { + AppearanceFlagHeight::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagHeight* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagHeight"; + } + + protected: + explicit AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kElevationFieldNumber = 1, + }; + // optional uint32 elevation = 1; + bool has_elevation() const; + + private: + bool _internal_has_elevation() const; + + public: + void clear_elevation(); + uint32_t elevation() const; + void set_elevation(uint32_t value); + + private: + uint32_t _internal_elevation() const; + void _internal_set_elevation(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagHeight) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t elevation_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagShift final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagShift) */ { + public: + inline AppearanceFlagShift() : + AppearanceFlagShift(nullptr) { } + ~AppearanceFlagShift() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagShift(const AppearanceFlagShift &from); + AppearanceFlagShift(AppearanceFlagShift &&from) noexcept + : + AppearanceFlagShift() { + *this = ::std::move(from); + } + + inline AppearanceFlagShift &operator=(const AppearanceFlagShift &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagShift &operator=(AppearanceFlagShift &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagShift &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagShift* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagShift_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 15; + + friend void swap(AppearanceFlagShift &a, AppearanceFlagShift &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagShift* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagShift* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagShift* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagShift &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagShift &from) { + AppearanceFlagShift::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagShift* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagShift"; + } + + protected: + explicit AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kXFieldNumber = 1, + kYFieldNumber = 2, + }; + // optional uint32 x = 1; + bool has_x() const; + + private: + bool _internal_has_x() const; + + public: + void clear_x(); + uint32_t x() const; + void set_x(uint32_t value); + + private: + uint32_t _internal_x() const; + void _internal_set_x(uint32_t value); + + public: + // optional uint32 y = 2; + bool has_y() const; + + private: + bool _internal_has_y() const; + + public: + void clear_y(); + uint32_t y() const; + void set_y(uint32_t value); + + private: + uint32_t _internal_y() const; + void _internal_set_y(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagShift) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t x_; + uint32_t y_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagClothes final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagClothes) */ { + public: + inline AppearanceFlagClothes() : + AppearanceFlagClothes(nullptr) { } + ~AppearanceFlagClothes() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagClothes(const AppearanceFlagClothes &from); + AppearanceFlagClothes(AppearanceFlagClothes &&from) noexcept + : + AppearanceFlagClothes() { + *this = ::std::move(from); + } + + inline AppearanceFlagClothes &operator=(const AppearanceFlagClothes &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagClothes &operator=(AppearanceFlagClothes &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagClothes &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagClothes* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagClothes_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 16; + + friend void swap(AppearanceFlagClothes &a, AppearanceFlagClothes &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagClothes* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagClothes* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagClothes* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagClothes &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagClothes &from) { + AppearanceFlagClothes::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagClothes* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagClothes"; + } + + protected: + explicit AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSlotFieldNumber = 1, + }; + // optional uint32 slot = 1; + bool has_slot() const; + + private: + bool _internal_has_slot() const; + + public: + void clear_slot(); + uint32_t slot() const; + void set_slot(uint32_t value); + + private: + uint32_t _internal_slot() const; + void _internal_set_slot(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagClothes) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t slot_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagDefaultAction final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagDefaultAction) */ { + public: + inline AppearanceFlagDefaultAction() : + AppearanceFlagDefaultAction(nullptr) { } + ~AppearanceFlagDefaultAction() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagDefaultAction(const AppearanceFlagDefaultAction &from); + AppearanceFlagDefaultAction(AppearanceFlagDefaultAction &&from) noexcept + : + AppearanceFlagDefaultAction() { + *this = ::std::move(from); + } + + inline AppearanceFlagDefaultAction &operator=(const AppearanceFlagDefaultAction &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagDefaultAction &operator=(AppearanceFlagDefaultAction &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagDefaultAction &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagDefaultAction* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagDefaultAction_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 17; + + friend void swap(AppearanceFlagDefaultAction &a, AppearanceFlagDefaultAction &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagDefaultAction* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagDefaultAction* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagDefaultAction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagDefaultAction &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagDefaultAction &from) { + AppearanceFlagDefaultAction::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagDefaultAction* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagDefaultAction"; + } + + protected: + explicit AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kActionFieldNumber = 1, + }; + // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; + bool has_action() const; + + private: + bool _internal_has_action() const; + + public: + void clear_action(); + ::Canary::protobuf::appearances::PLAYER_ACTION action() const; + void set_action(::Canary::protobuf::appearances::PLAYER_ACTION value); + + private: + ::Canary::protobuf::appearances::PLAYER_ACTION _internal_action() const; + void _internal_set_action(::Canary::protobuf::appearances::PLAYER_ACTION value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagDefaultAction) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + int action_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagMarket final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagMarket) */ { + public: + inline AppearanceFlagMarket() : + AppearanceFlagMarket(nullptr) { } + ~AppearanceFlagMarket() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagMarket(const AppearanceFlagMarket &from); + AppearanceFlagMarket(AppearanceFlagMarket &&from) noexcept + : + AppearanceFlagMarket() { + *this = ::std::move(from); + } + + inline AppearanceFlagMarket &operator=(const AppearanceFlagMarket &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagMarket &operator=(AppearanceFlagMarket &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagMarket &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagMarket* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagMarket_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 18; + + friend void swap(AppearanceFlagMarket &a, AppearanceFlagMarket &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagMarket* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagMarket* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagMarket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagMarket &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagMarket &from) { + AppearanceFlagMarket::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagMarket* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagMarket"; + } + + protected: + explicit AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRestrictToProfessionFieldNumber = 5, + kTradeAsObjectIdFieldNumber = 2, + kShowAsObjectIdFieldNumber = 3, + kMinimumLevelFieldNumber = 6, + kCategoryFieldNumber = 1, + }; + // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; + int restrict_to_profession_size() const; + + private: + int _internal_restrict_to_profession_size() const; + + public: + void clear_restrict_to_profession(); + + private: + ::Canary::protobuf::appearances::PLAYER_PROFESSION _internal_restrict_to_profession(int index) const; + void _internal_add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField* _internal_mutable_restrict_to_profession(); + + public: + ::Canary::protobuf::appearances::PLAYER_PROFESSION restrict_to_profession(int index) const; + void set_restrict_to_profession(int index, ::Canary::protobuf::appearances::PLAYER_PROFESSION value); + void add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField &restrict_to_profession() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField* mutable_restrict_to_profession(); + + // optional uint32 trade_as_object_id = 2; + bool has_trade_as_object_id() const; + + private: + bool _internal_has_trade_as_object_id() const; + + public: + void clear_trade_as_object_id(); + uint32_t trade_as_object_id() const; + void set_trade_as_object_id(uint32_t value); + + private: + uint32_t _internal_trade_as_object_id() const; + void _internal_set_trade_as_object_id(uint32_t value); + + public: + // optional uint32 show_as_object_id = 3; + bool has_show_as_object_id() const; + + private: + bool _internal_has_show_as_object_id() const; + + public: + void clear_show_as_object_id(); + uint32_t show_as_object_id() const; + void set_show_as_object_id(uint32_t value); + + private: + uint32_t _internal_show_as_object_id() const; + void _internal_set_show_as_object_id(uint32_t value); + + public: + // optional uint32 minimum_level = 6; + bool has_minimum_level() const; + + private: + bool _internal_has_minimum_level() const; + + public: + void clear_minimum_level(); + uint32_t minimum_level() const; + void set_minimum_level(uint32_t value); + + private: + uint32_t _internal_minimum_level() const; + void _internal_set_minimum_level(uint32_t value); + + public: + // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; + bool has_category() const; + + private: + bool _internal_has_category() const; + + public: + void clear_category(); + ::Canary::protobuf::appearances::ITEM_CATEGORY category() const; + void set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value); + + private: + ::Canary::protobuf::appearances::ITEM_CATEGORY _internal_category() const; + void _internal_set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagMarket) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField restrict_to_profession_; + uint32_t trade_as_object_id_; + uint32_t show_as_object_id_; + uint32_t minimum_level_; + int category_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagNPC final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagNPC) */ { + public: + inline AppearanceFlagNPC() : + AppearanceFlagNPC(nullptr) { } + ~AppearanceFlagNPC() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagNPC(const AppearanceFlagNPC &from); + AppearanceFlagNPC(AppearanceFlagNPC &&from) noexcept + : + AppearanceFlagNPC() { + *this = ::std::move(from); + } + + inline AppearanceFlagNPC &operator=(const AppearanceFlagNPC &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagNPC &operator=(AppearanceFlagNPC &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagNPC &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagNPC* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagNPC_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 19; + + friend void swap(AppearanceFlagNPC &a, AppearanceFlagNPC &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagNPC* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagNPC* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagNPC* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagNPC &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagNPC &from) { + AppearanceFlagNPC::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagNPC* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagNPC"; + } + + protected: + explicit AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kLocationFieldNumber = 2, + kCurrencyQuestFlagDisplayNameFieldNumber = 6, + kSalePriceFieldNumber = 3, + kBuyPriceFieldNumber = 4, + kCurrencyObjectTypeIdFieldNumber = 5, + }; + // optional bytes name = 1; + bool has_name() const; + + private: + bool _internal_has_name() const; + + public: + void clear_name(); + const std::string &name() const; + template + void set_name(ArgT0 &&arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + + private: + const std::string &_internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string &value); + std::string* _internal_mutable_name(); + + public: + // optional bytes location = 2; + bool has_location() const; + + private: + bool _internal_has_location() const; + + public: + void clear_location(); + const std::string &location() const; + template + void set_location(ArgT0 &&arg0, ArgT... args); + std::string* mutable_location(); + PROTOBUF_NODISCARD std::string* release_location(); + void set_allocated_location(std::string* location); + + private: + const std::string &_internal_location() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_location(const std::string &value); + std::string* _internal_mutable_location(); + + public: + // optional bytes currency_quest_flag_display_name = 6; + bool has_currency_quest_flag_display_name() const; + + private: + bool _internal_has_currency_quest_flag_display_name() const; + + public: + void clear_currency_quest_flag_display_name(); + const std::string ¤cy_quest_flag_display_name() const; + template + void set_currency_quest_flag_display_name(ArgT0 &&arg0, ArgT... args); + std::string* mutable_currency_quest_flag_display_name(); + PROTOBUF_NODISCARD std::string* release_currency_quest_flag_display_name(); + void set_allocated_currency_quest_flag_display_name(std::string* currency_quest_flag_display_name); + + private: + const std::string &_internal_currency_quest_flag_display_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_currency_quest_flag_display_name(const std::string &value); + std::string* _internal_mutable_currency_quest_flag_display_name(); + + public: + // optional uint32 sale_price = 3; + bool has_sale_price() const; + + private: + bool _internal_has_sale_price() const; + + public: + void clear_sale_price(); + uint32_t sale_price() const; + void set_sale_price(uint32_t value); + + private: + uint32_t _internal_sale_price() const; + void _internal_set_sale_price(uint32_t value); + + public: + // optional uint32 buy_price = 4; + bool has_buy_price() const; + + private: + bool _internal_has_buy_price() const; + + public: + void clear_buy_price(); + uint32_t buy_price() const; + void set_buy_price(uint32_t value); + + private: + uint32_t _internal_buy_price() const; + void _internal_set_buy_price(uint32_t value); + + public: + // optional uint32 currency_object_type_id = 5; + bool has_currency_object_type_id() const; + + private: + bool _internal_has_currency_object_type_id() const; + + public: + void clear_currency_object_type_id(); + uint32_t currency_object_type_id() const; + void set_currency_object_type_id(uint32_t value); + + private: + uint32_t _internal_currency_object_type_id() const; + void _internal_set_currency_object_type_id(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagNPC) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr location_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr currency_quest_flag_display_name_; + uint32_t sale_price_; + uint32_t buy_price_; + uint32_t currency_object_type_id_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagAutomap final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagAutomap) */ { + public: + inline AppearanceFlagAutomap() : + AppearanceFlagAutomap(nullptr) { } + ~AppearanceFlagAutomap() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagAutomap(const AppearanceFlagAutomap &from); + AppearanceFlagAutomap(AppearanceFlagAutomap &&from) noexcept + : + AppearanceFlagAutomap() { + *this = ::std::move(from); + } + + inline AppearanceFlagAutomap &operator=(const AppearanceFlagAutomap &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagAutomap &operator=(AppearanceFlagAutomap &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagAutomap &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagAutomap* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagAutomap_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 20; + + friend void swap(AppearanceFlagAutomap &a, AppearanceFlagAutomap &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagAutomap* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagAutomap* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagAutomap* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagAutomap &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagAutomap &from) { + AppearanceFlagAutomap::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagAutomap* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagAutomap"; + } + + protected: + explicit AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kColorFieldNumber = 1, + }; + // optional uint32 color = 1; + bool has_color() const; + + private: + bool _internal_has_color() const; + + public: + void clear_color(); + uint32_t color() const; + void set_color(uint32_t value); + + private: + uint32_t _internal_color() const; + void _internal_set_color(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagAutomap) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t color_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagHook final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagHook) */ { + public: + inline AppearanceFlagHook() : + AppearanceFlagHook(nullptr) { } + ~AppearanceFlagHook() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagHook(const AppearanceFlagHook &from); + AppearanceFlagHook(AppearanceFlagHook &&from) noexcept + : + AppearanceFlagHook() { + *this = ::std::move(from); + } + + inline AppearanceFlagHook &operator=(const AppearanceFlagHook &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagHook &operator=(AppearanceFlagHook &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagHook &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagHook* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagHook_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 21; + + friend void swap(AppearanceFlagHook &a, AppearanceFlagHook &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagHook* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagHook* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagHook* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagHook &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagHook &from) { + AppearanceFlagHook::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagHook* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagHook"; + } + + protected: + explicit AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDirectionFieldNumber = 1, + }; + // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; + bool has_direction() const; + + private: + bool _internal_has_direction() const; + + public: + void clear_direction(); + ::Canary::protobuf::appearances::HOOK_TYPE direction() const; + void set_direction(::Canary::protobuf::appearances::HOOK_TYPE value); + + private: + ::Canary::protobuf::appearances::HOOK_TYPE _internal_direction() const; + void _internal_set_direction(::Canary::protobuf::appearances::HOOK_TYPE value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagHook) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + int direction_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagLenshelp final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagLenshelp) */ { + public: + inline AppearanceFlagLenshelp() : + AppearanceFlagLenshelp(nullptr) { } + ~AppearanceFlagLenshelp() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagLenshelp(const AppearanceFlagLenshelp &from); + AppearanceFlagLenshelp(AppearanceFlagLenshelp &&from) noexcept + : + AppearanceFlagLenshelp() { + *this = ::std::move(from); + } + + inline AppearanceFlagLenshelp &operator=(const AppearanceFlagLenshelp &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagLenshelp &operator=(AppearanceFlagLenshelp &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagLenshelp &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagLenshelp* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagLenshelp_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 22; + + friend void swap(AppearanceFlagLenshelp &a, AppearanceFlagLenshelp &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagLenshelp* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagLenshelp* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagLenshelp* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagLenshelp &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagLenshelp &from) { + AppearanceFlagLenshelp::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagLenshelp* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagLenshelp"; + } + + protected: + explicit AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kIdFieldNumber = 1, + }; + // optional uint32 id = 1; + bool has_id() const; + + private: + bool _internal_has_id() const; + + public: + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagLenshelp) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t id_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagChangedToExpire final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) */ { + public: + inline AppearanceFlagChangedToExpire() : + AppearanceFlagChangedToExpire(nullptr) { } + ~AppearanceFlagChangedToExpire() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagChangedToExpire(const AppearanceFlagChangedToExpire &from); + AppearanceFlagChangedToExpire(AppearanceFlagChangedToExpire &&from) noexcept + : + AppearanceFlagChangedToExpire() { + *this = ::std::move(from); + } + + inline AppearanceFlagChangedToExpire &operator=(const AppearanceFlagChangedToExpire &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagChangedToExpire &operator=(AppearanceFlagChangedToExpire &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagChangedToExpire &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagChangedToExpire* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagChangedToExpire_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 23; + + friend void swap(AppearanceFlagChangedToExpire &a, AppearanceFlagChangedToExpire &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagChangedToExpire* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagChangedToExpire* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagChangedToExpire* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagChangedToExpire &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagChangedToExpire &from) { + AppearanceFlagChangedToExpire::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagChangedToExpire* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagChangedToExpire"; + } + + protected: + explicit AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFormerObjectTypeidFieldNumber = 1, + }; + // optional uint32 former_object_typeid = 1; + bool has_former_object_typeid() const; + + private: + bool _internal_has_former_object_typeid() const; + + public: + void clear_former_object_typeid(); + uint32_t former_object_typeid() const; + void set_former_object_typeid(uint32_t value); + + private: + uint32_t _internal_former_object_typeid() const; + void _internal_set_former_object_typeid(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t former_object_typeid_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class AppearanceFlagCyclopedia final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagCyclopedia) */ { + public: + inline AppearanceFlagCyclopedia() : + AppearanceFlagCyclopedia(nullptr) { } + ~AppearanceFlagCyclopedia() override; + explicit PROTOBUF_CONSTEXPR AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + AppearanceFlagCyclopedia(const AppearanceFlagCyclopedia &from); + AppearanceFlagCyclopedia(AppearanceFlagCyclopedia &&from) noexcept + : + AppearanceFlagCyclopedia() { + *this = ::std::move(from); + } + + inline AppearanceFlagCyclopedia &operator=(const AppearanceFlagCyclopedia &from) { + CopyFrom(from); + return *this; + } + inline AppearanceFlagCyclopedia &operator=(AppearanceFlagCyclopedia &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AppearanceFlagCyclopedia &default_instance() { + return *internal_default_instance(); + } + static inline const AppearanceFlagCyclopedia* internal_default_instance() { + return reinterpret_cast( + &_AppearanceFlagCyclopedia_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 24; + + friend void swap(AppearanceFlagCyclopedia &a, AppearanceFlagCyclopedia &b) { + a.Swap(&b); + } + inline void Swap(AppearanceFlagCyclopedia* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AppearanceFlagCyclopedia* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AppearanceFlagCyclopedia* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const AppearanceFlagCyclopedia &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const AppearanceFlagCyclopedia &from) { + AppearanceFlagCyclopedia::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AppearanceFlagCyclopedia* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.AppearanceFlagCyclopedia"; + } + + protected: + explicit AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kCyclopediaTypeFieldNumber = 1, + }; + // optional uint32 cyclopedia_type = 1; + bool has_cyclopedia_type() const; + + private: + bool _internal_has_cyclopedia_type() const; + + public: + void clear_cyclopedia_type(); + uint32_t cyclopedia_type() const; + void set_cyclopedia_type(uint32_t value); + + private: + uint32_t _internal_cyclopedia_type() const; + void _internal_set_cyclopedia_type(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagCyclopedia) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t cyclopedia_type_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // ------------------------------------------------------------------- + + class SpecialMeaningAppearanceIds final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) */ { + public: + inline SpecialMeaningAppearanceIds() : + SpecialMeaningAppearanceIds(nullptr) { } + ~SpecialMeaningAppearanceIds() override; + explicit PROTOBUF_CONSTEXPR SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SpecialMeaningAppearanceIds(const SpecialMeaningAppearanceIds &from); + SpecialMeaningAppearanceIds(SpecialMeaningAppearanceIds &&from) noexcept + : + SpecialMeaningAppearanceIds() { + *this = ::std::move(from); + } + + inline SpecialMeaningAppearanceIds &operator=(const SpecialMeaningAppearanceIds &from) { + CopyFrom(from); + return *this; + } + inline SpecialMeaningAppearanceIds &operator=(SpecialMeaningAppearanceIds &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SpecialMeaningAppearanceIds &default_instance() { + return *internal_default_instance(); + } + static inline const SpecialMeaningAppearanceIds* internal_default_instance() { + return reinterpret_cast( + &_SpecialMeaningAppearanceIds_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 25; + + friend void swap(SpecialMeaningAppearanceIds &a, SpecialMeaningAppearanceIds &b) { + a.Swap(&b); + } + inline void Swap(SpecialMeaningAppearanceIds* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SpecialMeaningAppearanceIds* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SpecialMeaningAppearanceIds* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SpecialMeaningAppearanceIds &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SpecialMeaningAppearanceIds &from) { + SpecialMeaningAppearanceIds::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SpecialMeaningAppearanceIds* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.appearances.SpecialMeaningAppearanceIds"; + } + + protected: + explicit SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kGoldCoinIdFieldNumber = 1, + kPlatinumCoinIdFieldNumber = 2, + kCrystalCoinIdFieldNumber = 3, + kTibiaCoinIdFieldNumber = 4, + kStampedLetterIdFieldNumber = 5, + kSupplyStashIdFieldNumber = 6, + kRewardChestIdFieldNumber = 7, + }; + // optional uint32 gold_coin_id = 1; + bool has_gold_coin_id() const; + + private: + bool _internal_has_gold_coin_id() const; + + public: + void clear_gold_coin_id(); + uint32_t gold_coin_id() const; + void set_gold_coin_id(uint32_t value); + + private: + uint32_t _internal_gold_coin_id() const; + void _internal_set_gold_coin_id(uint32_t value); + + public: + // optional uint32 platinum_coin_id = 2; + bool has_platinum_coin_id() const; + + private: + bool _internal_has_platinum_coin_id() const; + + public: + void clear_platinum_coin_id(); + uint32_t platinum_coin_id() const; + void set_platinum_coin_id(uint32_t value); + + private: + uint32_t _internal_platinum_coin_id() const; + void _internal_set_platinum_coin_id(uint32_t value); + + public: + // optional uint32 crystal_coin_id = 3; + bool has_crystal_coin_id() const; + + private: + bool _internal_has_crystal_coin_id() const; + + public: + void clear_crystal_coin_id(); + uint32_t crystal_coin_id() const; + void set_crystal_coin_id(uint32_t value); + + private: + uint32_t _internal_crystal_coin_id() const; + void _internal_set_crystal_coin_id(uint32_t value); + + public: + // optional uint32 tibia_coin_id = 4; + bool has_tibia_coin_id() const; + + private: + bool _internal_has_tibia_coin_id() const; + + public: + void clear_tibia_coin_id(); + uint32_t tibia_coin_id() const; + void set_tibia_coin_id(uint32_t value); + + private: + uint32_t _internal_tibia_coin_id() const; + void _internal_set_tibia_coin_id(uint32_t value); + + public: + // optional uint32 stamped_letter_id = 5; + bool has_stamped_letter_id() const; + + private: + bool _internal_has_stamped_letter_id() const; + + public: + void clear_stamped_letter_id(); + uint32_t stamped_letter_id() const; + void set_stamped_letter_id(uint32_t value); + + private: + uint32_t _internal_stamped_letter_id() const; + void _internal_set_stamped_letter_id(uint32_t value); + + public: + // optional uint32 supply_stash_id = 6; + bool has_supply_stash_id() const; + + private: + bool _internal_has_supply_stash_id() const; + + public: + void clear_supply_stash_id(); + uint32_t supply_stash_id() const; + void set_supply_stash_id(uint32_t value); + + private: + uint32_t _internal_supply_stash_id() const; + void _internal_set_supply_stash_id(uint32_t value); + + public: + // optional uint32 reward_chest_id = 7; + bool has_reward_chest_id() const; + + private: + bool _internal_has_reward_chest_id() const; + + public: + void clear_reward_chest_id(); + uint32_t reward_chest_id() const; + void set_reward_chest_id(uint32_t value); + + private: + uint32_t _internal_reward_chest_id() const; + void _internal_set_reward_chest_id(uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t gold_coin_id_; + uint32_t platinum_coin_id_; + uint32_t crystal_coin_id_; + uint32_t tibia_coin_id_; + uint32_t stamped_letter_id_; + uint32_t supply_stash_id_; + uint32_t reward_chest_id_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_appearances_2eproto; + }; + // =================================================================== + + // =================================================================== #ifdef __GNUC__ - #pragma GCC diagnostic pop -#endif // __GNUC__ -// ------------------------------------------------------------------- + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ + // Coordinate + + // optional uint32 x = 1; + inline bool Coordinate::_internal_has_x() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool Coordinate::has_x() const { + return _internal_has_x(); + } + inline void Coordinate::clear_x() { + _impl_.x_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t Coordinate::_internal_x() const { + return _impl_.x_; + } + inline uint32_t Coordinate::x() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.x) + return _internal_x(); + } + inline void Coordinate::_internal_set_x(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.x_ = value; + } + inline void Coordinate::set_x(uint32_t value) { + _internal_set_x(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.x) + } + + // optional uint32 y = 2; + inline bool Coordinate::_internal_has_y() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool Coordinate::has_y() const { + return _internal_has_y(); + } + inline void Coordinate::clear_y() { + _impl_.y_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t Coordinate::_internal_y() const { + return _impl_.y_; + } + inline uint32_t Coordinate::y() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.y) + return _internal_y(); + } + inline void Coordinate::_internal_set_y(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.y_ = value; + } + inline void Coordinate::set_y(uint32_t value) { + _internal_set_y(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.y) + } + + // optional uint32 z = 3; + inline bool Coordinate::_internal_has_z() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool Coordinate::has_z() const { + return _internal_has_z(); + } + inline void Coordinate::clear_z() { + _impl_.z_ = 0u; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline uint32_t Coordinate::_internal_z() const { + return _impl_.z_; + } + inline uint32_t Coordinate::z() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.z) + return _internal_z(); + } + inline void Coordinate::_internal_set_z(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.z_ = value; + } + inline void Coordinate::set_z(uint32_t value) { + _internal_set_z(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.z) + } + + // ------------------------------------------------------------------- + + // Appearances + + // repeated .Canary.protobuf.appearances.Appearance object = 1; + inline int Appearances::_internal_object_size() const { + return _impl_.object_.size(); + } + inline int Appearances::object_size() const { + return _internal_object_size(); + } + inline void Appearances::clear_object() { + _impl_.object_.Clear(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_object(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.object) + return _impl_.object_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + Appearances::mutable_object() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.object) + return &_impl_.object_; + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_object(int index) const { + return _impl_.object_.Get(index); + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::object(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.object) + return _internal_object(index); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_object() { + return _impl_.object_.Add(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::add_object() { + ::Canary::protobuf::appearances::Appearance* _add = _internal_add_object(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.object) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + Appearances::object() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.object) + return _impl_.object_; + } + + // repeated .Canary.protobuf.appearances.Appearance outfit = 2; + inline int Appearances::_internal_outfit_size() const { + return _impl_.outfit_.size(); + } + inline int Appearances::outfit_size() const { + return _internal_outfit_size(); + } + inline void Appearances::clear_outfit() { + _impl_.outfit_.Clear(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_outfit(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.outfit) + return _impl_.outfit_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + Appearances::mutable_outfit() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.outfit) + return &_impl_.outfit_; + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_outfit(int index) const { + return _impl_.outfit_.Get(index); + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::outfit(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.outfit) + return _internal_outfit(index); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_outfit() { + return _impl_.outfit_.Add(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::add_outfit() { + ::Canary::protobuf::appearances::Appearance* _add = _internal_add_outfit(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.outfit) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + Appearances::outfit() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.outfit) + return _impl_.outfit_; + } + + // repeated .Canary.protobuf.appearances.Appearance effect = 3; + inline int Appearances::_internal_effect_size() const { + return _impl_.effect_.size(); + } + inline int Appearances::effect_size() const { + return _internal_effect_size(); + } + inline void Appearances::clear_effect() { + _impl_.effect_.Clear(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_effect(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.effect) + return _impl_.effect_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + Appearances::mutable_effect() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.effect) + return &_impl_.effect_; + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_effect(int index) const { + return _impl_.effect_.Get(index); + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::effect(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.effect) + return _internal_effect(index); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_effect() { + return _impl_.effect_.Add(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::add_effect() { + ::Canary::protobuf::appearances::Appearance* _add = _internal_add_effect(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.effect) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + Appearances::effect() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.effect) + return _impl_.effect_; + } + + // repeated .Canary.protobuf.appearances.Appearance missile = 4; + inline int Appearances::_internal_missile_size() const { + return _impl_.missile_.size(); + } + inline int Appearances::missile_size() const { + return _internal_missile_size(); + } + inline void Appearances::clear_missile() { + _impl_.missile_.Clear(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_missile(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.missile) + return _impl_.missile_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* + Appearances::mutable_missile() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.missile) + return &_impl_.missile_; + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_missile(int index) const { + return _impl_.missile_.Get(index); + } + inline const ::Canary::protobuf::appearances::Appearance &Appearances::missile(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.missile) + return _internal_missile(index); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_missile() { + return _impl_.missile_.Add(); + } + inline ::Canary::protobuf::appearances::Appearance* Appearances::add_missile() { + ::Canary::protobuf::appearances::Appearance* _add = _internal_add_missile(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.missile) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & + Appearances::missile() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.missile) + return _impl_.missile_; + } + + // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; + inline bool Appearances::_internal_has_special_meaning_appearance_ids() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.special_meaning_appearance_ids_ != nullptr); + return value; + } + inline bool Appearances::has_special_meaning_appearance_ids() const { + return _internal_has_special_meaning_appearance_ids(); + } + inline void Appearances::clear_special_meaning_appearance_ids() { + if (_impl_.special_meaning_appearance_ids_ != nullptr) { + _impl_.special_meaning_appearance_ids_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &Appearances::_internal_special_meaning_appearance_ids() const { + const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* p = _impl_.special_meaning_appearance_ids_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_SpecialMeaningAppearanceIds_default_instance_); + } + inline const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &Appearances::special_meaning_appearance_ids() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) + return _internal_special_meaning_appearance_ids(); + } + inline void Appearances::unsafe_arena_set_allocated_special_meaning_appearance_ids( + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.special_meaning_appearance_ids_); + } + _impl_.special_meaning_appearance_ids_ = special_meaning_appearance_ids; + if (special_meaning_appearance_ids) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) + } + inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::release_special_meaning_appearance_ids() { + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* temp = _impl_.special_meaning_appearance_ids_; + _impl_.special_meaning_appearance_ids_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::unsafe_arena_release_special_meaning_appearance_ids() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* temp = _impl_.special_meaning_appearance_ids_; + _impl_.special_meaning_appearance_ids_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::_internal_mutable_special_meaning_appearance_ids() { + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.special_meaning_appearance_ids_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpecialMeaningAppearanceIds>(GetArenaForAllocation()); + _impl_.special_meaning_appearance_ids_ = p; + } + return _impl_.special_meaning_appearance_ids_; + } + inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::mutable_special_meaning_appearance_ids() { + ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* _msg = _internal_mutable_special_meaning_appearance_ids(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) + return _msg; + } + inline void Appearances::set_allocated_special_meaning_appearance_ids(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.special_meaning_appearance_ids_; + } + if (special_meaning_appearance_ids) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(special_meaning_appearance_ids); + if (message_arena != submessage_arena) { + special_meaning_appearance_ids = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, special_meaning_appearance_ids, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.special_meaning_appearance_ids_ = special_meaning_appearance_ids; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) + } + + // ------------------------------------------------------------------- + + // SpritePhase + + // optional uint32 duration_min = 1; + inline bool SpritePhase::_internal_has_duration_min() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool SpritePhase::has_duration_min() const { + return _internal_has_duration_min(); + } + inline void SpritePhase::clear_duration_min() { + _impl_.duration_min_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t SpritePhase::_internal_duration_min() const { + return _impl_.duration_min_; + } + inline uint32_t SpritePhase::duration_min() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpritePhase.duration_min) + return _internal_duration_min(); + } + inline void SpritePhase::_internal_set_duration_min(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.duration_min_ = value; + } + inline void SpritePhase::set_duration_min(uint32_t value) { + _internal_set_duration_min(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpritePhase.duration_min) + } + + // optional uint32 duration_max = 2; + inline bool SpritePhase::_internal_has_duration_max() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool SpritePhase::has_duration_max() const { + return _internal_has_duration_max(); + } + inline void SpritePhase::clear_duration_max() { + _impl_.duration_max_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t SpritePhase::_internal_duration_max() const { + return _impl_.duration_max_; + } + inline uint32_t SpritePhase::duration_max() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpritePhase.duration_max) + return _internal_duration_max(); + } + inline void SpritePhase::_internal_set_duration_max(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.duration_max_ = value; + } + inline void SpritePhase::set_duration_max(uint32_t value) { + _internal_set_duration_max(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpritePhase.duration_max) + } + + // ------------------------------------------------------------------- + + // SpriteAnimation + + // optional uint32 default_start_phase = 1; + inline bool SpriteAnimation::_internal_has_default_start_phase() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool SpriteAnimation::has_default_start_phase() const { + return _internal_has_default_start_phase(); + } + inline void SpriteAnimation::clear_default_start_phase() { + _impl_.default_start_phase_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t SpriteAnimation::_internal_default_start_phase() const { + return _impl_.default_start_phase_; + } + inline uint32_t SpriteAnimation::default_start_phase() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.default_start_phase) + return _internal_default_start_phase(); + } + inline void SpriteAnimation::_internal_set_default_start_phase(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.default_start_phase_ = value; + } + inline void SpriteAnimation::set_default_start_phase(uint32_t value) { + _internal_set_default_start_phase(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.default_start_phase) + } + + // optional bool synchronized = 2; + inline bool SpriteAnimation::_internal_has_synchronized() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool SpriteAnimation::has_synchronized() const { + return _internal_has_synchronized(); + } + inline void SpriteAnimation::clear_synchronized() { + _impl_.synchronized_ = false; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline bool SpriteAnimation::_internal_synchronized() const { + return _impl_.synchronized_; + } + inline bool SpriteAnimation::synchronized() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.synchronized) + return _internal_synchronized(); + } + inline void SpriteAnimation::_internal_set_synchronized(bool value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.synchronized_ = value; + } + inline void SpriteAnimation::set_synchronized(bool value) { + _internal_set_synchronized(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.synchronized) + } + + // optional bool random_start_phase = 3; + inline bool SpriteAnimation::_internal_has_random_start_phase() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool SpriteAnimation::has_random_start_phase() const { + return _internal_has_random_start_phase(); + } + inline void SpriteAnimation::clear_random_start_phase() { + _impl_.random_start_phase_ = false; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline bool SpriteAnimation::_internal_random_start_phase() const { + return _impl_.random_start_phase_; + } + inline bool SpriteAnimation::random_start_phase() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.random_start_phase) + return _internal_random_start_phase(); + } + inline void SpriteAnimation::_internal_set_random_start_phase(bool value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.random_start_phase_ = value; + } + inline void SpriteAnimation::set_random_start_phase(bool value) { + _internal_set_random_start_phase(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.random_start_phase) + } + + // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; + inline bool SpriteAnimation::_internal_has_loop_type() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + return value; + } + inline bool SpriteAnimation::has_loop_type() const { + return _internal_has_loop_type(); + } + inline void SpriteAnimation::clear_loop_type() { + _impl_.loop_type_ = -1; + _impl_._has_bits_[0] &= ~0x00000010u; + } + inline ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE SpriteAnimation::_internal_loop_type() const { + return static_cast<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE>(_impl_.loop_type_); + } + inline ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE SpriteAnimation::loop_type() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.loop_type) + return _internal_loop_type(); + } + inline void SpriteAnimation::_internal_set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value) { + assert(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_IsValid(value)); + _impl_._has_bits_[0] |= 0x00000010u; + _impl_.loop_type_ = value; + } + inline void SpriteAnimation::set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value) { + _internal_set_loop_type(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.loop_type) + } + + // optional uint32 loop_count = 5; + inline bool SpriteAnimation::_internal_has_loop_count() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool SpriteAnimation::has_loop_count() const { + return _internal_has_loop_count(); + } + inline void SpriteAnimation::clear_loop_count() { + _impl_.loop_count_ = 0u; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline uint32_t SpriteAnimation::_internal_loop_count() const { + return _impl_.loop_count_; + } + inline uint32_t SpriteAnimation::loop_count() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.loop_count) + return _internal_loop_count(); + } + inline void SpriteAnimation::_internal_set_loop_count(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.loop_count_ = value; + } + inline void SpriteAnimation::set_loop_count(uint32_t value) { + _internal_set_loop_count(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.loop_count) + } + + // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; + inline int SpriteAnimation::_internal_sprite_phase_size() const { + return _impl_.sprite_phase_.size(); + } + inline int SpriteAnimation::sprite_phase_size() const { + return _internal_sprite_phase_size(); + } + inline void SpriteAnimation::clear_sprite_phase() { + _impl_.sprite_phase_.Clear(); + } + inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::mutable_sprite_phase(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) + return _impl_.sprite_phase_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase>* + SpriteAnimation::mutable_sprite_phase() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) + return &_impl_.sprite_phase_; + } + inline const ::Canary::protobuf::appearances::SpritePhase &SpriteAnimation::_internal_sprite_phase(int index) const { + return _impl_.sprite_phase_.Get(index); + } + inline const ::Canary::protobuf::appearances::SpritePhase &SpriteAnimation::sprite_phase(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) + return _internal_sprite_phase(index); + } + inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::_internal_add_sprite_phase() { + return _impl_.sprite_phase_.Add(); + } + inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::add_sprite_phase() { + ::Canary::protobuf::appearances::SpritePhase* _add = _internal_add_sprite_phase(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase> & + SpriteAnimation::sprite_phase() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) + return _impl_.sprite_phase_; + } + + // ------------------------------------------------------------------- + + // Box + + // optional uint32 x = 1; + inline bool Box::_internal_has_x() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool Box::has_x() const { + return _internal_has_x(); + } + inline void Box::clear_x() { + _impl_.x_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t Box::_internal_x() const { + return _impl_.x_; + } + inline uint32_t Box::x() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.x) + return _internal_x(); + } + inline void Box::_internal_set_x(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.x_ = value; + } + inline void Box::set_x(uint32_t value) { + _internal_set_x(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.x) + } + + // optional uint32 y = 2; + inline bool Box::_internal_has_y() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool Box::has_y() const { + return _internal_has_y(); + } + inline void Box::clear_y() { + _impl_.y_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t Box::_internal_y() const { + return _impl_.y_; + } + inline uint32_t Box::y() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.y) + return _internal_y(); + } + inline void Box::_internal_set_y(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.y_ = value; + } + inline void Box::set_y(uint32_t value) { + _internal_set_y(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.y) + } + + // optional uint32 width = 3; + inline bool Box::_internal_has_width() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool Box::has_width() const { + return _internal_has_width(); + } + inline void Box::clear_width() { + _impl_.width_ = 0u; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline uint32_t Box::_internal_width() const { + return _impl_.width_; + } + inline uint32_t Box::width() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.width) + return _internal_width(); + } + inline void Box::_internal_set_width(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.width_ = value; + } + inline void Box::set_width(uint32_t value) { + _internal_set_width(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.width) + } + + // optional uint32 height = 4; + inline bool Box::_internal_has_height() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool Box::has_height() const { + return _internal_has_height(); + } + inline void Box::clear_height() { + _impl_.height_ = 0u; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline uint32_t Box::_internal_height() const { + return _impl_.height_; + } + inline uint32_t Box::height() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.height) + return _internal_height(); + } + inline void Box::_internal_set_height(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.height_ = value; + } + inline void Box::set_height(uint32_t value) { + _internal_set_height(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.height) + } + + // ------------------------------------------------------------------- + + // SpriteInfo + + // optional uint32 pattern_width = 1; + inline bool SpriteInfo::_internal_has_pattern_width() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool SpriteInfo::has_pattern_width() const { + return _internal_has_pattern_width(); + } + inline void SpriteInfo::clear_pattern_width() { + _impl_.pattern_width_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t SpriteInfo::_internal_pattern_width() const { + return _impl_.pattern_width_; + } + inline uint32_t SpriteInfo::pattern_width() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_width) + return _internal_pattern_width(); + } + inline void SpriteInfo::_internal_set_pattern_width(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.pattern_width_ = value; + } + inline void SpriteInfo::set_pattern_width(uint32_t value) { + _internal_set_pattern_width(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_width) + } + + // optional uint32 pattern_height = 2; + inline bool SpriteInfo::_internal_has_pattern_height() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool SpriteInfo::has_pattern_height() const { + return _internal_has_pattern_height(); + } + inline void SpriteInfo::clear_pattern_height() { + _impl_.pattern_height_ = 0u; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline uint32_t SpriteInfo::_internal_pattern_height() const { + return _impl_.pattern_height_; + } + inline uint32_t SpriteInfo::pattern_height() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_height) + return _internal_pattern_height(); + } + inline void SpriteInfo::_internal_set_pattern_height(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.pattern_height_ = value; + } + inline void SpriteInfo::set_pattern_height(uint32_t value) { + _internal_set_pattern_height(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_height) + } + + // optional uint32 pattern_depth = 3; + inline bool SpriteInfo::_internal_has_pattern_depth() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool SpriteInfo::has_pattern_depth() const { + return _internal_has_pattern_depth(); + } + inline void SpriteInfo::clear_pattern_depth() { + _impl_.pattern_depth_ = 0u; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline uint32_t SpriteInfo::_internal_pattern_depth() const { + return _impl_.pattern_depth_; + } + inline uint32_t SpriteInfo::pattern_depth() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_depth) + return _internal_pattern_depth(); + } + inline void SpriteInfo::_internal_set_pattern_depth(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.pattern_depth_ = value; + } + inline void SpriteInfo::set_pattern_depth(uint32_t value) { + _internal_set_pattern_depth(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_depth) + } + + // optional uint32 layers = 4; + inline bool SpriteInfo::_internal_has_layers() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + return value; + } + inline bool SpriteInfo::has_layers() const { + return _internal_has_layers(); + } + inline void SpriteInfo::clear_layers() { + _impl_.layers_ = 0u; + _impl_._has_bits_[0] &= ~0x00000010u; + } + inline uint32_t SpriteInfo::_internal_layers() const { + return _impl_.layers_; + } + inline uint32_t SpriteInfo::layers() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.layers) + return _internal_layers(); + } + inline void SpriteInfo::_internal_set_layers(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000010u; + _impl_.layers_ = value; + } + inline void SpriteInfo::set_layers(uint32_t value) { + _internal_set_layers(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.layers) + } + + // repeated uint32 sprite_id = 5; + inline int SpriteInfo::_internal_sprite_id_size() const { + return _impl_.sprite_id_.size(); + } + inline int SpriteInfo::sprite_id_size() const { + return _internal_sprite_id_size(); + } + inline void SpriteInfo::clear_sprite_id() { + _impl_.sprite_id_.Clear(); + } + inline uint32_t SpriteInfo::_internal_sprite_id(int index) const { + return _impl_.sprite_id_.Get(index); + } + inline uint32_t SpriteInfo::sprite_id(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.sprite_id) + return _internal_sprite_id(index); + } + inline void SpriteInfo::set_sprite_id(int index, uint32_t value) { + _impl_.sprite_id_.Set(index, value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.sprite_id) + } + inline void SpriteInfo::_internal_add_sprite_id(uint32_t value) { + _impl_.sprite_id_.Add(value); + } + inline void SpriteInfo::add_sprite_id(uint32_t value) { + _internal_add_sprite_id(value); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteInfo.sprite_id) + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField & + SpriteInfo::_internal_sprite_id() const { + return _impl_.sprite_id_; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField & + SpriteInfo::sprite_id() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteInfo.sprite_id) + return _internal_sprite_id(); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* + SpriteInfo::_internal_mutable_sprite_id() { + return &_impl_.sprite_id_; + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* + SpriteInfo::mutable_sprite_id() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteInfo.sprite_id) + return _internal_mutable_sprite_id(); + } + + // optional uint32 bounding_square = 7; + inline bool SpriteInfo::_internal_has_bounding_square() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + return value; + } + inline bool SpriteInfo::has_bounding_square() const { + return _internal_has_bounding_square(); + } + inline void SpriteInfo::clear_bounding_square() { + _impl_.bounding_square_ = 0u; + _impl_._has_bits_[0] &= ~0x00000020u; + } + inline uint32_t SpriteInfo::_internal_bounding_square() const { + return _impl_.bounding_square_; + } + inline uint32_t SpriteInfo::bounding_square() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.bounding_square) + return _internal_bounding_square(); + } + inline void SpriteInfo::_internal_set_bounding_square(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000020u; + _impl_.bounding_square_ = value; + } + inline void SpriteInfo::set_bounding_square(uint32_t value) { + _internal_set_bounding_square(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.bounding_square) + } + + // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; + inline bool SpriteInfo::_internal_has_animation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.animation_ != nullptr); + return value; + } + inline bool SpriteInfo::has_animation() const { + return _internal_has_animation(); + } + inline void SpriteInfo::clear_animation() { + if (_impl_.animation_ != nullptr) { + _impl_.animation_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline const ::Canary::protobuf::appearances::SpriteAnimation &SpriteInfo::_internal_animation() const { + const ::Canary::protobuf::appearances::SpriteAnimation* p = _impl_.animation_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_SpriteAnimation_default_instance_); + } + inline const ::Canary::protobuf::appearances::SpriteAnimation &SpriteInfo::animation() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.animation) + return _internal_animation(); + } + inline void SpriteInfo::unsafe_arena_set_allocated_animation( + ::Canary::protobuf::appearances::SpriteAnimation* animation + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.animation_); + } + _impl_.animation_ = animation; + if (animation) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.SpriteInfo.animation) + } + inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::release_animation() { + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::SpriteAnimation* temp = _impl_.animation_; + _impl_.animation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::unsafe_arena_release_animation() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.SpriteInfo.animation) + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::SpriteAnimation* temp = _impl_.animation_; + _impl_.animation_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::_internal_mutable_animation() { + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.animation_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpriteAnimation>(GetArenaForAllocation()); + _impl_.animation_ = p; + } + return _impl_.animation_; + } + inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::mutable_animation() { + ::Canary::protobuf::appearances::SpriteAnimation* _msg = _internal_mutable_animation(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteInfo.animation) + return _msg; + } + inline void SpriteInfo::set_allocated_animation(::Canary::protobuf::appearances::SpriteAnimation* animation) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.animation_; + } + if (animation) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(animation); + if (message_arena != submessage_arena) { + animation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, animation, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.animation_ = animation; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.SpriteInfo.animation) + } + + // optional bool is_opaque = 8; + inline bool SpriteInfo::_internal_has_is_opaque() const { + bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; + return value; + } + inline bool SpriteInfo::has_is_opaque() const { + return _internal_has_is_opaque(); + } + inline void SpriteInfo::clear_is_opaque() { + _impl_.is_opaque_ = false; + _impl_._has_bits_[0] &= ~0x00000040u; + } + inline bool SpriteInfo::_internal_is_opaque() const { + return _impl_.is_opaque_; + } + inline bool SpriteInfo::is_opaque() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.is_opaque) + return _internal_is_opaque(); + } + inline void SpriteInfo::_internal_set_is_opaque(bool value) { + _impl_._has_bits_[0] |= 0x00000040u; + _impl_.is_opaque_ = value; + } + inline void SpriteInfo::set_is_opaque(bool value) { + _internal_set_is_opaque(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.is_opaque) + } + + // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; + inline int SpriteInfo::_internal_bounding_box_per_direction_size() const { + return _impl_.bounding_box_per_direction_.size(); + } + inline int SpriteInfo::bounding_box_per_direction_size() const { + return _internal_bounding_box_per_direction_size(); + } + inline void SpriteInfo::clear_bounding_box_per_direction() { + _impl_.bounding_box_per_direction_.Clear(); + } + inline ::Canary::protobuf::appearances::Box* SpriteInfo::mutable_bounding_box_per_direction(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) + return _impl_.bounding_box_per_direction_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box>* + SpriteInfo::mutable_bounding_box_per_direction() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) + return &_impl_.bounding_box_per_direction_; + } + inline const ::Canary::protobuf::appearances::Box &SpriteInfo::_internal_bounding_box_per_direction(int index) const { + return _impl_.bounding_box_per_direction_.Get(index); + } + inline const ::Canary::protobuf::appearances::Box &SpriteInfo::bounding_box_per_direction(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) + return _internal_bounding_box_per_direction(index); + } + inline ::Canary::protobuf::appearances::Box* SpriteInfo::_internal_add_bounding_box_per_direction() { + return _impl_.bounding_box_per_direction_.Add(); + } + inline ::Canary::protobuf::appearances::Box* SpriteInfo::add_bounding_box_per_direction() { + ::Canary::protobuf::appearances::Box* _add = _internal_add_bounding_box_per_direction(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box> & + SpriteInfo::bounding_box_per_direction() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) + return _impl_.bounding_box_per_direction_; + } + + // ------------------------------------------------------------------- + + // FrameGroup + + // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; + inline bool FrameGroup::_internal_has_fixed_frame_group() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool FrameGroup::has_fixed_frame_group() const { + return _internal_has_fixed_frame_group(); + } + inline void FrameGroup::clear_fixed_frame_group() { + _impl_.fixed_frame_group_ = 0; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline ::Canary::protobuf::appearances::FIXED_FRAME_GROUP FrameGroup::_internal_fixed_frame_group() const { + return static_cast<::Canary::protobuf::appearances::FIXED_FRAME_GROUP>(_impl_.fixed_frame_group_); + } + inline ::Canary::protobuf::appearances::FIXED_FRAME_GROUP FrameGroup::fixed_frame_group() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.fixed_frame_group) + return _internal_fixed_frame_group(); + } + inline void FrameGroup::_internal_set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value) { + assert(::Canary::protobuf::appearances::FIXED_FRAME_GROUP_IsValid(value)); + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.fixed_frame_group_ = value; + } + inline void FrameGroup::set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value) { + _internal_set_fixed_frame_group(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.FrameGroup.fixed_frame_group) + } + + // optional uint32 id = 2; + inline bool FrameGroup::_internal_has_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool FrameGroup::has_id() const { + return _internal_has_id(); + } + inline void FrameGroup::clear_id() { + _impl_.id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline uint32_t FrameGroup::_internal_id() const { + return _impl_.id_; + } + inline uint32_t FrameGroup::id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.id) + return _internal_id(); + } + inline void FrameGroup::_internal_set_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.id_ = value; + } + inline void FrameGroup::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.FrameGroup.id) + } + + // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; + inline bool FrameGroup::_internal_has_sprite_info() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.sprite_info_ != nullptr); + return value; + } + inline bool FrameGroup::has_sprite_info() const { + return _internal_has_sprite_info(); + } + inline void FrameGroup::clear_sprite_info() { + if (_impl_.sprite_info_ != nullptr) { + _impl_.sprite_info_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline const ::Canary::protobuf::appearances::SpriteInfo &FrameGroup::_internal_sprite_info() const { + const ::Canary::protobuf::appearances::SpriteInfo* p = _impl_.sprite_info_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_SpriteInfo_default_instance_); + } + inline const ::Canary::protobuf::appearances::SpriteInfo &FrameGroup::sprite_info() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.sprite_info) + return _internal_sprite_info(); + } + inline void FrameGroup::unsafe_arena_set_allocated_sprite_info( + ::Canary::protobuf::appearances::SpriteInfo* sprite_info + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sprite_info_); + } + _impl_.sprite_info_ = sprite_info; + if (sprite_info) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.FrameGroup.sprite_info) + } + inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::release_sprite_info() { + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::SpriteInfo* temp = _impl_.sprite_info_; + _impl_.sprite_info_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::unsafe_arena_release_sprite_info() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.FrameGroup.sprite_info) + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::SpriteInfo* temp = _impl_.sprite_info_; + _impl_.sprite_info_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::_internal_mutable_sprite_info() { + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.sprite_info_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpriteInfo>(GetArenaForAllocation()); + _impl_.sprite_info_ = p; + } + return _impl_.sprite_info_; + } + inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::mutable_sprite_info() { + ::Canary::protobuf::appearances::SpriteInfo* _msg = _internal_mutable_sprite_info(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.FrameGroup.sprite_info) + return _msg; + } + inline void FrameGroup::set_allocated_sprite_info(::Canary::protobuf::appearances::SpriteInfo* sprite_info) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.sprite_info_; + } + if (sprite_info) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sprite_info); + if (message_arena != submessage_arena) { + sprite_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, sprite_info, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.sprite_info_ = sprite_info; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.FrameGroup.sprite_info) + } + + // ------------------------------------------------------------------- + + // Appearance + + // optional uint32 id = 1; + inline bool Appearance::_internal_has_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool Appearance::has_id() const { + return _internal_has_id(); + } + inline void Appearance::clear_id() { + _impl_.id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline uint32_t Appearance::_internal_id() const { + return _impl_.id_; + } + inline uint32_t Appearance::id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.id) + return _internal_id(); + } + inline void Appearance::_internal_set_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.id_ = value; + } + inline void Appearance::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.id) + } + + // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; + inline int Appearance::_internal_frame_group_size() const { + return _impl_.frame_group_.size(); + } + inline int Appearance::frame_group_size() const { + return _internal_frame_group_size(); + } + inline void Appearance::clear_frame_group() { + _impl_.frame_group_.Clear(); + } + inline ::Canary::protobuf::appearances::FrameGroup* Appearance::mutable_frame_group(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.frame_group) + return _impl_.frame_group_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup>* + Appearance::mutable_frame_group() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearance.frame_group) + return &_impl_.frame_group_; + } + inline const ::Canary::protobuf::appearances::FrameGroup &Appearance::_internal_frame_group(int index) const { + return _impl_.frame_group_.Get(index); + } + inline const ::Canary::protobuf::appearances::FrameGroup &Appearance::frame_group(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.frame_group) + return _internal_frame_group(index); + } + inline ::Canary::protobuf::appearances::FrameGroup* Appearance::_internal_add_frame_group() { + return _impl_.frame_group_.Add(); + } + inline ::Canary::protobuf::appearances::FrameGroup* Appearance::add_frame_group() { + ::Canary::protobuf::appearances::FrameGroup* _add = _internal_add_frame_group(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearance.frame_group) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup> & + Appearance::frame_group() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearance.frame_group) + return _impl_.frame_group_; + } + + // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; + inline bool Appearance::_internal_has_flags() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.flags_ != nullptr); + return value; + } + inline bool Appearance::has_flags() const { + return _internal_has_flags(); + } + inline void Appearance::clear_flags() { + if (_impl_.flags_ != nullptr) { + _impl_.flags_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlags &Appearance::_internal_flags() const { + const ::Canary::protobuf::appearances::AppearanceFlags* p = _impl_.flags_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlags_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlags &Appearance::flags() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.flags) + return _internal_flags(); + } + inline void Appearance::unsafe_arena_set_allocated_flags( + ::Canary::protobuf::appearances::AppearanceFlags* flags + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.flags_); + } + _impl_.flags_ = flags; + if (flags) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.Appearance.flags) + } + inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::release_flags() { + _impl_._has_bits_[0] &= ~0x00000004u; + ::Canary::protobuf::appearances::AppearanceFlags* temp = _impl_.flags_; + _impl_.flags_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::unsafe_arena_release_flags() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.flags) + _impl_._has_bits_[0] &= ~0x00000004u; + ::Canary::protobuf::appearances::AppearanceFlags* temp = _impl_.flags_; + _impl_.flags_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::_internal_mutable_flags() { + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.flags_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlags>(GetArenaForAllocation()); + _impl_.flags_ = p; + } + return _impl_.flags_; + } + inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::mutable_flags() { + ::Canary::protobuf::appearances::AppearanceFlags* _msg = _internal_mutable_flags(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.flags) + return _msg; + } + inline void Appearance::set_allocated_flags(::Canary::protobuf::appearances::AppearanceFlags* flags) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.flags_; + } + if (flags) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(flags); + if (message_arena != submessage_arena) { + flags = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, flags, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + _impl_.flags_ = flags; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.flags) + } + + // optional bytes name = 4; + inline bool Appearance::_internal_has_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool Appearance::has_name() const { + return _internal_has_name(); + } + inline void Appearance::clear_name() { + _impl_.name_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline const std::string &Appearance::name() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.name) + return _internal_name(); + } + template + inline PROTOBUF_ALWAYS_INLINE void Appearance::set_name(ArgT0 &&arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.name) + } + inline std::string* Appearance::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.name) + return _s; + } + inline const std::string &Appearance::_internal_name() const { + return _impl_.name_.Get(); + } + inline void Appearance::_internal_set_name(const std::string &value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.name_.Set(value, GetArenaForAllocation()); + } + inline std::string* Appearance::_internal_mutable_name() { + _impl_._has_bits_[0] |= 0x00000001u; + return _impl_.name_.Mutable(GetArenaForAllocation()); + } + inline std::string* Appearance::release_name() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.name) + if (!_internal_has_name()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000001u; + auto* p = _impl_.name_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; + } + inline void Appearance::set_allocated_name(std::string* name) { + if (name != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.name) + } + + // optional bytes description = 5; + inline bool Appearance::_internal_has_description() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool Appearance::has_description() const { + return _internal_has_description(); + } + inline void Appearance::clear_description() { + _impl_.description_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline const std::string &Appearance::description() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.description) + return _internal_description(); + } + template + inline PROTOBUF_ALWAYS_INLINE void Appearance::set_description(ArgT0 &&arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.description_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.description) + } + inline std::string* Appearance::mutable_description() { + std::string* _s = _internal_mutable_description(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.description) + return _s; + } + inline const std::string &Appearance::_internal_description() const { + return _impl_.description_.Get(); + } + inline void Appearance::_internal_set_description(const std::string &value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.description_.Set(value, GetArenaForAllocation()); + } + inline std::string* Appearance::_internal_mutable_description() { + _impl_._has_bits_[0] |= 0x00000002u; + return _impl_.description_.Mutable(GetArenaForAllocation()); + } + inline std::string* Appearance::release_description() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.description) + if (!_internal_has_description()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000002u; + auto* p = _impl_.description_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.description_.IsDefault()) { + _impl_.description_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; + } + inline void Appearance::set_allocated_description(std::string* description) { + if (description != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + _impl_.description_.SetAllocated(description, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.description_.IsDefault()) { + _impl_.description_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.description) + } + + // ------------------------------------------------------------------- + + // AppearanceFlags + + // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; + inline bool AppearanceFlags::_internal_has_bank() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.bank_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_bank() const { + return _internal_has_bank(); + } + inline void AppearanceFlags::clear_bank() { + if (_impl_.bank_ != nullptr) { + _impl_.bank_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagBank &AppearanceFlags::_internal_bank() const { + const ::Canary::protobuf::appearances::AppearanceFlagBank* p = _impl_.bank_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagBank_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagBank &AppearanceFlags::bank() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.bank) + return _internal_bank(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_bank( + ::Canary::protobuf::appearances::AppearanceFlagBank* bank + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.bank_); + } + _impl_.bank_ = bank; + if (bank) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.bank) + } + inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::release_bank() { + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::AppearanceFlagBank* temp = _impl_.bank_; + _impl_.bank_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::unsafe_arena_release_bank() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.bank) + _impl_._has_bits_[0] &= ~0x00000001u; + ::Canary::protobuf::appearances::AppearanceFlagBank* temp = _impl_.bank_; + _impl_.bank_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::_internal_mutable_bank() { + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.bank_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagBank>(GetArenaForAllocation()); + _impl_.bank_ = p; + } + return _impl_.bank_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::mutable_bank() { + ::Canary::protobuf::appearances::AppearanceFlagBank* _msg = _internal_mutable_bank(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.bank) + return _msg; + } + inline void AppearanceFlags::set_allocated_bank(::Canary::protobuf::appearances::AppearanceFlagBank* bank) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.bank_; + } + if (bank) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(bank); + if (message_arena != submessage_arena) { + bank = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, bank, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.bank_ = bank; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.bank) + } + + // optional bool clip = 2; + inline bool AppearanceFlags::_internal_has_clip() const { + bool value = (_impl_._has_bits_[0] & 0x00008000u) != 0; + return value; + } + inline bool AppearanceFlags::has_clip() const { + return _internal_has_clip(); + } + inline void AppearanceFlags::clear_clip() { + _impl_.clip_ = false; + _impl_._has_bits_[0] &= ~0x00008000u; + } + inline bool AppearanceFlags::_internal_clip() const { + return _impl_.clip_; + } + inline bool AppearanceFlags::clip() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clip) + return _internal_clip(); + } + inline void AppearanceFlags::_internal_set_clip(bool value) { + _impl_._has_bits_[0] |= 0x00008000u; + _impl_.clip_ = value; + } + inline void AppearanceFlags::set_clip(bool value) { + _internal_set_clip(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.clip) + } + + // optional bool bottom = 3; + inline bool AppearanceFlags::_internal_has_bottom() const { + bool value = (_impl_._has_bits_[0] & 0x00010000u) != 0; + return value; + } + inline bool AppearanceFlags::has_bottom() const { + return _internal_has_bottom(); + } + inline void AppearanceFlags::clear_bottom() { + _impl_.bottom_ = false; + _impl_._has_bits_[0] &= ~0x00010000u; + } + inline bool AppearanceFlags::_internal_bottom() const { + return _impl_.bottom_; + } + inline bool AppearanceFlags::bottom() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.bottom) + return _internal_bottom(); + } + inline void AppearanceFlags::_internal_set_bottom(bool value) { + _impl_._has_bits_[0] |= 0x00010000u; + _impl_.bottom_ = value; + } + inline void AppearanceFlags::set_bottom(bool value) { + _internal_set_bottom(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.bottom) + } + + // optional bool top = 4; + inline bool AppearanceFlags::_internal_has_top() const { + bool value = (_impl_._has_bits_[0] & 0x00020000u) != 0; + return value; + } + inline bool AppearanceFlags::has_top() const { + return _internal_has_top(); + } + inline void AppearanceFlags::clear_top() { + _impl_.top_ = false; + _impl_._has_bits_[0] &= ~0x00020000u; + } + inline bool AppearanceFlags::_internal_top() const { + return _impl_.top_; + } + inline bool AppearanceFlags::top() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.top) + return _internal_top(); + } + inline void AppearanceFlags::_internal_set_top(bool value) { + _impl_._has_bits_[0] |= 0x00020000u; + _impl_.top_ = value; + } + inline void AppearanceFlags::set_top(bool value) { + _internal_set_top(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.top) + } + + // optional bool container = 5; + inline bool AppearanceFlags::_internal_has_container() const { + bool value = (_impl_._has_bits_[0] & 0x00040000u) != 0; + return value; + } + inline bool AppearanceFlags::has_container() const { + return _internal_has_container(); + } + inline void AppearanceFlags::clear_container() { + _impl_.container_ = false; + _impl_._has_bits_[0] &= ~0x00040000u; + } + inline bool AppearanceFlags::_internal_container() const { + return _impl_.container_; + } + inline bool AppearanceFlags::container() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.container) + return _internal_container(); + } + inline void AppearanceFlags::_internal_set_container(bool value) { + _impl_._has_bits_[0] |= 0x00040000u; + _impl_.container_ = value; + } + inline void AppearanceFlags::set_container(bool value) { + _internal_set_container(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.container) + } + + // optional bool cumulative = 6; + inline bool AppearanceFlags::_internal_has_cumulative() const { + bool value = (_impl_._has_bits_[0] & 0x00080000u) != 0; + return value; + } + inline bool AppearanceFlags::has_cumulative() const { + return _internal_has_cumulative(); + } + inline void AppearanceFlags::clear_cumulative() { + _impl_.cumulative_ = false; + _impl_._has_bits_[0] &= ~0x00080000u; + } + inline bool AppearanceFlags::_internal_cumulative() const { + return _impl_.cumulative_; + } + inline bool AppearanceFlags::cumulative() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.cumulative) + return _internal_cumulative(); + } + inline void AppearanceFlags::_internal_set_cumulative(bool value) { + _impl_._has_bits_[0] |= 0x00080000u; + _impl_.cumulative_ = value; + } + inline void AppearanceFlags::set_cumulative(bool value) { + _internal_set_cumulative(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.cumulative) + } + + // optional bool usable = 7; + inline bool AppearanceFlags::_internal_has_usable() const { + bool value = (_impl_._has_bits_[0] & 0x00100000u) != 0; + return value; + } + inline bool AppearanceFlags::has_usable() const { + return _internal_has_usable(); + } + inline void AppearanceFlags::clear_usable() { + _impl_.usable_ = false; + _impl_._has_bits_[0] &= ~0x00100000u; + } + inline bool AppearanceFlags::_internal_usable() const { + return _impl_.usable_; + } + inline bool AppearanceFlags::usable() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.usable) + return _internal_usable(); + } + inline void AppearanceFlags::_internal_set_usable(bool value) { + _impl_._has_bits_[0] |= 0x00100000u; + _impl_.usable_ = value; + } + inline void AppearanceFlags::set_usable(bool value) { + _internal_set_usable(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.usable) + } + + // optional bool forceuse = 8; + inline bool AppearanceFlags::_internal_has_forceuse() const { + bool value = (_impl_._has_bits_[0] & 0x00200000u) != 0; + return value; + } + inline bool AppearanceFlags::has_forceuse() const { + return _internal_has_forceuse(); + } + inline void AppearanceFlags::clear_forceuse() { + _impl_.forceuse_ = false; + _impl_._has_bits_[0] &= ~0x00200000u; + } + inline bool AppearanceFlags::_internal_forceuse() const { + return _impl_.forceuse_; + } + inline bool AppearanceFlags::forceuse() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.forceuse) + return _internal_forceuse(); + } + inline void AppearanceFlags::_internal_set_forceuse(bool value) { + _impl_._has_bits_[0] |= 0x00200000u; + _impl_.forceuse_ = value; + } + inline void AppearanceFlags::set_forceuse(bool value) { + _internal_set_forceuse(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.forceuse) + } + + // optional bool multiuse = 9; + inline bool AppearanceFlags::_internal_has_multiuse() const { + bool value = (_impl_._has_bits_[0] & 0x00400000u) != 0; + return value; + } + inline bool AppearanceFlags::has_multiuse() const { + return _internal_has_multiuse(); + } + inline void AppearanceFlags::clear_multiuse() { + _impl_.multiuse_ = false; + _impl_._has_bits_[0] &= ~0x00400000u; + } + inline bool AppearanceFlags::_internal_multiuse() const { + return _impl_.multiuse_; + } + inline bool AppearanceFlags::multiuse() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.multiuse) + return _internal_multiuse(); + } + inline void AppearanceFlags::_internal_set_multiuse(bool value) { + _impl_._has_bits_[0] |= 0x00400000u; + _impl_.multiuse_ = value; + } + inline void AppearanceFlags::set_multiuse(bool value) { + _internal_set_multiuse(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.multiuse) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; + inline bool AppearanceFlags::_internal_has_write() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.write_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_write() const { + return _internal_has_write(); + } + inline void AppearanceFlags::clear_write() { + if (_impl_.write_ != nullptr) { + _impl_.write_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagWrite &AppearanceFlags::_internal_write() const { + const ::Canary::protobuf::appearances::AppearanceFlagWrite* p = _impl_.write_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagWrite_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagWrite &AppearanceFlags::write() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.write) + return _internal_write(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_write( + ::Canary::protobuf::appearances::AppearanceFlagWrite* write + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.write_); + } + _impl_.write_ = write; + if (write) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write) + } + inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::release_write() { + _impl_._has_bits_[0] &= ~0x00000002u; + ::Canary::protobuf::appearances::AppearanceFlagWrite* temp = _impl_.write_; + _impl_.write_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::unsafe_arena_release_write() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.write) + _impl_._has_bits_[0] &= ~0x00000002u; + ::Canary::protobuf::appearances::AppearanceFlagWrite* temp = _impl_.write_; + _impl_.write_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::_internal_mutable_write() { + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.write_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWrite>(GetArenaForAllocation()); + _impl_.write_ = p; + } + return _impl_.write_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::mutable_write() { + ::Canary::protobuf::appearances::AppearanceFlagWrite* _msg = _internal_mutable_write(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.write) + return _msg; + } + inline void AppearanceFlags::set_allocated_write(::Canary::protobuf::appearances::AppearanceFlagWrite* write) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.write_; + } + if (write) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(write); + if (message_arena != submessage_arena) { + write = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, write, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + _impl_.write_ = write; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; + inline bool AppearanceFlags::_internal_has_write_once() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.write_once_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_write_once() const { + return _internal_has_write_once(); + } + inline void AppearanceFlags::clear_write_once() { + if (_impl_.write_once_ != nullptr) { + _impl_.write_once_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &AppearanceFlags::_internal_write_once() const { + const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* p = _impl_.write_once_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagWriteOnce_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &AppearanceFlags::write_once() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.write_once) + return _internal_write_once(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_write_once( + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.write_once_); + } + _impl_.write_once_ = write_once; + if (write_once) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write_once) + } + inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::release_write_once() { + _impl_._has_bits_[0] &= ~0x00000004u; + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* temp = _impl_.write_once_; + _impl_.write_once_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::unsafe_arena_release_write_once() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.write_once) + _impl_._has_bits_[0] &= ~0x00000004u; + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* temp = _impl_.write_once_; + _impl_.write_once_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::_internal_mutable_write_once() { + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.write_once_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWriteOnce>(GetArenaForAllocation()); + _impl_.write_once_ = p; + } + return _impl_.write_once_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::mutable_write_once() { + ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* _msg = _internal_mutable_write_once(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.write_once) + return _msg; + } + inline void AppearanceFlags::set_allocated_write_once(::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.write_once_; + } + if (write_once) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(write_once); + if (message_arena != submessage_arena) { + write_once = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, write_once, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + _impl_.write_once_ = write_once; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write_once) + } + + // optional bool liquidpool = 12; + inline bool AppearanceFlags::_internal_has_liquidpool() const { + bool value = (_impl_._has_bits_[0] & 0x00800000u) != 0; + return value; + } + inline bool AppearanceFlags::has_liquidpool() const { + return _internal_has_liquidpool(); + } + inline void AppearanceFlags::clear_liquidpool() { + _impl_.liquidpool_ = false; + _impl_._has_bits_[0] &= ~0x00800000u; + } + inline bool AppearanceFlags::_internal_liquidpool() const { + return _impl_.liquidpool_; + } + inline bool AppearanceFlags::liquidpool() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.liquidpool) + return _internal_liquidpool(); + } + inline void AppearanceFlags::_internal_set_liquidpool(bool value) { + _impl_._has_bits_[0] |= 0x00800000u; + _impl_.liquidpool_ = value; + } + inline void AppearanceFlags::set_liquidpool(bool value) { + _internal_set_liquidpool(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.liquidpool) + } + + // optional bool unpass = 13; + inline bool AppearanceFlags::_internal_has_unpass() const { + bool value = (_impl_._has_bits_[0] & 0x01000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_unpass() const { + return _internal_has_unpass(); + } + inline void AppearanceFlags::clear_unpass() { + _impl_.unpass_ = false; + _impl_._has_bits_[0] &= ~0x01000000u; + } + inline bool AppearanceFlags::_internal_unpass() const { + return _impl_.unpass_; + } + inline bool AppearanceFlags::unpass() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unpass) + return _internal_unpass(); + } + inline void AppearanceFlags::_internal_set_unpass(bool value) { + _impl_._has_bits_[0] |= 0x01000000u; + _impl_.unpass_ = value; + } + inline void AppearanceFlags::set_unpass(bool value) { + _internal_set_unpass(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unpass) + } + + // optional bool unmove = 14; + inline bool AppearanceFlags::_internal_has_unmove() const { + bool value = (_impl_._has_bits_[0] & 0x02000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_unmove() const { + return _internal_has_unmove(); + } + inline void AppearanceFlags::clear_unmove() { + _impl_.unmove_ = false; + _impl_._has_bits_[0] &= ~0x02000000u; + } + inline bool AppearanceFlags::_internal_unmove() const { + return _impl_.unmove_; + } + inline bool AppearanceFlags::unmove() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unmove) + return _internal_unmove(); + } + inline void AppearanceFlags::_internal_set_unmove(bool value) { + _impl_._has_bits_[0] |= 0x02000000u; + _impl_.unmove_ = value; + } + inline void AppearanceFlags::set_unmove(bool value) { + _internal_set_unmove(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unmove) + } + + // optional bool unsight = 15; + inline bool AppearanceFlags::_internal_has_unsight() const { + bool value = (_impl_._has_bits_[0] & 0x04000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_unsight() const { + return _internal_has_unsight(); + } + inline void AppearanceFlags::clear_unsight() { + _impl_.unsight_ = false; + _impl_._has_bits_[0] &= ~0x04000000u; + } + inline bool AppearanceFlags::_internal_unsight() const { + return _impl_.unsight_; + } + inline bool AppearanceFlags::unsight() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unsight) + return _internal_unsight(); + } + inline void AppearanceFlags::_internal_set_unsight(bool value) { + _impl_._has_bits_[0] |= 0x04000000u; + _impl_.unsight_ = value; + } + inline void AppearanceFlags::set_unsight(bool value) { + _internal_set_unsight(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unsight) + } + + // optional bool avoid = 16; + inline bool AppearanceFlags::_internal_has_avoid() const { + bool value = (_impl_._has_bits_[0] & 0x08000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_avoid() const { + return _internal_has_avoid(); + } + inline void AppearanceFlags::clear_avoid() { + _impl_.avoid_ = false; + _impl_._has_bits_[0] &= ~0x08000000u; + } + inline bool AppearanceFlags::_internal_avoid() const { + return _impl_.avoid_; + } + inline bool AppearanceFlags::avoid() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.avoid) + return _internal_avoid(); + } + inline void AppearanceFlags::_internal_set_avoid(bool value) { + _impl_._has_bits_[0] |= 0x08000000u; + _impl_.avoid_ = value; + } + inline void AppearanceFlags::set_avoid(bool value) { + _internal_set_avoid(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.avoid) + } + + // optional bool no_movement_animation = 17; + inline bool AppearanceFlags::_internal_has_no_movement_animation() const { + bool value = (_impl_._has_bits_[0] & 0x10000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_no_movement_animation() const { + return _internal_has_no_movement_animation(); + } + inline void AppearanceFlags::clear_no_movement_animation() { + _impl_.no_movement_animation_ = false; + _impl_._has_bits_[0] &= ~0x10000000u; + } + inline bool AppearanceFlags::_internal_no_movement_animation() const { + return _impl_.no_movement_animation_; + } + inline bool AppearanceFlags::no_movement_animation() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.no_movement_animation) + return _internal_no_movement_animation(); + } + inline void AppearanceFlags::_internal_set_no_movement_animation(bool value) { + _impl_._has_bits_[0] |= 0x10000000u; + _impl_.no_movement_animation_ = value; + } + inline void AppearanceFlags::set_no_movement_animation(bool value) { + _internal_set_no_movement_animation(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.no_movement_animation) + } + + // optional bool take = 18; + inline bool AppearanceFlags::_internal_has_take() const { + bool value = (_impl_._has_bits_[0] & 0x20000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_take() const { + return _internal_has_take(); + } + inline void AppearanceFlags::clear_take() { + _impl_.take_ = false; + _impl_._has_bits_[0] &= ~0x20000000u; + } + inline bool AppearanceFlags::_internal_take() const { + return _impl_.take_; + } + inline bool AppearanceFlags::take() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.take) + return _internal_take(); + } + inline void AppearanceFlags::_internal_set_take(bool value) { + _impl_._has_bits_[0] |= 0x20000000u; + _impl_.take_ = value; + } + inline void AppearanceFlags::set_take(bool value) { + _internal_set_take(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.take) + } + + // optional bool liquidcontainer = 19; + inline bool AppearanceFlags::_internal_has_liquidcontainer() const { + bool value = (_impl_._has_bits_[0] & 0x40000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_liquidcontainer() const { + return _internal_has_liquidcontainer(); + } + inline void AppearanceFlags::clear_liquidcontainer() { + _impl_.liquidcontainer_ = false; + _impl_._has_bits_[0] &= ~0x40000000u; + } + inline bool AppearanceFlags::_internal_liquidcontainer() const { + return _impl_.liquidcontainer_; + } + inline bool AppearanceFlags::liquidcontainer() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.liquidcontainer) + return _internal_liquidcontainer(); + } + inline void AppearanceFlags::_internal_set_liquidcontainer(bool value) { + _impl_._has_bits_[0] |= 0x40000000u; + _impl_.liquidcontainer_ = value; + } + inline void AppearanceFlags::set_liquidcontainer(bool value) { + _internal_set_liquidcontainer(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.liquidcontainer) + } + + // optional bool hang = 20; + inline bool AppearanceFlags::_internal_has_hang() const { + bool value = (_impl_._has_bits_[0] & 0x80000000u) != 0; + return value; + } + inline bool AppearanceFlags::has_hang() const { + return _internal_has_hang(); + } + inline void AppearanceFlags::clear_hang() { + _impl_.hang_ = false; + _impl_._has_bits_[0] &= ~0x80000000u; + } + inline bool AppearanceFlags::_internal_hang() const { + return _impl_.hang_; + } + inline bool AppearanceFlags::hang() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.hang) + return _internal_hang(); + } + inline void AppearanceFlags::_internal_set_hang(bool value) { + _impl_._has_bits_[0] |= 0x80000000u; + _impl_.hang_ = value; + } + inline void AppearanceFlags::set_hang(bool value) { + _internal_set_hang(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.hang) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; + inline bool AppearanceFlags::_internal_has_hook() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.hook_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_hook() const { + return _internal_has_hook(); + } + inline void AppearanceFlags::clear_hook() { + if (_impl_.hook_ != nullptr) { + _impl_.hook_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagHook &AppearanceFlags::_internal_hook() const { + const ::Canary::protobuf::appearances::AppearanceFlagHook* p = _impl_.hook_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagHook_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagHook &AppearanceFlags::hook() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.hook) + return _internal_hook(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_hook( + ::Canary::protobuf::appearances::AppearanceFlagHook* hook + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.hook_); + } + _impl_.hook_ = hook; + if (hook) { + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.hook) + } + inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::release_hook() { + _impl_._has_bits_[0] &= ~0x00000008u; + ::Canary::protobuf::appearances::AppearanceFlagHook* temp = _impl_.hook_; + _impl_.hook_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::unsafe_arena_release_hook() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.hook) + _impl_._has_bits_[0] &= ~0x00000008u; + ::Canary::protobuf::appearances::AppearanceFlagHook* temp = _impl_.hook_; + _impl_.hook_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::_internal_mutable_hook() { + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.hook_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHook>(GetArenaForAllocation()); + _impl_.hook_ = p; + } + return _impl_.hook_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::mutable_hook() { + ::Canary::protobuf::appearances::AppearanceFlagHook* _msg = _internal_mutable_hook(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.hook) + return _msg; + } + inline void AppearanceFlags::set_allocated_hook(::Canary::protobuf::appearances::AppearanceFlagHook* hook) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.hook_; + } + if (hook) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(hook); + if (message_arena != submessage_arena) { + hook = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, hook, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + _impl_.hook_ = hook; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.hook) + } + + // optional bool rotate = 22; + inline bool AppearanceFlags::_internal_has_rotate() const { + bool value = (_impl_._has_bits_[1] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlags::has_rotate() const { + return _internal_has_rotate(); + } + inline void AppearanceFlags::clear_rotate() { + _impl_.rotate_ = false; + _impl_._has_bits_[1] &= ~0x00000001u; + } + inline bool AppearanceFlags::_internal_rotate() const { + return _impl_.rotate_; + } + inline bool AppearanceFlags::rotate() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.rotate) + return _internal_rotate(); + } + inline void AppearanceFlags::_internal_set_rotate(bool value) { + _impl_._has_bits_[1] |= 0x00000001u; + _impl_.rotate_ = value; + } + inline void AppearanceFlags::set_rotate(bool value) { + _internal_set_rotate(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.rotate) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; + inline bool AppearanceFlags::_internal_has_light() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || _impl_.light_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_light() const { + return _internal_has_light(); + } + inline void AppearanceFlags::clear_light() { + if (_impl_.light_ != nullptr) { + _impl_.light_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000010u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagLight &AppearanceFlags::_internal_light() const { + const ::Canary::protobuf::appearances::AppearanceFlagLight* p = _impl_.light_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagLight_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagLight &AppearanceFlags::light() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.light) + return _internal_light(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_light( + ::Canary::protobuf::appearances::AppearanceFlagLight* light + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.light_); + } + _impl_.light_ = light; + if (light) { + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.light) + } + inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::release_light() { + _impl_._has_bits_[0] &= ~0x00000010u; + ::Canary::protobuf::appearances::AppearanceFlagLight* temp = _impl_.light_; + _impl_.light_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::unsafe_arena_release_light() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.light) + _impl_._has_bits_[0] &= ~0x00000010u; + ::Canary::protobuf::appearances::AppearanceFlagLight* temp = _impl_.light_; + _impl_.light_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::_internal_mutable_light() { + _impl_._has_bits_[0] |= 0x00000010u; + if (_impl_.light_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLight>(GetArenaForAllocation()); + _impl_.light_ = p; + } + return _impl_.light_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::mutable_light() { + ::Canary::protobuf::appearances::AppearanceFlagLight* _msg = _internal_mutable_light(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.light) + return _msg; + } + inline void AppearanceFlags::set_allocated_light(::Canary::protobuf::appearances::AppearanceFlagLight* light) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.light_; + } + if (light) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(light); + if (message_arena != submessage_arena) { + light = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, light, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; + } + _impl_.light_ = light; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.light) + } + + // optional bool dont_hide = 24; + inline bool AppearanceFlags::_internal_has_dont_hide() const { + bool value = (_impl_._has_bits_[1] & 0x00000002u) != 0; + return value; + } + inline bool AppearanceFlags::has_dont_hide() const { + return _internal_has_dont_hide(); + } + inline void AppearanceFlags::clear_dont_hide() { + _impl_.dont_hide_ = false; + _impl_._has_bits_[1] &= ~0x00000002u; + } + inline bool AppearanceFlags::_internal_dont_hide() const { + return _impl_.dont_hide_; + } + inline bool AppearanceFlags::dont_hide() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.dont_hide) + return _internal_dont_hide(); + } + inline void AppearanceFlags::_internal_set_dont_hide(bool value) { + _impl_._has_bits_[1] |= 0x00000002u; + _impl_.dont_hide_ = value; + } + inline void AppearanceFlags::set_dont_hide(bool value) { + _internal_set_dont_hide(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.dont_hide) + } + + // optional bool translucent = 25; + inline bool AppearanceFlags::_internal_has_translucent() const { + bool value = (_impl_._has_bits_[1] & 0x00000004u) != 0; + return value; + } + inline bool AppearanceFlags::has_translucent() const { + return _internal_has_translucent(); + } + inline void AppearanceFlags::clear_translucent() { + _impl_.translucent_ = false; + _impl_._has_bits_[1] &= ~0x00000004u; + } + inline bool AppearanceFlags::_internal_translucent() const { + return _impl_.translucent_; + } + inline bool AppearanceFlags::translucent() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.translucent) + return _internal_translucent(); + } + inline void AppearanceFlags::_internal_set_translucent(bool value) { + _impl_._has_bits_[1] |= 0x00000004u; + _impl_.translucent_ = value; + } + inline void AppearanceFlags::set_translucent(bool value) { + _internal_set_translucent(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.translucent) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; + inline bool AppearanceFlags::_internal_has_shift() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + PROTOBUF_ASSUME(!value || _impl_.shift_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_shift() const { + return _internal_has_shift(); + } + inline void AppearanceFlags::clear_shift() { + if (_impl_.shift_ != nullptr) { + _impl_.shift_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000020u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagShift &AppearanceFlags::_internal_shift() const { + const ::Canary::protobuf::appearances::AppearanceFlagShift* p = _impl_.shift_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagShift_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagShift &AppearanceFlags::shift() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.shift) + return _internal_shift(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_shift( + ::Canary::protobuf::appearances::AppearanceFlagShift* shift + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.shift_); + } + _impl_.shift_ = shift; + if (shift) { + _impl_._has_bits_[0] |= 0x00000020u; + } else { + _impl_._has_bits_[0] &= ~0x00000020u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.shift) + } + inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::release_shift() { + _impl_._has_bits_[0] &= ~0x00000020u; + ::Canary::protobuf::appearances::AppearanceFlagShift* temp = _impl_.shift_; + _impl_.shift_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::unsafe_arena_release_shift() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.shift) + _impl_._has_bits_[0] &= ~0x00000020u; + ::Canary::protobuf::appearances::AppearanceFlagShift* temp = _impl_.shift_; + _impl_.shift_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::_internal_mutable_shift() { + _impl_._has_bits_[0] |= 0x00000020u; + if (_impl_.shift_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagShift>(GetArenaForAllocation()); + _impl_.shift_ = p; + } + return _impl_.shift_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::mutable_shift() { + ::Canary::protobuf::appearances::AppearanceFlagShift* _msg = _internal_mutable_shift(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.shift) + return _msg; + } + inline void AppearanceFlags::set_allocated_shift(::Canary::protobuf::appearances::AppearanceFlagShift* shift) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.shift_; + } + if (shift) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(shift); + if (message_arena != submessage_arena) { + shift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, shift, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000020u; + } else { + _impl_._has_bits_[0] &= ~0x00000020u; + } + _impl_.shift_ = shift; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.shift) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; + inline bool AppearanceFlags::_internal_has_height() const { + bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; + PROTOBUF_ASSUME(!value || _impl_.height_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_height() const { + return _internal_has_height(); + } + inline void AppearanceFlags::clear_height() { + if (_impl_.height_ != nullptr) { + _impl_.height_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000040u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagHeight &AppearanceFlags::_internal_height() const { + const ::Canary::protobuf::appearances::AppearanceFlagHeight* p = _impl_.height_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagHeight_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagHeight &AppearanceFlags::height() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.height) + return _internal_height(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_height( + ::Canary::protobuf::appearances::AppearanceFlagHeight* height + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.height_); + } + _impl_.height_ = height; + if (height) { + _impl_._has_bits_[0] |= 0x00000040u; + } else { + _impl_._has_bits_[0] &= ~0x00000040u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.height) + } + inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::release_height() { + _impl_._has_bits_[0] &= ~0x00000040u; + ::Canary::protobuf::appearances::AppearanceFlagHeight* temp = _impl_.height_; + _impl_.height_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::unsafe_arena_release_height() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.height) + _impl_._has_bits_[0] &= ~0x00000040u; + ::Canary::protobuf::appearances::AppearanceFlagHeight* temp = _impl_.height_; + _impl_.height_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::_internal_mutable_height() { + _impl_._has_bits_[0] |= 0x00000040u; + if (_impl_.height_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHeight>(GetArenaForAllocation()); + _impl_.height_ = p; + } + return _impl_.height_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::mutable_height() { + ::Canary::protobuf::appearances::AppearanceFlagHeight* _msg = _internal_mutable_height(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.height) + return _msg; + } + inline void AppearanceFlags::set_allocated_height(::Canary::protobuf::appearances::AppearanceFlagHeight* height) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.height_; + } + if (height) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(height); + if (message_arena != submessage_arena) { + height = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, height, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000040u; + } else { + _impl_._has_bits_[0] &= ~0x00000040u; + } + _impl_.height_ = height; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.height) + } + + // optional bool lying_object = 28; + inline bool AppearanceFlags::_internal_has_lying_object() const { + bool value = (_impl_._has_bits_[1] & 0x00000008u) != 0; + return value; + } + inline bool AppearanceFlags::has_lying_object() const { + return _internal_has_lying_object(); + } + inline void AppearanceFlags::clear_lying_object() { + _impl_.lying_object_ = false; + _impl_._has_bits_[1] &= ~0x00000008u; + } + inline bool AppearanceFlags::_internal_lying_object() const { + return _impl_.lying_object_; + } + inline bool AppearanceFlags::lying_object() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.lying_object) + return _internal_lying_object(); + } + inline void AppearanceFlags::_internal_set_lying_object(bool value) { + _impl_._has_bits_[1] |= 0x00000008u; + _impl_.lying_object_ = value; + } + inline void AppearanceFlags::set_lying_object(bool value) { + _internal_set_lying_object(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.lying_object) + } + + // optional bool animate_always = 29; + inline bool AppearanceFlags::_internal_has_animate_always() const { + bool value = (_impl_._has_bits_[1] & 0x00000010u) != 0; + return value; + } + inline bool AppearanceFlags::has_animate_always() const { + return _internal_has_animate_always(); + } + inline void AppearanceFlags::clear_animate_always() { + _impl_.animate_always_ = false; + _impl_._has_bits_[1] &= ~0x00000010u; + } + inline bool AppearanceFlags::_internal_animate_always() const { + return _impl_.animate_always_; + } + inline bool AppearanceFlags::animate_always() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.animate_always) + return _internal_animate_always(); + } + inline void AppearanceFlags::_internal_set_animate_always(bool value) { + _impl_._has_bits_[1] |= 0x00000010u; + _impl_.animate_always_ = value; + } + inline void AppearanceFlags::set_animate_always(bool value) { + _internal_set_animate_always(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.animate_always) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; + inline bool AppearanceFlags::_internal_has_automap() const { + bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0; + PROTOBUF_ASSUME(!value || _impl_.automap_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_automap() const { + return _internal_has_automap(); + } + inline void AppearanceFlags::clear_automap() { + if (_impl_.automap_ != nullptr) { + _impl_.automap_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000080u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagAutomap &AppearanceFlags::_internal_automap() const { + const ::Canary::protobuf::appearances::AppearanceFlagAutomap* p = _impl_.automap_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagAutomap_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagAutomap &AppearanceFlags::automap() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.automap) + return _internal_automap(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_automap( + ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.automap_); + } + _impl_.automap_ = automap; + if (automap) { + _impl_._has_bits_[0] |= 0x00000080u; + } else { + _impl_._has_bits_[0] &= ~0x00000080u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.automap) + } + inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::release_automap() { + _impl_._has_bits_[0] &= ~0x00000080u; + ::Canary::protobuf::appearances::AppearanceFlagAutomap* temp = _impl_.automap_; + _impl_.automap_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::unsafe_arena_release_automap() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.automap) + _impl_._has_bits_[0] &= ~0x00000080u; + ::Canary::protobuf::appearances::AppearanceFlagAutomap* temp = _impl_.automap_; + _impl_.automap_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::_internal_mutable_automap() { + _impl_._has_bits_[0] |= 0x00000080u; + if (_impl_.automap_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagAutomap>(GetArenaForAllocation()); + _impl_.automap_ = p; + } + return _impl_.automap_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::mutable_automap() { + ::Canary::protobuf::appearances::AppearanceFlagAutomap* _msg = _internal_mutable_automap(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.automap) + return _msg; + } + inline void AppearanceFlags::set_allocated_automap(::Canary::protobuf::appearances::AppearanceFlagAutomap* automap) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.automap_; + } + if (automap) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(automap); + if (message_arena != submessage_arena) { + automap = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, automap, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000080u; + } else { + _impl_._has_bits_[0] &= ~0x00000080u; + } + _impl_.automap_ = automap; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.automap) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; + inline bool AppearanceFlags::_internal_has_lenshelp() const { + bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0; + PROTOBUF_ASSUME(!value || _impl_.lenshelp_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_lenshelp() const { + return _internal_has_lenshelp(); + } + inline void AppearanceFlags::clear_lenshelp() { + if (_impl_.lenshelp_ != nullptr) { + _impl_.lenshelp_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000100u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &AppearanceFlags::_internal_lenshelp() const { + const ::Canary::protobuf::appearances::AppearanceFlagLenshelp* p = _impl_.lenshelp_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagLenshelp_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &AppearanceFlags::lenshelp() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.lenshelp) + return _internal_lenshelp(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_lenshelp( + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.lenshelp_); + } + _impl_.lenshelp_ = lenshelp; + if (lenshelp) { + _impl_._has_bits_[0] |= 0x00000100u; + } else { + _impl_._has_bits_[0] &= ~0x00000100u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.lenshelp) + } + inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::release_lenshelp() { + _impl_._has_bits_[0] &= ~0x00000100u; + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* temp = _impl_.lenshelp_; + _impl_.lenshelp_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::unsafe_arena_release_lenshelp() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.lenshelp) + _impl_._has_bits_[0] &= ~0x00000100u; + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* temp = _impl_.lenshelp_; + _impl_.lenshelp_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::_internal_mutable_lenshelp() { + _impl_._has_bits_[0] |= 0x00000100u; + if (_impl_.lenshelp_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLenshelp>(GetArenaForAllocation()); + _impl_.lenshelp_ = p; + } + return _impl_.lenshelp_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::mutable_lenshelp() { + ::Canary::protobuf::appearances::AppearanceFlagLenshelp* _msg = _internal_mutable_lenshelp(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.lenshelp) + return _msg; + } + inline void AppearanceFlags::set_allocated_lenshelp(::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.lenshelp_; + } + if (lenshelp) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(lenshelp); + if (message_arena != submessage_arena) { + lenshelp = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, lenshelp, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000100u; + } else { + _impl_._has_bits_[0] &= ~0x00000100u; + } + _impl_.lenshelp_ = lenshelp; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.lenshelp) + } + + // optional bool fullbank = 32; + inline bool AppearanceFlags::_internal_has_fullbank() const { + bool value = (_impl_._has_bits_[1] & 0x00000020u) != 0; + return value; + } + inline bool AppearanceFlags::has_fullbank() const { + return _internal_has_fullbank(); + } + inline void AppearanceFlags::clear_fullbank() { + _impl_.fullbank_ = false; + _impl_._has_bits_[1] &= ~0x00000020u; + } + inline bool AppearanceFlags::_internal_fullbank() const { + return _impl_.fullbank_; + } + inline bool AppearanceFlags::fullbank() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.fullbank) + return _internal_fullbank(); + } + inline void AppearanceFlags::_internal_set_fullbank(bool value) { + _impl_._has_bits_[1] |= 0x00000020u; + _impl_.fullbank_ = value; + } + inline void AppearanceFlags::set_fullbank(bool value) { + _internal_set_fullbank(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.fullbank) + } + + // optional bool ignore_look = 33; + inline bool AppearanceFlags::_internal_has_ignore_look() const { + bool value = (_impl_._has_bits_[1] & 0x00000040u) != 0; + return value; + } + inline bool AppearanceFlags::has_ignore_look() const { + return _internal_has_ignore_look(); + } + inline void AppearanceFlags::clear_ignore_look() { + _impl_.ignore_look_ = false; + _impl_._has_bits_[1] &= ~0x00000040u; + } + inline bool AppearanceFlags::_internal_ignore_look() const { + return _impl_.ignore_look_; + } + inline bool AppearanceFlags::ignore_look() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.ignore_look) + return _internal_ignore_look(); + } + inline void AppearanceFlags::_internal_set_ignore_look(bool value) { + _impl_._has_bits_[1] |= 0x00000040u; + _impl_.ignore_look_ = value; + } + inline void AppearanceFlags::set_ignore_look(bool value) { + _internal_set_ignore_look(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.ignore_look) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; + inline bool AppearanceFlags::_internal_has_clothes() const { + bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0; + PROTOBUF_ASSUME(!value || _impl_.clothes_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_clothes() const { + return _internal_has_clothes(); + } + inline void AppearanceFlags::clear_clothes() { + if (_impl_.clothes_ != nullptr) { + _impl_.clothes_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000200u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagClothes &AppearanceFlags::_internal_clothes() const { + const ::Canary::protobuf::appearances::AppearanceFlagClothes* p = _impl_.clothes_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagClothes_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagClothes &AppearanceFlags::clothes() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clothes) + return _internal_clothes(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_clothes( + ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.clothes_); + } + _impl_.clothes_ = clothes; + if (clothes) { + _impl_._has_bits_[0] |= 0x00000200u; + } else { + _impl_._has_bits_[0] &= ~0x00000200u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.clothes) + } + inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::release_clothes() { + _impl_._has_bits_[0] &= ~0x00000200u; + ::Canary::protobuf::appearances::AppearanceFlagClothes* temp = _impl_.clothes_; + _impl_.clothes_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::unsafe_arena_release_clothes() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.clothes) + _impl_._has_bits_[0] &= ~0x00000200u; + ::Canary::protobuf::appearances::AppearanceFlagClothes* temp = _impl_.clothes_; + _impl_.clothes_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::_internal_mutable_clothes() { + _impl_._has_bits_[0] |= 0x00000200u; + if (_impl_.clothes_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagClothes>(GetArenaForAllocation()); + _impl_.clothes_ = p; + } + return _impl_.clothes_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::mutable_clothes() { + ::Canary::protobuf::appearances::AppearanceFlagClothes* _msg = _internal_mutable_clothes(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.clothes) + return _msg; + } + inline void AppearanceFlags::set_allocated_clothes(::Canary::protobuf::appearances::AppearanceFlagClothes* clothes) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.clothes_; + } + if (clothes) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(clothes); + if (message_arena != submessage_arena) { + clothes = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, clothes, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000200u; + } else { + _impl_._has_bits_[0] &= ~0x00000200u; + } + _impl_.clothes_ = clothes; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.clothes) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; + inline bool AppearanceFlags::_internal_has_default_action() const { + bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0; + PROTOBUF_ASSUME(!value || _impl_.default_action_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_default_action() const { + return _internal_has_default_action(); + } + inline void AppearanceFlags::clear_default_action() { + if (_impl_.default_action_ != nullptr) { + _impl_.default_action_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000400u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &AppearanceFlags::_internal_default_action() const { + const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* p = _impl_.default_action_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagDefaultAction_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &AppearanceFlags::default_action() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.default_action) + return _internal_default_action(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_default_action( + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.default_action_); + } + _impl_.default_action_ = default_action; + if (default_action) { + _impl_._has_bits_[0] |= 0x00000400u; + } else { + _impl_._has_bits_[0] &= ~0x00000400u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.default_action) + } + inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::release_default_action() { + _impl_._has_bits_[0] &= ~0x00000400u; + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* temp = _impl_.default_action_; + _impl_.default_action_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::unsafe_arena_release_default_action() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.default_action) + _impl_._has_bits_[0] &= ~0x00000400u; + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* temp = _impl_.default_action_; + _impl_.default_action_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::_internal_mutable_default_action() { + _impl_._has_bits_[0] |= 0x00000400u; + if (_impl_.default_action_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagDefaultAction>(GetArenaForAllocation()); + _impl_.default_action_ = p; + } + return _impl_.default_action_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::mutable_default_action() { + ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* _msg = _internal_mutable_default_action(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.default_action) + return _msg; + } + inline void AppearanceFlags::set_allocated_default_action(::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.default_action_; + } + if (default_action) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(default_action); + if (message_arena != submessage_arena) { + default_action = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, default_action, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000400u; + } else { + _impl_._has_bits_[0] &= ~0x00000400u; + } + _impl_.default_action_ = default_action; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.default_action) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; + inline bool AppearanceFlags::_internal_has_market() const { + bool value = (_impl_._has_bits_[0] & 0x00000800u) != 0; + PROTOBUF_ASSUME(!value || _impl_.market_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_market() const { + return _internal_has_market(); + } + inline void AppearanceFlags::clear_market() { + if (_impl_.market_ != nullptr) { + _impl_.market_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00000800u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagMarket &AppearanceFlags::_internal_market() const { + const ::Canary::protobuf::appearances::AppearanceFlagMarket* p = _impl_.market_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagMarket_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagMarket &AppearanceFlags::market() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.market) + return _internal_market(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_market( + ::Canary::protobuf::appearances::AppearanceFlagMarket* market + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.market_); + } + _impl_.market_ = market; + if (market) { + _impl_._has_bits_[0] |= 0x00000800u; + } else { + _impl_._has_bits_[0] &= ~0x00000800u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.market) + } + inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::release_market() { + _impl_._has_bits_[0] &= ~0x00000800u; + ::Canary::protobuf::appearances::AppearanceFlagMarket* temp = _impl_.market_; + _impl_.market_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::unsafe_arena_release_market() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.market) + _impl_._has_bits_[0] &= ~0x00000800u; + ::Canary::protobuf::appearances::AppearanceFlagMarket* temp = _impl_.market_; + _impl_.market_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::_internal_mutable_market() { + _impl_._has_bits_[0] |= 0x00000800u; + if (_impl_.market_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagMarket>(GetArenaForAllocation()); + _impl_.market_ = p; + } + return _impl_.market_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::mutable_market() { + ::Canary::protobuf::appearances::AppearanceFlagMarket* _msg = _internal_mutable_market(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.market) + return _msg; + } + inline void AppearanceFlags::set_allocated_market(::Canary::protobuf::appearances::AppearanceFlagMarket* market) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.market_; + } + if (market) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(market); + if (message_arena != submessage_arena) { + market = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, market, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00000800u; + } else { + _impl_._has_bits_[0] &= ~0x00000800u; + } + _impl_.market_ = market; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.market) + } + + // optional bool wrap = 37; + inline bool AppearanceFlags::_internal_has_wrap() const { + bool value = (_impl_._has_bits_[1] & 0x00000080u) != 0; + return value; + } + inline bool AppearanceFlags::has_wrap() const { + return _internal_has_wrap(); + } + inline void AppearanceFlags::clear_wrap() { + _impl_.wrap_ = false; + _impl_._has_bits_[1] &= ~0x00000080u; + } + inline bool AppearanceFlags::_internal_wrap() const { + return _impl_.wrap_; + } + inline bool AppearanceFlags::wrap() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wrap) + return _internal_wrap(); + } + inline void AppearanceFlags::_internal_set_wrap(bool value) { + _impl_._has_bits_[1] |= 0x00000080u; + _impl_.wrap_ = value; + } + inline void AppearanceFlags::set_wrap(bool value) { + _internal_set_wrap(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wrap) + } + + // optional bool unwrap = 38; + inline bool AppearanceFlags::_internal_has_unwrap() const { + bool value = (_impl_._has_bits_[1] & 0x00000100u) != 0; + return value; + } + inline bool AppearanceFlags::has_unwrap() const { + return _internal_has_unwrap(); + } + inline void AppearanceFlags::clear_unwrap() { + _impl_.unwrap_ = false; + _impl_._has_bits_[1] &= ~0x00000100u; + } + inline bool AppearanceFlags::_internal_unwrap() const { + return _impl_.unwrap_; + } + inline bool AppearanceFlags::unwrap() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unwrap) + return _internal_unwrap(); + } + inline void AppearanceFlags::_internal_set_unwrap(bool value) { + _impl_._has_bits_[1] |= 0x00000100u; + _impl_.unwrap_ = value; + } + inline void AppearanceFlags::set_unwrap(bool value) { + _internal_set_unwrap(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unwrap) + } + + // optional bool topeffect = 39; + inline bool AppearanceFlags::_internal_has_topeffect() const { + bool value = (_impl_._has_bits_[1] & 0x00000200u) != 0; + return value; + } + inline bool AppearanceFlags::has_topeffect() const { + return _internal_has_topeffect(); + } + inline void AppearanceFlags::clear_topeffect() { + _impl_.topeffect_ = false; + _impl_._has_bits_[1] &= ~0x00000200u; + } + inline bool AppearanceFlags::_internal_topeffect() const { + return _impl_.topeffect_; + } + inline bool AppearanceFlags::topeffect() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.topeffect) + return _internal_topeffect(); + } + inline void AppearanceFlags::_internal_set_topeffect(bool value) { + _impl_._has_bits_[1] |= 0x00000200u; + _impl_.topeffect_ = value; + } + inline void AppearanceFlags::set_topeffect(bool value) { + _internal_set_topeffect(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.topeffect) + } + + // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; + inline int AppearanceFlags::_internal_npcsaledata_size() const { + return _impl_.npcsaledata_.size(); + } + inline int AppearanceFlags::npcsaledata_size() const { + return _internal_npcsaledata_size(); + } + inline void AppearanceFlags::clear_npcsaledata() { + _impl_.npcsaledata_.Clear(); + } + inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::mutable_npcsaledata(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) + return _impl_.npcsaledata_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC>* + AppearanceFlags::mutable_npcsaledata() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) + return &_impl_.npcsaledata_; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagNPC &AppearanceFlags::_internal_npcsaledata(int index) const { + return _impl_.npcsaledata_.Get(index); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagNPC &AppearanceFlags::npcsaledata(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) + return _internal_npcsaledata(index); + } + inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::_internal_add_npcsaledata() { + return _impl_.npcsaledata_.Add(); + } + inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::add_npcsaledata() { + ::Canary::protobuf::appearances::AppearanceFlagNPC* _add = _internal_add_npcsaledata(); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC> & + AppearanceFlags::npcsaledata() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) + return _impl_.npcsaledata_; + } + + // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; + inline bool AppearanceFlags::_internal_has_changedtoexpire() const { + bool value = (_impl_._has_bits_[0] & 0x00001000u) != 0; + PROTOBUF_ASSUME(!value || _impl_.changedtoexpire_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_changedtoexpire() const { + return _internal_has_changedtoexpire(); + } + inline void AppearanceFlags::clear_changedtoexpire() { + if (_impl_.changedtoexpire_ != nullptr) { + _impl_.changedtoexpire_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00001000u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &AppearanceFlags::_internal_changedtoexpire() const { + const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* p = _impl_.changedtoexpire_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagChangedToExpire_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &AppearanceFlags::changedtoexpire() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) + return _internal_changedtoexpire(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_changedtoexpire( + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.changedtoexpire_); + } + _impl_.changedtoexpire_ = changedtoexpire; + if (changedtoexpire) { + _impl_._has_bits_[0] |= 0x00001000u; + } else { + _impl_._has_bits_[0] &= ~0x00001000u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) + } + inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::release_changedtoexpire() { + _impl_._has_bits_[0] &= ~0x00001000u; + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* temp = _impl_.changedtoexpire_; + _impl_.changedtoexpire_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::unsafe_arena_release_changedtoexpire() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) + _impl_._has_bits_[0] &= ~0x00001000u; + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* temp = _impl_.changedtoexpire_; + _impl_.changedtoexpire_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::_internal_mutable_changedtoexpire() { + _impl_._has_bits_[0] |= 0x00001000u; + if (_impl_.changedtoexpire_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagChangedToExpire>(GetArenaForAllocation()); + _impl_.changedtoexpire_ = p; + } + return _impl_.changedtoexpire_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::mutable_changedtoexpire() { + ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* _msg = _internal_mutable_changedtoexpire(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) + return _msg; + } + inline void AppearanceFlags::set_allocated_changedtoexpire(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.changedtoexpire_; + } + if (changedtoexpire) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(changedtoexpire); + if (message_arena != submessage_arena) { + changedtoexpire = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, changedtoexpire, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00001000u; + } else { + _impl_._has_bits_[0] &= ~0x00001000u; + } + _impl_.changedtoexpire_ = changedtoexpire; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) + } + + // optional bool corpse = 42; + inline bool AppearanceFlags::_internal_has_corpse() const { + bool value = (_impl_._has_bits_[1] & 0x00000400u) != 0; + return value; + } + inline bool AppearanceFlags::has_corpse() const { + return _internal_has_corpse(); + } + inline void AppearanceFlags::clear_corpse() { + _impl_.corpse_ = false; + _impl_._has_bits_[1] &= ~0x00000400u; + } + inline bool AppearanceFlags::_internal_corpse() const { + return _impl_.corpse_; + } + inline bool AppearanceFlags::corpse() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.corpse) + return _internal_corpse(); + } + inline void AppearanceFlags::_internal_set_corpse(bool value) { + _impl_._has_bits_[1] |= 0x00000400u; + _impl_.corpse_ = value; + } + inline void AppearanceFlags::set_corpse(bool value) { + _internal_set_corpse(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.corpse) + } + + // optional bool player_corpse = 43; + inline bool AppearanceFlags::_internal_has_player_corpse() const { + bool value = (_impl_._has_bits_[1] & 0x00000800u) != 0; + return value; + } + inline bool AppearanceFlags::has_player_corpse() const { + return _internal_has_player_corpse(); + } + inline void AppearanceFlags::clear_player_corpse() { + _impl_.player_corpse_ = false; + _impl_._has_bits_[1] &= ~0x00000800u; + } + inline bool AppearanceFlags::_internal_player_corpse() const { + return _impl_.player_corpse_; + } + inline bool AppearanceFlags::player_corpse() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.player_corpse) + return _internal_player_corpse(); + } + inline void AppearanceFlags::_internal_set_player_corpse(bool value) { + _impl_._has_bits_[1] |= 0x00000800u; + _impl_.player_corpse_ = value; + } + inline void AppearanceFlags::set_player_corpse(bool value) { + _internal_set_player_corpse(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.player_corpse) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; + inline bool AppearanceFlags::_internal_has_cyclopediaitem() const { + bool value = (_impl_._has_bits_[0] & 0x00002000u) != 0; + PROTOBUF_ASSUME(!value || _impl_.cyclopediaitem_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_cyclopediaitem() const { + return _internal_has_cyclopediaitem(); + } + inline void AppearanceFlags::clear_cyclopediaitem() { + if (_impl_.cyclopediaitem_ != nullptr) { + _impl_.cyclopediaitem_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00002000u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &AppearanceFlags::_internal_cyclopediaitem() const { + const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* p = _impl_.cyclopediaitem_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagCyclopedia_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &AppearanceFlags::cyclopediaitem() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) + return _internal_cyclopediaitem(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_cyclopediaitem( + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cyclopediaitem_); + } + _impl_.cyclopediaitem_ = cyclopediaitem; + if (cyclopediaitem) { + _impl_._has_bits_[0] |= 0x00002000u; + } else { + _impl_._has_bits_[0] &= ~0x00002000u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) + } + inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::release_cyclopediaitem() { + _impl_._has_bits_[0] &= ~0x00002000u; + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* temp = _impl_.cyclopediaitem_; + _impl_.cyclopediaitem_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::unsafe_arena_release_cyclopediaitem() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) + _impl_._has_bits_[0] &= ~0x00002000u; + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* temp = _impl_.cyclopediaitem_; + _impl_.cyclopediaitem_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::_internal_mutable_cyclopediaitem() { + _impl_._has_bits_[0] |= 0x00002000u; + if (_impl_.cyclopediaitem_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagCyclopedia>(GetArenaForAllocation()); + _impl_.cyclopediaitem_ = p; + } + return _impl_.cyclopediaitem_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::mutable_cyclopediaitem() { + ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* _msg = _internal_mutable_cyclopediaitem(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) + return _msg; + } + inline void AppearanceFlags::set_allocated_cyclopediaitem(::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.cyclopediaitem_; + } + if (cyclopediaitem) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cyclopediaitem); + if (message_arena != submessage_arena) { + cyclopediaitem = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, cyclopediaitem, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00002000u; + } else { + _impl_._has_bits_[0] &= ~0x00002000u; + } + _impl_.cyclopediaitem_ = cyclopediaitem; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) + } + + // optional bool ammo = 45; + inline bool AppearanceFlags::_internal_has_ammo() const { + bool value = (_impl_._has_bits_[1] & 0x00001000u) != 0; + return value; + } + inline bool AppearanceFlags::has_ammo() const { + return _internal_has_ammo(); + } + inline void AppearanceFlags::clear_ammo() { + _impl_.ammo_ = false; + _impl_._has_bits_[1] &= ~0x00001000u; + } + inline bool AppearanceFlags::_internal_ammo() const { + return _impl_.ammo_; + } + inline bool AppearanceFlags::ammo() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.ammo) + return _internal_ammo(); + } + inline void AppearanceFlags::_internal_set_ammo(bool value) { + _impl_._has_bits_[1] |= 0x00001000u; + _impl_.ammo_ = value; + } + inline void AppearanceFlags::set_ammo(bool value) { + _internal_set_ammo(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.ammo) + } + + // optional bool show_off_socket = 46; + inline bool AppearanceFlags::_internal_has_show_off_socket() const { + bool value = (_impl_._has_bits_[1] & 0x00002000u) != 0; + return value; + } + inline bool AppearanceFlags::has_show_off_socket() const { + return _internal_has_show_off_socket(); + } + inline void AppearanceFlags::clear_show_off_socket() { + _impl_.show_off_socket_ = false; + _impl_._has_bits_[1] &= ~0x00002000u; + } + inline bool AppearanceFlags::_internal_show_off_socket() const { + return _impl_.show_off_socket_; + } + inline bool AppearanceFlags::show_off_socket() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.show_off_socket) + return _internal_show_off_socket(); + } + inline void AppearanceFlags::_internal_set_show_off_socket(bool value) { + _impl_._has_bits_[1] |= 0x00002000u; + _impl_.show_off_socket_ = value; + } + inline void AppearanceFlags::set_show_off_socket(bool value) { + _internal_set_show_off_socket(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.show_off_socket) + } + + // optional bool reportable = 47; + inline bool AppearanceFlags::_internal_has_reportable() const { + bool value = (_impl_._has_bits_[1] & 0x00004000u) != 0; + return value; + } + inline bool AppearanceFlags::has_reportable() const { + return _internal_has_reportable(); + } + inline void AppearanceFlags::clear_reportable() { + _impl_.reportable_ = false; + _impl_._has_bits_[1] &= ~0x00004000u; + } + inline bool AppearanceFlags::_internal_reportable() const { + return _impl_.reportable_; + } + inline bool AppearanceFlags::reportable() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reportable) + return _internal_reportable(); + } + inline void AppearanceFlags::_internal_set_reportable(bool value) { + _impl_._has_bits_[1] |= 0x00004000u; + _impl_.reportable_ = value; + } + inline void AppearanceFlags::set_reportable(bool value) { + _internal_set_reportable(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reportable) + } + + // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; + inline bool AppearanceFlags::_internal_has_upgradeclassification() const { + bool value = (_impl_._has_bits_[0] & 0x00004000u) != 0; + PROTOBUF_ASSUME(!value || _impl_.upgradeclassification_ != nullptr); + return value; + } + inline bool AppearanceFlags::has_upgradeclassification() const { + return _internal_has_upgradeclassification(); + } + inline void AppearanceFlags::clear_upgradeclassification() { + if (_impl_.upgradeclassification_ != nullptr) { + _impl_.upgradeclassification_->Clear(); + } + _impl_._has_bits_[0] &= ~0x00004000u; + } + inline const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &AppearanceFlags::_internal_upgradeclassification() const { + const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* p = _impl_.upgradeclassification_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagUpgradeClassification_default_instance_); + } + inline const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &AppearanceFlags::upgradeclassification() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) + return _internal_upgradeclassification(); + } + inline void AppearanceFlags::unsafe_arena_set_allocated_upgradeclassification( + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.upgradeclassification_); + } + _impl_.upgradeclassification_ = upgradeclassification; + if (upgradeclassification) { + _impl_._has_bits_[0] |= 0x00004000u; + } else { + _impl_._has_bits_[0] &= ~0x00004000u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) + } + inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::release_upgradeclassification() { + _impl_._has_bits_[0] &= ~0x00004000u; + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* temp = _impl_.upgradeclassification_; + _impl_.upgradeclassification_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::unsafe_arena_release_upgradeclassification() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) + _impl_._has_bits_[0] &= ~0x00004000u; + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* temp = _impl_.upgradeclassification_; + _impl_.upgradeclassification_ = nullptr; + return temp; + } + inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::_internal_mutable_upgradeclassification() { + _impl_._has_bits_[0] |= 0x00004000u; + if (_impl_.upgradeclassification_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification>(GetArenaForAllocation()); + _impl_.upgradeclassification_ = p; + } + return _impl_.upgradeclassification_; + } + inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::mutable_upgradeclassification() { + ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* _msg = _internal_mutable_upgradeclassification(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) + return _msg; + } + inline void AppearanceFlags::set_allocated_upgradeclassification(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.upgradeclassification_; + } + if (upgradeclassification) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(upgradeclassification); + if (message_arena != submessage_arena) { + upgradeclassification = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, upgradeclassification, submessage_arena + ); + } + _impl_._has_bits_[0] |= 0x00004000u; + } else { + _impl_._has_bits_[0] &= ~0x00004000u; + } + _impl_.upgradeclassification_ = upgradeclassification; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) + } + + // optional bool reverse_addons_east = 49; + inline bool AppearanceFlags::_internal_has_reverse_addons_east() const { + bool value = (_impl_._has_bits_[1] & 0x00008000u) != 0; + return value; + } + inline bool AppearanceFlags::has_reverse_addons_east() const { + return _internal_has_reverse_addons_east(); + } + inline void AppearanceFlags::clear_reverse_addons_east() { + _impl_.reverse_addons_east_ = false; + _impl_._has_bits_[1] &= ~0x00008000u; + } + inline bool AppearanceFlags::_internal_reverse_addons_east() const { + return _impl_.reverse_addons_east_; + } + inline bool AppearanceFlags::reverse_addons_east() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_east) + return _internal_reverse_addons_east(); + } + inline void AppearanceFlags::_internal_set_reverse_addons_east(bool value) { + _impl_._has_bits_[1] |= 0x00008000u; + _impl_.reverse_addons_east_ = value; + } + inline void AppearanceFlags::set_reverse_addons_east(bool value) { + _internal_set_reverse_addons_east(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_east) + } + + // optional bool reverse_addons_west = 50; + inline bool AppearanceFlags::_internal_has_reverse_addons_west() const { + bool value = (_impl_._has_bits_[1] & 0x00010000u) != 0; + return value; + } + inline bool AppearanceFlags::has_reverse_addons_west() const { + return _internal_has_reverse_addons_west(); + } + inline void AppearanceFlags::clear_reverse_addons_west() { + _impl_.reverse_addons_west_ = false; + _impl_._has_bits_[1] &= ~0x00010000u; + } + inline bool AppearanceFlags::_internal_reverse_addons_west() const { + return _impl_.reverse_addons_west_; + } + inline bool AppearanceFlags::reverse_addons_west() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_west) + return _internal_reverse_addons_west(); + } + inline void AppearanceFlags::_internal_set_reverse_addons_west(bool value) { + _impl_._has_bits_[1] |= 0x00010000u; + _impl_.reverse_addons_west_ = value; + } + inline void AppearanceFlags::set_reverse_addons_west(bool value) { + _internal_set_reverse_addons_west(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_west) + } + + // optional bool reverse_addons_south = 51; + inline bool AppearanceFlags::_internal_has_reverse_addons_south() const { + bool value = (_impl_._has_bits_[1] & 0x00020000u) != 0; + return value; + } + inline bool AppearanceFlags::has_reverse_addons_south() const { + return _internal_has_reverse_addons_south(); + } + inline void AppearanceFlags::clear_reverse_addons_south() { + _impl_.reverse_addons_south_ = false; + _impl_._has_bits_[1] &= ~0x00020000u; + } + inline bool AppearanceFlags::_internal_reverse_addons_south() const { + return _impl_.reverse_addons_south_; + } + inline bool AppearanceFlags::reverse_addons_south() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_south) + return _internal_reverse_addons_south(); + } + inline void AppearanceFlags::_internal_set_reverse_addons_south(bool value) { + _impl_._has_bits_[1] |= 0x00020000u; + _impl_.reverse_addons_south_ = value; + } + inline void AppearanceFlags::set_reverse_addons_south(bool value) { + _internal_set_reverse_addons_south(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_south) + } + + // optional bool reverse_addons_north = 52; + inline bool AppearanceFlags::_internal_has_reverse_addons_north() const { + bool value = (_impl_._has_bits_[1] & 0x00040000u) != 0; + return value; + } + inline bool AppearanceFlags::has_reverse_addons_north() const { + return _internal_has_reverse_addons_north(); + } + inline void AppearanceFlags::clear_reverse_addons_north() { + _impl_.reverse_addons_north_ = false; + _impl_._has_bits_[1] &= ~0x00040000u; + } + inline bool AppearanceFlags::_internal_reverse_addons_north() const { + return _impl_.reverse_addons_north_; + } + inline bool AppearanceFlags::reverse_addons_north() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_north) + return _internal_reverse_addons_north(); + } + inline void AppearanceFlags::_internal_set_reverse_addons_north(bool value) { + _impl_._has_bits_[1] |= 0x00040000u; + _impl_.reverse_addons_north_ = value; + } + inline void AppearanceFlags::set_reverse_addons_north(bool value) { + _internal_set_reverse_addons_north(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_north) + } + + // optional bool wearout = 53; + inline bool AppearanceFlags::_internal_has_wearout() const { + bool value = (_impl_._has_bits_[1] & 0x00080000u) != 0; + return value; + } + inline bool AppearanceFlags::has_wearout() const { + return _internal_has_wearout(); + } + inline void AppearanceFlags::clear_wearout() { + _impl_.wearout_ = false; + _impl_._has_bits_[1] &= ~0x00080000u; + } + inline bool AppearanceFlags::_internal_wearout() const { + return _impl_.wearout_; + } + inline bool AppearanceFlags::wearout() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wearout) + return _internal_wearout(); + } + inline void AppearanceFlags::_internal_set_wearout(bool value) { + _impl_._has_bits_[1] |= 0x00080000u; + _impl_.wearout_ = value; + } + inline void AppearanceFlags::set_wearout(bool value) { + _internal_set_wearout(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wearout) + } + + // optional bool clockexpire = 54; + inline bool AppearanceFlags::_internal_has_clockexpire() const { + bool value = (_impl_._has_bits_[1] & 0x00100000u) != 0; + return value; + } + inline bool AppearanceFlags::has_clockexpire() const { + return _internal_has_clockexpire(); + } + inline void AppearanceFlags::clear_clockexpire() { + _impl_.clockexpire_ = false; + _impl_._has_bits_[1] &= ~0x00100000u; + } + inline bool AppearanceFlags::_internal_clockexpire() const { + return _impl_.clockexpire_; + } + inline bool AppearanceFlags::clockexpire() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clockexpire) + return _internal_clockexpire(); + } + inline void AppearanceFlags::_internal_set_clockexpire(bool value) { + _impl_._has_bits_[1] |= 0x00100000u; + _impl_.clockexpire_ = value; + } + inline void AppearanceFlags::set_clockexpire(bool value) { + _internal_set_clockexpire(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.clockexpire) + } + + // optional bool expire = 55; + inline bool AppearanceFlags::_internal_has_expire() const { + bool value = (_impl_._has_bits_[1] & 0x00200000u) != 0; + return value; + } + inline bool AppearanceFlags::has_expire() const { + return _internal_has_expire(); + } + inline void AppearanceFlags::clear_expire() { + _impl_.expire_ = false; + _impl_._has_bits_[1] &= ~0x00200000u; + } + inline bool AppearanceFlags::_internal_expire() const { + return _impl_.expire_; + } + inline bool AppearanceFlags::expire() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.expire) + return _internal_expire(); + } + inline void AppearanceFlags::_internal_set_expire(bool value) { + _impl_._has_bits_[1] |= 0x00200000u; + _impl_.expire_ = value; + } + inline void AppearanceFlags::set_expire(bool value) { + _internal_set_expire(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.expire) + } + + // optional bool expirestop = 56; + inline bool AppearanceFlags::_internal_has_expirestop() const { + bool value = (_impl_._has_bits_[1] & 0x00400000u) != 0; + return value; + } + inline bool AppearanceFlags::has_expirestop() const { + return _internal_has_expirestop(); + } + inline void AppearanceFlags::clear_expirestop() { + _impl_.expirestop_ = false; + _impl_._has_bits_[1] &= ~0x00400000u; + } + inline bool AppearanceFlags::_internal_expirestop() const { + return _impl_.expirestop_; + } + inline bool AppearanceFlags::expirestop() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.expirestop) + return _internal_expirestop(); + } + inline void AppearanceFlags::_internal_set_expirestop(bool value) { + _impl_._has_bits_[1] |= 0x00400000u; + _impl_.expirestop_ = value; + } + inline void AppearanceFlags::set_expirestop(bool value) { + _internal_set_expirestop(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.expirestop) + } + + // optional bool wrapkit = 57; + inline bool AppearanceFlags::_internal_has_wrapkit() const { + bool value = (_impl_._has_bits_[1] & 0x00800000u) != 0; + return value; + } + inline bool AppearanceFlags::has_wrapkit() const { + return _internal_has_wrapkit(); + } + inline void AppearanceFlags::clear_wrapkit() { + _impl_.wrapkit_ = false; + _impl_._has_bits_[1] &= ~0x00800000u; + } + inline bool AppearanceFlags::_internal_wrapkit() const { + return _impl_.wrapkit_; + } + inline bool AppearanceFlags::wrapkit() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wrapkit) + return _internal_wrapkit(); + } + inline void AppearanceFlags::_internal_set_wrapkit(bool value) { + _impl_._has_bits_[1] |= 0x00800000u; + _impl_.wrapkit_ = value; + } + inline void AppearanceFlags::set_wrapkit(bool value) { + _internal_set_wrapkit(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wrapkit) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagUpgradeClassification + + // optional uint32 upgrade_classification = 1; + inline bool AppearanceFlagUpgradeClassification::_internal_has_upgrade_classification() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagUpgradeClassification::has_upgrade_classification() const { + return _internal_has_upgrade_classification(); + } + inline void AppearanceFlagUpgradeClassification::clear_upgrade_classification() { + _impl_.upgrade_classification_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagUpgradeClassification::_internal_upgrade_classification() const { + return _impl_.upgrade_classification_; + } + inline uint32_t AppearanceFlagUpgradeClassification::upgrade_classification() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification.upgrade_classification) + return _internal_upgrade_classification(); + } + inline void AppearanceFlagUpgradeClassification::_internal_set_upgrade_classification(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.upgrade_classification_ = value; + } + inline void AppearanceFlagUpgradeClassification::set_upgrade_classification(uint32_t value) { + _internal_set_upgrade_classification(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification.upgrade_classification) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagBank + + // optional uint32 waypoints = 1; + inline bool AppearanceFlagBank::_internal_has_waypoints() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagBank::has_waypoints() const { + return _internal_has_waypoints(); + } + inline void AppearanceFlagBank::clear_waypoints() { + _impl_.waypoints_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagBank::_internal_waypoints() const { + return _impl_.waypoints_; + } + inline uint32_t AppearanceFlagBank::waypoints() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagBank.waypoints) + return _internal_waypoints(); + } + inline void AppearanceFlagBank::_internal_set_waypoints(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.waypoints_ = value; + } + inline void AppearanceFlagBank::set_waypoints(uint32_t value) { + _internal_set_waypoints(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagBank.waypoints) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagWrite + + // optional uint32 max_text_length = 1; + inline bool AppearanceFlagWrite::_internal_has_max_text_length() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagWrite::has_max_text_length() const { + return _internal_has_max_text_length(); + } + inline void AppearanceFlagWrite::clear_max_text_length() { + _impl_.max_text_length_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagWrite::_internal_max_text_length() const { + return _impl_.max_text_length_; + } + inline uint32_t AppearanceFlagWrite::max_text_length() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagWrite.max_text_length) + return _internal_max_text_length(); + } + inline void AppearanceFlagWrite::_internal_set_max_text_length(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.max_text_length_ = value; + } + inline void AppearanceFlagWrite::set_max_text_length(uint32_t value) { + _internal_set_max_text_length(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagWrite.max_text_length) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagWriteOnce + + // optional uint32 max_text_length_once = 1; + inline bool AppearanceFlagWriteOnce::_internal_has_max_text_length_once() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagWriteOnce::has_max_text_length_once() const { + return _internal_has_max_text_length_once(); + } + inline void AppearanceFlagWriteOnce::clear_max_text_length_once() { + _impl_.max_text_length_once_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagWriteOnce::_internal_max_text_length_once() const { + return _impl_.max_text_length_once_; + } + inline uint32_t AppearanceFlagWriteOnce::max_text_length_once() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagWriteOnce.max_text_length_once) + return _internal_max_text_length_once(); + } + inline void AppearanceFlagWriteOnce::_internal_set_max_text_length_once(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.max_text_length_once_ = value; + } + inline void AppearanceFlagWriteOnce::set_max_text_length_once(uint32_t value) { + _internal_set_max_text_length_once(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagWriteOnce.max_text_length_once) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagLight + + // optional uint32 brightness = 1; + inline bool AppearanceFlagLight::_internal_has_brightness() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagLight::has_brightness() const { + return _internal_has_brightness(); + } + inline void AppearanceFlagLight::clear_brightness() { + _impl_.brightness_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagLight::_internal_brightness() const { + return _impl_.brightness_; + } + inline uint32_t AppearanceFlagLight::brightness() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLight.brightness) + return _internal_brightness(); + } + inline void AppearanceFlagLight::_internal_set_brightness(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.brightness_ = value; + } + inline void AppearanceFlagLight::set_brightness(uint32_t value) { + _internal_set_brightness(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLight.brightness) + } + + // optional uint32 color = 2; + inline bool AppearanceFlagLight::_internal_has_color() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool AppearanceFlagLight::has_color() const { + return _internal_has_color(); + } + inline void AppearanceFlagLight::clear_color() { + _impl_.color_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t AppearanceFlagLight::_internal_color() const { + return _impl_.color_; + } + inline uint32_t AppearanceFlagLight::color() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLight.color) + return _internal_color(); + } + inline void AppearanceFlagLight::_internal_set_color(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.color_ = value; + } + inline void AppearanceFlagLight::set_color(uint32_t value) { + _internal_set_color(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLight.color) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagHeight + + // optional uint32 elevation = 1; + inline bool AppearanceFlagHeight::_internal_has_elevation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagHeight::has_elevation() const { + return _internal_has_elevation(); + } + inline void AppearanceFlagHeight::clear_elevation() { + _impl_.elevation_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagHeight::_internal_elevation() const { + return _impl_.elevation_; + } + inline uint32_t AppearanceFlagHeight::elevation() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagHeight.elevation) + return _internal_elevation(); + } + inline void AppearanceFlagHeight::_internal_set_elevation(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.elevation_ = value; + } + inline void AppearanceFlagHeight::set_elevation(uint32_t value) { + _internal_set_elevation(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagHeight.elevation) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagShift + + // optional uint32 x = 1; + inline bool AppearanceFlagShift::_internal_has_x() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagShift::has_x() const { + return _internal_has_x(); + } + inline void AppearanceFlagShift::clear_x() { + _impl_.x_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagShift::_internal_x() const { + return _impl_.x_; + } + inline uint32_t AppearanceFlagShift::x() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagShift.x) + return _internal_x(); + } + inline void AppearanceFlagShift::_internal_set_x(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.x_ = value; + } + inline void AppearanceFlagShift::set_x(uint32_t value) { + _internal_set_x(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagShift.x) + } + + // optional uint32 y = 2; + inline bool AppearanceFlagShift::_internal_has_y() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool AppearanceFlagShift::has_y() const { + return _internal_has_y(); + } + inline void AppearanceFlagShift::clear_y() { + _impl_.y_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t AppearanceFlagShift::_internal_y() const { + return _impl_.y_; + } + inline uint32_t AppearanceFlagShift::y() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagShift.y) + return _internal_y(); + } + inline void AppearanceFlagShift::_internal_set_y(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.y_ = value; + } + inline void AppearanceFlagShift::set_y(uint32_t value) { + _internal_set_y(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagShift.y) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagClothes + + // optional uint32 slot = 1; + inline bool AppearanceFlagClothes::_internal_has_slot() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagClothes::has_slot() const { + return _internal_has_slot(); + } + inline void AppearanceFlagClothes::clear_slot() { + _impl_.slot_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagClothes::_internal_slot() const { + return _impl_.slot_; + } + inline uint32_t AppearanceFlagClothes::slot() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagClothes.slot) + return _internal_slot(); + } + inline void AppearanceFlagClothes::_internal_set_slot(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.slot_ = value; + } + inline void AppearanceFlagClothes::set_slot(uint32_t value) { + _internal_set_slot(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagClothes.slot) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagDefaultAction + + // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; + inline bool AppearanceFlagDefaultAction::_internal_has_action() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagDefaultAction::has_action() const { + return _internal_has_action(); + } + inline void AppearanceFlagDefaultAction::clear_action() { + _impl_.action_ = 0; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline ::Canary::protobuf::appearances::PLAYER_ACTION AppearanceFlagDefaultAction::_internal_action() const { + return static_cast<::Canary::protobuf::appearances::PLAYER_ACTION>(_impl_.action_); + } + inline ::Canary::protobuf::appearances::PLAYER_ACTION AppearanceFlagDefaultAction::action() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagDefaultAction.action) + return _internal_action(); + } + inline void AppearanceFlagDefaultAction::_internal_set_action(::Canary::protobuf::appearances::PLAYER_ACTION value) { + assert(::Canary::protobuf::appearances::PLAYER_ACTION_IsValid(value)); + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.action_ = value; + } + inline void AppearanceFlagDefaultAction::set_action(::Canary::protobuf::appearances::PLAYER_ACTION value) { + _internal_set_action(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagDefaultAction.action) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagMarket + + // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; + inline bool AppearanceFlagMarket::_internal_has_category() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool AppearanceFlagMarket::has_category() const { + return _internal_has_category(); + } + inline void AppearanceFlagMarket::clear_category() { + _impl_.category_ = 1; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline ::Canary::protobuf::appearances::ITEM_CATEGORY AppearanceFlagMarket::_internal_category() const { + return static_cast<::Canary::protobuf::appearances::ITEM_CATEGORY>(_impl_.category_); + } + inline ::Canary::protobuf::appearances::ITEM_CATEGORY AppearanceFlagMarket::category() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.category) + return _internal_category(); + } + inline void AppearanceFlagMarket::_internal_set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value) { + assert(::Canary::protobuf::appearances::ITEM_CATEGORY_IsValid(value)); + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.category_ = value; + } + inline void AppearanceFlagMarket::set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value) { + _internal_set_category(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.category) + } + + // optional uint32 trade_as_object_id = 2; + inline bool AppearanceFlagMarket::_internal_has_trade_as_object_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagMarket::has_trade_as_object_id() const { + return _internal_has_trade_as_object_id(); + } + inline void AppearanceFlagMarket::clear_trade_as_object_id() { + _impl_.trade_as_object_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagMarket::_internal_trade_as_object_id() const { + return _impl_.trade_as_object_id_; + } + inline uint32_t AppearanceFlagMarket::trade_as_object_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.trade_as_object_id) + return _internal_trade_as_object_id(); + } + inline void AppearanceFlagMarket::_internal_set_trade_as_object_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.trade_as_object_id_ = value; + } + inline void AppearanceFlagMarket::set_trade_as_object_id(uint32_t value) { + _internal_set_trade_as_object_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.trade_as_object_id) + } + + // optional uint32 show_as_object_id = 3; + inline bool AppearanceFlagMarket::_internal_has_show_as_object_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool AppearanceFlagMarket::has_show_as_object_id() const { + return _internal_has_show_as_object_id(); + } + inline void AppearanceFlagMarket::clear_show_as_object_id() { + _impl_.show_as_object_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t AppearanceFlagMarket::_internal_show_as_object_id() const { + return _impl_.show_as_object_id_; + } + inline uint32_t AppearanceFlagMarket::show_as_object_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.show_as_object_id) + return _internal_show_as_object_id(); + } + inline void AppearanceFlagMarket::_internal_set_show_as_object_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.show_as_object_id_ = value; + } + inline void AppearanceFlagMarket::set_show_as_object_id(uint32_t value) { + _internal_set_show_as_object_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.show_as_object_id) + } + + // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; + inline int AppearanceFlagMarket::_internal_restrict_to_profession_size() const { + return _impl_.restrict_to_profession_.size(); + } + inline int AppearanceFlagMarket::restrict_to_profession_size() const { + return _internal_restrict_to_profession_size(); + } + inline void AppearanceFlagMarket::clear_restrict_to_profession() { + _impl_.restrict_to_profession_.Clear(); + } + inline ::Canary::protobuf::appearances::PLAYER_PROFESSION AppearanceFlagMarket::_internal_restrict_to_profession(int index) const { + return static_cast<::Canary::protobuf::appearances::PLAYER_PROFESSION>(_impl_.restrict_to_profession_.Get(index)); + } + inline ::Canary::protobuf::appearances::PLAYER_PROFESSION AppearanceFlagMarket::restrict_to_profession(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) + return _internal_restrict_to_profession(index); + } + inline void AppearanceFlagMarket::set_restrict_to_profession(int index, ::Canary::protobuf::appearances::PLAYER_PROFESSION value) { + assert(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(value)); + _impl_.restrict_to_profession_.Set(index, value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) + } + inline void AppearanceFlagMarket::_internal_add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value) { + assert(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(value)); + _impl_.restrict_to_profession_.Add(value); + } + inline void AppearanceFlagMarket::add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value) { + _internal_add_restrict_to_profession(value); + // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField & + AppearanceFlagMarket::restrict_to_profession() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) + return _impl_.restrict_to_profession_; + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* + AppearanceFlagMarket::_internal_mutable_restrict_to_profession() { + return &_impl_.restrict_to_profession_; + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* + AppearanceFlagMarket::mutable_restrict_to_profession() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) + return _internal_mutable_restrict_to_profession(); + } + + // optional uint32 minimum_level = 6; + inline bool AppearanceFlagMarket::_internal_has_minimum_level() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool AppearanceFlagMarket::has_minimum_level() const { + return _internal_has_minimum_level(); + } + inline void AppearanceFlagMarket::clear_minimum_level() { + _impl_.minimum_level_ = 0u; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline uint32_t AppearanceFlagMarket::_internal_minimum_level() const { + return _impl_.minimum_level_; + } + inline uint32_t AppearanceFlagMarket::minimum_level() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.minimum_level) + return _internal_minimum_level(); + } + inline void AppearanceFlagMarket::_internal_set_minimum_level(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.minimum_level_ = value; + } + inline void AppearanceFlagMarket::set_minimum_level(uint32_t value) { + _internal_set_minimum_level(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.minimum_level) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagNPC + + // optional bytes name = 1; + inline bool AppearanceFlagNPC::_internal_has_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagNPC::has_name() const { + return _internal_has_name(); + } + inline void AppearanceFlagNPC::clear_name() { + _impl_.name_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline const std::string &AppearanceFlagNPC::name() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.name) + return _internal_name(); + } + template + inline PROTOBUF_ALWAYS_INLINE void AppearanceFlagNPC::set_name(ArgT0 &&arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.name) + } + inline std::string* AppearanceFlagNPC::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.name) + return _s; + } + inline const std::string &AppearanceFlagNPC::_internal_name() const { + return _impl_.name_.Get(); + } + inline void AppearanceFlagNPC::_internal_set_name(const std::string &value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.name_.Set(value, GetArenaForAllocation()); + } + inline std::string* AppearanceFlagNPC::_internal_mutable_name() { + _impl_._has_bits_[0] |= 0x00000001u; + return _impl_.name_.Mutable(GetArenaForAllocation()); + } + inline std::string* AppearanceFlagNPC::release_name() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.name) + if (!_internal_has_name()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000001u; + auto* p = _impl_.name_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; + } + inline void AppearanceFlagNPC::set_allocated_name(std::string* name) { + if (name != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.name) + } + + // optional bytes location = 2; + inline bool AppearanceFlagNPC::_internal_has_location() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool AppearanceFlagNPC::has_location() const { + return _internal_has_location(); + } + inline void AppearanceFlagNPC::clear_location() { + _impl_.location_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline const std::string &AppearanceFlagNPC::location() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.location) + return _internal_location(); + } + template + inline PROTOBUF_ALWAYS_INLINE void AppearanceFlagNPC::set_location(ArgT0 &&arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.location_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.location) + } + inline std::string* AppearanceFlagNPC::mutable_location() { + std::string* _s = _internal_mutable_location(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.location) + return _s; + } + inline const std::string &AppearanceFlagNPC::_internal_location() const { + return _impl_.location_.Get(); + } + inline void AppearanceFlagNPC::_internal_set_location(const std::string &value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.location_.Set(value, GetArenaForAllocation()); + } + inline std::string* AppearanceFlagNPC::_internal_mutable_location() { + _impl_._has_bits_[0] |= 0x00000002u; + return _impl_.location_.Mutable(GetArenaForAllocation()); + } + inline std::string* AppearanceFlagNPC::release_location() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.location) + if (!_internal_has_location()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000002u; + auto* p = _impl_.location_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.location_.IsDefault()) { + _impl_.location_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; + } + inline void AppearanceFlagNPC::set_allocated_location(std::string* location) { + if (location != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + _impl_.location_.SetAllocated(location, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.location_.IsDefault()) { + _impl_.location_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.location) + } + + // optional uint32 sale_price = 3; + inline bool AppearanceFlagNPC::_internal_has_sale_price() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool AppearanceFlagNPC::has_sale_price() const { + return _internal_has_sale_price(); + } + inline void AppearanceFlagNPC::clear_sale_price() { + _impl_.sale_price_ = 0u; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline uint32_t AppearanceFlagNPC::_internal_sale_price() const { + return _impl_.sale_price_; + } + inline uint32_t AppearanceFlagNPC::sale_price() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.sale_price) + return _internal_sale_price(); + } + inline void AppearanceFlagNPC::_internal_set_sale_price(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.sale_price_ = value; + } + inline void AppearanceFlagNPC::set_sale_price(uint32_t value) { + _internal_set_sale_price(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.sale_price) + } + + // optional uint32 buy_price = 4; + inline bool AppearanceFlagNPC::_internal_has_buy_price() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + return value; + } + inline bool AppearanceFlagNPC::has_buy_price() const { + return _internal_has_buy_price(); + } + inline void AppearanceFlagNPC::clear_buy_price() { + _impl_.buy_price_ = 0u; + _impl_._has_bits_[0] &= ~0x00000010u; + } + inline uint32_t AppearanceFlagNPC::_internal_buy_price() const { + return _impl_.buy_price_; + } + inline uint32_t AppearanceFlagNPC::buy_price() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.buy_price) + return _internal_buy_price(); + } + inline void AppearanceFlagNPC::_internal_set_buy_price(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000010u; + _impl_.buy_price_ = value; + } + inline void AppearanceFlagNPC::set_buy_price(uint32_t value) { + _internal_set_buy_price(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.buy_price) + } + + // optional uint32 currency_object_type_id = 5; + inline bool AppearanceFlagNPC::_internal_has_currency_object_type_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + return value; + } + inline bool AppearanceFlagNPC::has_currency_object_type_id() const { + return _internal_has_currency_object_type_id(); + } + inline void AppearanceFlagNPC::clear_currency_object_type_id() { + _impl_.currency_object_type_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000020u; + } + inline uint32_t AppearanceFlagNPC::_internal_currency_object_type_id() const { + return _impl_.currency_object_type_id_; + } + inline uint32_t AppearanceFlagNPC::currency_object_type_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.currency_object_type_id) + return _internal_currency_object_type_id(); + } + inline void AppearanceFlagNPC::_internal_set_currency_object_type_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000020u; + _impl_.currency_object_type_id_ = value; + } + inline void AppearanceFlagNPC::set_currency_object_type_id(uint32_t value) { + _internal_set_currency_object_type_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.currency_object_type_id) + } + + // optional bytes currency_quest_flag_display_name = 6; + inline bool AppearanceFlagNPC::_internal_has_currency_quest_flag_display_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool AppearanceFlagNPC::has_currency_quest_flag_display_name() const { + return _internal_has_currency_quest_flag_display_name(); + } + inline void AppearanceFlagNPC::clear_currency_quest_flag_display_name() { + _impl_.currency_quest_flag_display_name_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline const std::string &AppearanceFlagNPC::currency_quest_flag_display_name() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) + return _internal_currency_quest_flag_display_name(); + } + template + inline PROTOBUF_ALWAYS_INLINE void AppearanceFlagNPC::set_currency_quest_flag_display_name(ArgT0 &&arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.currency_quest_flag_display_name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) + } + inline std::string* AppearanceFlagNPC::mutable_currency_quest_flag_display_name() { + std::string* _s = _internal_mutable_currency_quest_flag_display_name(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) + return _s; + } + inline const std::string &AppearanceFlagNPC::_internal_currency_quest_flag_display_name() const { + return _impl_.currency_quest_flag_display_name_.Get(); + } + inline void AppearanceFlagNPC::_internal_set_currency_quest_flag_display_name(const std::string &value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.currency_quest_flag_display_name_.Set(value, GetArenaForAllocation()); + } + inline std::string* AppearanceFlagNPC::_internal_mutable_currency_quest_flag_display_name() { + _impl_._has_bits_[0] |= 0x00000004u; + return _impl_.currency_quest_flag_display_name_.Mutable(GetArenaForAllocation()); + } + inline std::string* AppearanceFlagNPC::release_currency_quest_flag_display_name() { + // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) + if (!_internal_has_currency_quest_flag_display_name()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000004u; + auto* p = _impl_.currency_quest_flag_display_name_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.currency_quest_flag_display_name_.IsDefault()) { + _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; + } + inline void AppearanceFlagNPC::set_allocated_currency_quest_flag_display_name(std::string* currency_quest_flag_display_name) { + if (currency_quest_flag_display_name != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + _impl_.currency_quest_flag_display_name_.SetAllocated(currency_quest_flag_display_name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.currency_quest_flag_display_name_.IsDefault()) { + _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagAutomap + + // optional uint32 color = 1; + inline bool AppearanceFlagAutomap::_internal_has_color() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagAutomap::has_color() const { + return _internal_has_color(); + } + inline void AppearanceFlagAutomap::clear_color() { + _impl_.color_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagAutomap::_internal_color() const { + return _impl_.color_; + } + inline uint32_t AppearanceFlagAutomap::color() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagAutomap.color) + return _internal_color(); + } + inline void AppearanceFlagAutomap::_internal_set_color(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.color_ = value; + } + inline void AppearanceFlagAutomap::set_color(uint32_t value) { + _internal_set_color(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagAutomap.color) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagHook + + // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; + inline bool AppearanceFlagHook::_internal_has_direction() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagHook::has_direction() const { + return _internal_has_direction(); + } + inline void AppearanceFlagHook::clear_direction() { + _impl_.direction_ = 1; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline ::Canary::protobuf::appearances::HOOK_TYPE AppearanceFlagHook::_internal_direction() const { + return static_cast<::Canary::protobuf::appearances::HOOK_TYPE>(_impl_.direction_); + } + inline ::Canary::protobuf::appearances::HOOK_TYPE AppearanceFlagHook::direction() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagHook.direction) + return _internal_direction(); + } + inline void AppearanceFlagHook::_internal_set_direction(::Canary::protobuf::appearances::HOOK_TYPE value) { + assert(::Canary::protobuf::appearances::HOOK_TYPE_IsValid(value)); + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.direction_ = value; + } + inline void AppearanceFlagHook::set_direction(::Canary::protobuf::appearances::HOOK_TYPE value) { + _internal_set_direction(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagHook.direction) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagLenshelp + + // optional uint32 id = 1; + inline bool AppearanceFlagLenshelp::_internal_has_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagLenshelp::has_id() const { + return _internal_has_id(); + } + inline void AppearanceFlagLenshelp::clear_id() { + _impl_.id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagLenshelp::_internal_id() const { + return _impl_.id_; + } + inline uint32_t AppearanceFlagLenshelp::id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLenshelp.id) + return _internal_id(); + } + inline void AppearanceFlagLenshelp::_internal_set_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.id_ = value; + } + inline void AppearanceFlagLenshelp::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLenshelp.id) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagChangedToExpire + + // optional uint32 former_object_typeid = 1; + inline bool AppearanceFlagChangedToExpire::_internal_has_former_object_typeid() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagChangedToExpire::has_former_object_typeid() const { + return _internal_has_former_object_typeid(); + } + inline void AppearanceFlagChangedToExpire::clear_former_object_typeid() { + _impl_.former_object_typeid_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagChangedToExpire::_internal_former_object_typeid() const { + return _impl_.former_object_typeid_; + } + inline uint32_t AppearanceFlagChangedToExpire::former_object_typeid() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagChangedToExpire.former_object_typeid) + return _internal_former_object_typeid(); + } + inline void AppearanceFlagChangedToExpire::_internal_set_former_object_typeid(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.former_object_typeid_ = value; + } + inline void AppearanceFlagChangedToExpire::set_former_object_typeid(uint32_t value) { + _internal_set_former_object_typeid(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagChangedToExpire.former_object_typeid) + } + + // ------------------------------------------------------------------- + + // AppearanceFlagCyclopedia + + // optional uint32 cyclopedia_type = 1; + inline bool AppearanceFlagCyclopedia::_internal_has_cyclopedia_type() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool AppearanceFlagCyclopedia::has_cyclopedia_type() const { + return _internal_has_cyclopedia_type(); + } + inline void AppearanceFlagCyclopedia::clear_cyclopedia_type() { + _impl_.cyclopedia_type_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t AppearanceFlagCyclopedia::_internal_cyclopedia_type() const { + return _impl_.cyclopedia_type_; + } + inline uint32_t AppearanceFlagCyclopedia::cyclopedia_type() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagCyclopedia.cyclopedia_type) + return _internal_cyclopedia_type(); + } + inline void AppearanceFlagCyclopedia::_internal_set_cyclopedia_type(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.cyclopedia_type_ = value; + } + inline void AppearanceFlagCyclopedia::set_cyclopedia_type(uint32_t value) { + _internal_set_cyclopedia_type(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagCyclopedia.cyclopedia_type) + } + + // ------------------------------------------------------------------- + + // SpecialMeaningAppearanceIds + + // optional uint32 gold_coin_id = 1; + inline bool SpecialMeaningAppearanceIds::_internal_has_gold_coin_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_gold_coin_id() const { + return _internal_has_gold_coin_id(); + } + inline void SpecialMeaningAppearanceIds::clear_gold_coin_id() { + _impl_.gold_coin_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000001u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_gold_coin_id() const { + return _impl_.gold_coin_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::gold_coin_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.gold_coin_id) + return _internal_gold_coin_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_gold_coin_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.gold_coin_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_gold_coin_id(uint32_t value) { + _internal_set_gold_coin_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.gold_coin_id) + } + + // optional uint32 platinum_coin_id = 2; + inline bool SpecialMeaningAppearanceIds::_internal_has_platinum_coin_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_platinum_coin_id() const { + return _internal_has_platinum_coin_id(); + } + inline void SpecialMeaningAppearanceIds::clear_platinum_coin_id() { + _impl_.platinum_coin_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_platinum_coin_id() const { + return _impl_.platinum_coin_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::platinum_coin_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.platinum_coin_id) + return _internal_platinum_coin_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_platinum_coin_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.platinum_coin_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_platinum_coin_id(uint32_t value) { + _internal_set_platinum_coin_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.platinum_coin_id) + } + + // optional uint32 crystal_coin_id = 3; + inline bool SpecialMeaningAppearanceIds::_internal_has_crystal_coin_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_crystal_coin_id() const { + return _internal_has_crystal_coin_id(); + } + inline void SpecialMeaningAppearanceIds::clear_crystal_coin_id() { + _impl_.crystal_coin_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000004u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_crystal_coin_id() const { + return _impl_.crystal_coin_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::crystal_coin_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.crystal_coin_id) + return _internal_crystal_coin_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_crystal_coin_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.crystal_coin_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_crystal_coin_id(uint32_t value) { + _internal_set_crystal_coin_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.crystal_coin_id) + } + + // optional uint32 tibia_coin_id = 4; + inline bool SpecialMeaningAppearanceIds::_internal_has_tibia_coin_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_tibia_coin_id() const { + return _internal_has_tibia_coin_id(); + } + inline void SpecialMeaningAppearanceIds::clear_tibia_coin_id() { + _impl_.tibia_coin_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000008u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_tibia_coin_id() const { + return _impl_.tibia_coin_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::tibia_coin_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.tibia_coin_id) + return _internal_tibia_coin_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_tibia_coin_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.tibia_coin_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_tibia_coin_id(uint32_t value) { + _internal_set_tibia_coin_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.tibia_coin_id) + } + + // optional uint32 stamped_letter_id = 5; + inline bool SpecialMeaningAppearanceIds::_internal_has_stamped_letter_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_stamped_letter_id() const { + return _internal_has_stamped_letter_id(); + } + inline void SpecialMeaningAppearanceIds::clear_stamped_letter_id() { + _impl_.stamped_letter_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000010u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_stamped_letter_id() const { + return _impl_.stamped_letter_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::stamped_letter_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.stamped_letter_id) + return _internal_stamped_letter_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_stamped_letter_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000010u; + _impl_.stamped_letter_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_stamped_letter_id(uint32_t value) { + _internal_set_stamped_letter_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.stamped_letter_id) + } + + // optional uint32 supply_stash_id = 6; + inline bool SpecialMeaningAppearanceIds::_internal_has_supply_stash_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_supply_stash_id() const { + return _internal_has_supply_stash_id(); + } + inline void SpecialMeaningAppearanceIds::clear_supply_stash_id() { + _impl_.supply_stash_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000020u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_supply_stash_id() const { + return _impl_.supply_stash_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::supply_stash_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.supply_stash_id) + return _internal_supply_stash_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_supply_stash_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000020u; + _impl_.supply_stash_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_supply_stash_id(uint32_t value) { + _internal_set_supply_stash_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.supply_stash_id) + } + + // optional uint32 reward_chest_id = 7; + inline bool SpecialMeaningAppearanceIds::_internal_has_reward_chest_id() const { + bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; + return value; + } + inline bool SpecialMeaningAppearanceIds::has_reward_chest_id() const { + return _internal_has_reward_chest_id(); + } + inline void SpecialMeaningAppearanceIds::clear_reward_chest_id() { + _impl_.reward_chest_id_ = 0u; + _impl_._has_bits_[0] &= ~0x00000040u; + } + inline uint32_t SpecialMeaningAppearanceIds::_internal_reward_chest_id() const { + return _impl_.reward_chest_id_; + } + inline uint32_t SpecialMeaningAppearanceIds::reward_chest_id() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.reward_chest_id) + return _internal_reward_chest_id(); + } + inline void SpecialMeaningAppearanceIds::_internal_set_reward_chest_id(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000040u; + _impl_.reward_chest_id_ = value; + } + inline void SpecialMeaningAppearanceIds::set_reward_chest_id(uint32_t value) { + _internal_set_reward_chest_id(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.reward_chest_id) + } -// ------------------------------------------------------------------- +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// @@protoc_insertion_point(namespace_scope) + // @@protoc_insertion_point(namespace_scope) -} // namespace appearances -} // namespace protobuf -} // namespace Canary + } // namespace appearances + } // namespace protobuf +} // namespace Canary PROTOBUF_NAMESPACE_OPEN -template <> struct is_proto_enum< ::Canary::protobuf::appearances::PLAYER_ACTION> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Canary::protobuf::appearances::PLAYER_ACTION>() { - return ::Canary::protobuf::appearances::PLAYER_ACTION_descriptor(); +struct is_proto_enum<::Canary::protobuf::appearances::PLAYER_ACTION> : ::std::true_type { }; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::PLAYER_ACTION>() { + return ::Canary::protobuf::appearances::PLAYER_ACTION_descriptor(); } -template <> struct is_proto_enum< ::Canary::protobuf::appearances::ITEM_CATEGORY> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Canary::protobuf::appearances::ITEM_CATEGORY>() { - return ::Canary::protobuf::appearances::ITEM_CATEGORY_descriptor(); +struct is_proto_enum<::Canary::protobuf::appearances::ITEM_CATEGORY> : ::std::true_type { }; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::ITEM_CATEGORY>() { + return ::Canary::protobuf::appearances::ITEM_CATEGORY_descriptor(); } -template <> struct is_proto_enum< ::Canary::protobuf::appearances::PLAYER_PROFESSION> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Canary::protobuf::appearances::PLAYER_PROFESSION>() { - return ::Canary::protobuf::appearances::PLAYER_PROFESSION_descriptor(); +struct is_proto_enum<::Canary::protobuf::appearances::PLAYER_PROFESSION> : ::std::true_type { }; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::PLAYER_PROFESSION>() { + return ::Canary::protobuf::appearances::PLAYER_PROFESSION_descriptor(); } -template <> struct is_proto_enum< ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE>() { - return ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_descriptor(); +struct is_proto_enum<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE> : ::std::true_type { }; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE>() { + return ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_descriptor(); } -template <> struct is_proto_enum< ::Canary::protobuf::appearances::HOOK_TYPE> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Canary::protobuf::appearances::HOOK_TYPE>() { - return ::Canary::protobuf::appearances::HOOK_TYPE_descriptor(); +struct is_proto_enum<::Canary::protobuf::appearances::HOOK_TYPE> : ::std::true_type { }; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::HOOK_TYPE>() { + return ::Canary::protobuf::appearances::HOOK_TYPE_descriptor(); } -template <> struct is_proto_enum< ::Canary::protobuf::appearances::FIXED_FRAME_GROUP> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Canary::protobuf::appearances::FIXED_FRAME_GROUP>() { - return ::Canary::protobuf::appearances::FIXED_FRAME_GROUP_descriptor(); +struct is_proto_enum<::Canary::protobuf::appearances::FIXED_FRAME_GROUP> : ::std::true_type { }; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::FIXED_FRAME_GROUP>() { + return ::Canary::protobuf::appearances::FIXED_FRAME_GROUP_descriptor(); } PROTOBUF_NAMESPACE_CLOSE @@ -11503,4 +12406,4 @@ PROTOBUF_NAMESPACE_CLOSE // @@protoc_insertion_point(global_scope) #include -#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_appearances_2eproto +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_appearances_2eproto diff --git a/src/protobuf/kv.pb.h b/src/protobuf/kv.pb.h index c40c0a46502..5f9afb791d5 100644 --- a/src/protobuf/kv.pb.h +++ b/src/protobuf/kv.pb.h @@ -9,14 +9,14 @@ #include #if PROTOBUF_VERSION < 3021000 -#error This file was generated by a newer version of protoc which is -#error incompatible with your Protocol Buffer headers. Please update -#error your headers. + #error This file was generated by a newer version of protoc which is + #error incompatible with your Protocol Buffer headers. Please update + #error your headers. #endif #if 3021012 < PROTOBUF_MIN_PROTOC_VERSION -#error This file was generated by an older version of protoc which is -#error incompatible with your Protocol Buffer headers. Please -#error regenerate this file with a newer version of protoc. + #error This file was generated by an older version of protoc which is + #error incompatible with your Protocol Buffer headers. Please + #error regenerate this file with a newer version of protoc. #endif #include @@ -27,1415 +27,1507 @@ #include #include #include -#include // IWYU pragma: export -#include // IWYU pragma: export +#include // IWYU pragma: export +#include // IWYU pragma: export #include // @@protoc_insertion_point(includes) #include #define PROTOBUF_INTERNAL_EXPORT_kv_2eproto PROTOBUF_NAMESPACE_OPEN namespace internal { -class AnyMetadata; -} // namespace internal + class AnyMetadata; +} // namespace internal PROTOBUF_NAMESPACE_CLOSE // Internal implementation detail -- do not use these members. struct TableStruct_kv_2eproto { - static const uint32_t offsets[]; + static const uint32_t offsets[]; }; extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_kv_2eproto; namespace Canary { -namespace protobuf { -namespace kv { -class ArrayType; -struct ArrayTypeDefaultTypeInternal; -extern ArrayTypeDefaultTypeInternal _ArrayType_default_instance_; -class KeyValuePair; -struct KeyValuePairDefaultTypeInternal; -extern KeyValuePairDefaultTypeInternal _KeyValuePair_default_instance_; -class MapType; -struct MapTypeDefaultTypeInternal; -extern MapTypeDefaultTypeInternal _MapType_default_instance_; -class ValueWrapper; -struct ValueWrapperDefaultTypeInternal; -extern ValueWrapperDefaultTypeInternal _ValueWrapper_default_instance_; -} // namespace kv -} // namespace protobuf -} // namespace Canary + namespace protobuf { + namespace kv { + class ArrayType; + struct ArrayTypeDefaultTypeInternal; + extern ArrayTypeDefaultTypeInternal _ArrayType_default_instance_; + class KeyValuePair; + struct KeyValuePairDefaultTypeInternal; + extern KeyValuePairDefaultTypeInternal _KeyValuePair_default_instance_; + class MapType; + struct MapTypeDefaultTypeInternal; + extern MapTypeDefaultTypeInternal _MapType_default_instance_; + class ValueWrapper; + struct ValueWrapperDefaultTypeInternal; + extern ValueWrapperDefaultTypeInternal _ValueWrapper_default_instance_; + } // namespace kv + } // namespace protobuf +} // namespace Canary PROTOBUF_NAMESPACE_OPEN -template<> ::Canary::protobuf::kv::ArrayType* Arena::CreateMaybeMessage<::Canary::protobuf::kv::ArrayType>(Arena*); -template<> ::Canary::protobuf::kv::KeyValuePair* Arena::CreateMaybeMessage<::Canary::protobuf::kv::KeyValuePair>(Arena*); -template<> ::Canary::protobuf::kv::MapType* Arena::CreateMaybeMessage<::Canary::protobuf::kv::MapType>(Arena*); -template<> ::Canary::protobuf::kv::ValueWrapper* Arena::CreateMaybeMessage<::Canary::protobuf::kv::ValueWrapper>(Arena*); +template <> +::Canary::protobuf::kv::ArrayType* Arena::CreateMaybeMessage<::Canary::protobuf::kv::ArrayType>(Arena*); +template <> +::Canary::protobuf::kv::KeyValuePair* Arena::CreateMaybeMessage<::Canary::protobuf::kv::KeyValuePair>(Arena*); +template <> +::Canary::protobuf::kv::MapType* Arena::CreateMaybeMessage<::Canary::protobuf::kv::MapType>(Arena*); +template <> +::Canary::protobuf::kv::ValueWrapper* Arena::CreateMaybeMessage<::Canary::protobuf::kv::ValueWrapper>(Arena*); PROTOBUF_NAMESPACE_CLOSE namespace Canary { -namespace protobuf { -namespace kv { - -// =================================================================== - -class ValueWrapper final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.ValueWrapper) */ { - public: - inline ValueWrapper() : ValueWrapper(nullptr) {} - ~ValueWrapper() override; - explicit PROTOBUF_CONSTEXPR ValueWrapper(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - ValueWrapper(const ValueWrapper& from); - ValueWrapper(ValueWrapper&& from) noexcept - : ValueWrapper() { - *this = ::std::move(from); - } - - inline ValueWrapper& operator=(const ValueWrapper& from) { - CopyFrom(from); - return *this; - } - inline ValueWrapper& operator=(ValueWrapper&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const ValueWrapper& default_instance() { - return *internal_default_instance(); - } - enum ValueCase { - kStrValue = 1, - kIntValue = 2, - kDoubleValue = 3, - kArrayValue = 4, - kMapValue = 5, - kBoolValue = 6, - VALUE_NOT_SET = 0, - }; - - static inline const ValueWrapper* internal_default_instance() { - return reinterpret_cast( - &_ValueWrapper_default_instance_); - } - static constexpr int kIndexInFileMessages = - 0; - - friend void swap(ValueWrapper& a, ValueWrapper& b) { - a.Swap(&b); - } - inline void Swap(ValueWrapper* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(ValueWrapper* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - ValueWrapper* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ValueWrapper& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ValueWrapper& from) { - ValueWrapper::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ValueWrapper* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.ValueWrapper"; - } - protected: - explicit ValueWrapper(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kStrValueFieldNumber = 1, - kIntValueFieldNumber = 2, - kDoubleValueFieldNumber = 3, - kArrayValueFieldNumber = 4, - kMapValueFieldNumber = 5, - kBoolValueFieldNumber = 6, - }; - // string str_value = 1; - bool has_str_value() const; - private: - bool _internal_has_str_value() const; - public: - void clear_str_value(); - const std::string& str_value() const; - template - void set_str_value(ArgT0&& arg0, ArgT... args); - std::string* mutable_str_value(); - PROTOBUF_NODISCARD std::string* release_str_value(); - void set_allocated_str_value(std::string* str_value); - private: - const std::string& _internal_str_value() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_str_value(const std::string& value); - std::string* _internal_mutable_str_value(); - public: - - // int32 int_value = 2; - bool has_int_value() const; - private: - bool _internal_has_int_value() const; - public: - void clear_int_value(); - int32_t int_value() const; - void set_int_value(int32_t value); - private: - int32_t _internal_int_value() const; - void _internal_set_int_value(int32_t value); - public: - - // double double_value = 3; - bool has_double_value() const; - private: - bool _internal_has_double_value() const; - public: - void clear_double_value(); - double double_value() const; - void set_double_value(double value); - private: - double _internal_double_value() const; - void _internal_set_double_value(double value); - public: - - // .Canary.protobuf.kv.ArrayType array_value = 4; - bool has_array_value() const; - private: - bool _internal_has_array_value() const; - public: - void clear_array_value(); - const ::Canary::protobuf::kv::ArrayType& array_value() const; - PROTOBUF_NODISCARD ::Canary::protobuf::kv::ArrayType* release_array_value(); - ::Canary::protobuf::kv::ArrayType* mutable_array_value(); - void set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value); - private: - const ::Canary::protobuf::kv::ArrayType& _internal_array_value() const; - ::Canary::protobuf::kv::ArrayType* _internal_mutable_array_value(); - public: - void unsafe_arena_set_allocated_array_value( - ::Canary::protobuf::kv::ArrayType* array_value); - ::Canary::protobuf::kv::ArrayType* unsafe_arena_release_array_value(); - - // .Canary.protobuf.kv.MapType map_value = 5; - bool has_map_value() const; - private: - bool _internal_has_map_value() const; - public: - void clear_map_value(); - const ::Canary::protobuf::kv::MapType& map_value() const; - PROTOBUF_NODISCARD ::Canary::protobuf::kv::MapType* release_map_value(); - ::Canary::protobuf::kv::MapType* mutable_map_value(); - void set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value); - private: - const ::Canary::protobuf::kv::MapType& _internal_map_value() const; - ::Canary::protobuf::kv::MapType* _internal_mutable_map_value(); - public: - void unsafe_arena_set_allocated_map_value( - ::Canary::protobuf::kv::MapType* map_value); - ::Canary::protobuf::kv::MapType* unsafe_arena_release_map_value(); - - // bool bool_value = 6; - bool has_bool_value() const; - private: - bool _internal_has_bool_value() const; - public: - void clear_bool_value(); - bool bool_value() const; - void set_bool_value(bool value); - private: - bool _internal_bool_value() const; - void _internal_set_bool_value(bool value); - public: - - void clear_value(); - ValueCase value_case() const; - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.ValueWrapper) - private: - class _Internal; - void set_has_str_value(); - void set_has_int_value(); - void set_has_double_value(); - void set_has_array_value(); - void set_has_map_value(); - void set_has_bool_value(); - - inline bool has_value() const; - inline void clear_has_value(); - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - union ValueUnion { - constexpr ValueUnion() : _constinit_{} {} - ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr str_value_; - int32_t int_value_; - double double_value_; - ::Canary::protobuf::kv::ArrayType* array_value_; - ::Canary::protobuf::kv::MapType* map_value_; - bool bool_value_; - } value_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t _oneof_case_[1]; - - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_kv_2eproto; -}; -// ------------------------------------------------------------------- - -class ArrayType final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.ArrayType) */ { - public: - inline ArrayType() : ArrayType(nullptr) {} - ~ArrayType() override; - explicit PROTOBUF_CONSTEXPR ArrayType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - ArrayType(const ArrayType& from); - ArrayType(ArrayType&& from) noexcept - : ArrayType() { - *this = ::std::move(from); - } - - inline ArrayType& operator=(const ArrayType& from) { - CopyFrom(from); - return *this; - } - inline ArrayType& operator=(ArrayType&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const ArrayType& default_instance() { - return *internal_default_instance(); - } - static inline const ArrayType* internal_default_instance() { - return reinterpret_cast( - &_ArrayType_default_instance_); - } - static constexpr int kIndexInFileMessages = - 1; - - friend void swap(ArrayType& a, ArrayType& b) { - a.Swap(&b); - } - inline void Swap(ArrayType* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(ArrayType* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - ArrayType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ArrayType& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ArrayType& from) { - ArrayType::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ArrayType* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.ArrayType"; - } - protected: - explicit ArrayType(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kValuesFieldNumber = 1, - }; - // repeated .Canary.protobuf.kv.ValueWrapper values = 1; - int values_size() const; - private: - int _internal_values_size() const; - public: - void clear_values(); - ::Canary::protobuf::kv::ValueWrapper* mutable_values(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::ValueWrapper >* - mutable_values(); - private: - const ::Canary::protobuf::kv::ValueWrapper& _internal_values(int index) const; - ::Canary::protobuf::kv::ValueWrapper* _internal_add_values(); - public: - const ::Canary::protobuf::kv::ValueWrapper& values(int index) const; - ::Canary::protobuf::kv::ValueWrapper* add_values(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::ValueWrapper >& - values() const; - - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.ArrayType) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::ValueWrapper > values_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_kv_2eproto; -}; -// ------------------------------------------------------------------- - -class KeyValuePair final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.KeyValuePair) */ { - public: - inline KeyValuePair() : KeyValuePair(nullptr) {} - ~KeyValuePair() override; - explicit PROTOBUF_CONSTEXPR KeyValuePair(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - KeyValuePair(const KeyValuePair& from); - KeyValuePair(KeyValuePair&& from) noexcept - : KeyValuePair() { - *this = ::std::move(from); - } - - inline KeyValuePair& operator=(const KeyValuePair& from) { - CopyFrom(from); - return *this; - } - inline KeyValuePair& operator=(KeyValuePair&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const KeyValuePair& default_instance() { - return *internal_default_instance(); - } - static inline const KeyValuePair* internal_default_instance() { - return reinterpret_cast( - &_KeyValuePair_default_instance_); - } - static constexpr int kIndexInFileMessages = - 2; - - friend void swap(KeyValuePair& a, KeyValuePair& b) { - a.Swap(&b); - } - inline void Swap(KeyValuePair* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(KeyValuePair* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - KeyValuePair* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const KeyValuePair& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const KeyValuePair& from) { - KeyValuePair::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(KeyValuePair* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.KeyValuePair"; - } - protected: - explicit KeyValuePair(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kKeyFieldNumber = 1, - kValueFieldNumber = 2, - }; - // string key = 1; - void clear_key(); - const std::string& key() const; - template - void set_key(ArgT0&& arg0, ArgT... args); - std::string* mutable_key(); - PROTOBUF_NODISCARD std::string* release_key(); - void set_allocated_key(std::string* key); - private: - const std::string& _internal_key() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_key(const std::string& value); - std::string* _internal_mutable_key(); - public: - - // .Canary.protobuf.kv.ValueWrapper value = 2; - bool has_value() const; - private: - bool _internal_has_value() const; - public: - void clear_value(); - const ::Canary::protobuf::kv::ValueWrapper& value() const; - PROTOBUF_NODISCARD ::Canary::protobuf::kv::ValueWrapper* release_value(); - ::Canary::protobuf::kv::ValueWrapper* mutable_value(); - void set_allocated_value(::Canary::protobuf::kv::ValueWrapper* value); - private: - const ::Canary::protobuf::kv::ValueWrapper& _internal_value() const; - ::Canary::protobuf::kv::ValueWrapper* _internal_mutable_value(); - public: - void unsafe_arena_set_allocated_value( - ::Canary::protobuf::kv::ValueWrapper* value); - ::Canary::protobuf::kv::ValueWrapper* unsafe_arena_release_value(); - - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.KeyValuePair) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr key_; - ::Canary::protobuf::kv::ValueWrapper* value_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_kv_2eproto; -}; -// ------------------------------------------------------------------- - -class MapType final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.MapType) */ { - public: - inline MapType() : MapType(nullptr) {} - ~MapType() override; - explicit PROTOBUF_CONSTEXPR MapType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - MapType(const MapType& from); - MapType(MapType&& from) noexcept - : MapType() { - *this = ::std::move(from); - } - - inline MapType& operator=(const MapType& from) { - CopyFrom(from); - return *this; - } - inline MapType& operator=(MapType&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const MapType& default_instance() { - return *internal_default_instance(); - } - static inline const MapType* internal_default_instance() { - return reinterpret_cast( - &_MapType_default_instance_); - } - static constexpr int kIndexInFileMessages = - 3; - - friend void swap(MapType& a, MapType& b) { - a.Swap(&b); - } - inline void Swap(MapType* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(MapType* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - MapType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MapType& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const MapType& from) { - MapType::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MapType* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.MapType"; - } - protected: - explicit MapType(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kItemsFieldNumber = 1, - }; - // repeated .Canary.protobuf.kv.KeyValuePair items = 1; - int items_size() const; - private: - int _internal_items_size() const; - public: - void clear_items(); - ::Canary::protobuf::kv::KeyValuePair* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::KeyValuePair >* - mutable_items(); - private: - const ::Canary::protobuf::kv::KeyValuePair& _internal_items(int index) const; - ::Canary::protobuf::kv::KeyValuePair* _internal_add_items(); - public: - const ::Canary::protobuf::kv::KeyValuePair& items(int index) const; - ::Canary::protobuf::kv::KeyValuePair* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::KeyValuePair >& - items() const; - - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.MapType) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::KeyValuePair > items_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_kv_2eproto; -}; -// =================================================================== - - -// =================================================================== + namespace protobuf { + namespace kv { + + // =================================================================== + + class ValueWrapper final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.ValueWrapper) */ { + public: + inline ValueWrapper() : + ValueWrapper(nullptr) { } + ~ValueWrapper() override; + explicit PROTOBUF_CONSTEXPR ValueWrapper(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ValueWrapper(const ValueWrapper &from); + ValueWrapper(ValueWrapper &&from) noexcept + : + ValueWrapper() { + *this = ::std::move(from); + } + + inline ValueWrapper &operator=(const ValueWrapper &from) { + CopyFrom(from); + return *this; + } + inline ValueWrapper &operator=(ValueWrapper &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ValueWrapper &default_instance() { + return *internal_default_instance(); + } + enum ValueCase { + kStrValue = 1, + kIntValue = 2, + kDoubleValue = 3, + kArrayValue = 4, + kMapValue = 5, + kBoolValue = 6, + VALUE_NOT_SET = 0, + }; + + static inline const ValueWrapper* internal_default_instance() { + return reinterpret_cast( + &_ValueWrapper_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 0; + + friend void swap(ValueWrapper &a, ValueWrapper &b) { + a.Swap(&b); + } + inline void Swap(ValueWrapper* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ValueWrapper* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ValueWrapper* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ValueWrapper &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ValueWrapper &from) { + ValueWrapper::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ValueWrapper* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.kv.ValueWrapper"; + } + + protected: + explicit ValueWrapper(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kStrValueFieldNumber = 1, + kIntValueFieldNumber = 2, + kDoubleValueFieldNumber = 3, + kArrayValueFieldNumber = 4, + kMapValueFieldNumber = 5, + kBoolValueFieldNumber = 6, + }; + // string str_value = 1; + bool has_str_value() const; + + private: + bool _internal_has_str_value() const; + + public: + void clear_str_value(); + const std::string &str_value() const; + template + void set_str_value(ArgT0 &&arg0, ArgT... args); + std::string* mutable_str_value(); + PROTOBUF_NODISCARD std::string* release_str_value(); + void set_allocated_str_value(std::string* str_value); + + private: + const std::string &_internal_str_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_str_value(const std::string &value); + std::string* _internal_mutable_str_value(); + + public: + // int32 int_value = 2; + bool has_int_value() const; + + private: + bool _internal_has_int_value() const; + + public: + void clear_int_value(); + int32_t int_value() const; + void set_int_value(int32_t value); + + private: + int32_t _internal_int_value() const; + void _internal_set_int_value(int32_t value); + + public: + // double double_value = 3; + bool has_double_value() const; + + private: + bool _internal_has_double_value() const; + + public: + void clear_double_value(); + double double_value() const; + void set_double_value(double value); + + private: + double _internal_double_value() const; + void _internal_set_double_value(double value); + + public: + // .Canary.protobuf.kv.ArrayType array_value = 4; + bool has_array_value() const; + + private: + bool _internal_has_array_value() const; + + public: + void clear_array_value(); + const ::Canary::protobuf::kv::ArrayType &array_value() const; + PROTOBUF_NODISCARD ::Canary::protobuf::kv::ArrayType* release_array_value(); + ::Canary::protobuf::kv::ArrayType* mutable_array_value(); + void set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value); + + private: + const ::Canary::protobuf::kv::ArrayType &_internal_array_value() const; + ::Canary::protobuf::kv::ArrayType* _internal_mutable_array_value(); + + public: + void unsafe_arena_set_allocated_array_value( + ::Canary::protobuf::kv::ArrayType* array_value + ); + ::Canary::protobuf::kv::ArrayType* unsafe_arena_release_array_value(); + + // .Canary.protobuf.kv.MapType map_value = 5; + bool has_map_value() const; + + private: + bool _internal_has_map_value() const; + + public: + void clear_map_value(); + const ::Canary::protobuf::kv::MapType &map_value() const; + PROTOBUF_NODISCARD ::Canary::protobuf::kv::MapType* release_map_value(); + ::Canary::protobuf::kv::MapType* mutable_map_value(); + void set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value); + + private: + const ::Canary::protobuf::kv::MapType &_internal_map_value() const; + ::Canary::protobuf::kv::MapType* _internal_mutable_map_value(); + + public: + void unsafe_arena_set_allocated_map_value( + ::Canary::protobuf::kv::MapType* map_value + ); + ::Canary::protobuf::kv::MapType* unsafe_arena_release_map_value(); + + // bool bool_value = 6; + bool has_bool_value() const; + + private: + bool _internal_has_bool_value() const; + + public: + void clear_bool_value(); + bool bool_value() const; + void set_bool_value(bool value); + + private: + bool _internal_bool_value() const; + void _internal_set_bool_value(bool value); + + public: + void clear_value(); + ValueCase value_case() const; + // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.ValueWrapper) + private: + class _Internal; + void set_has_str_value(); + void set_has_int_value(); + void set_has_double_value(); + void set_has_array_value(); + void set_has_map_value(); + void set_has_bool_value(); + + inline bool has_value() const; + inline void clear_has_value(); + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + union ValueUnion { + constexpr ValueUnion() : + _constinit_ {} { } + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr str_value_; + int32_t int_value_; + double double_value_; + ::Canary::protobuf::kv::ArrayType* array_value_; + ::Canary::protobuf::kv::MapType* map_value_; + bool bool_value_; + } value_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t _oneof_case_[1]; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_kv_2eproto; + }; + // ------------------------------------------------------------------- + + class ArrayType final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.ArrayType) */ { + public: + inline ArrayType() : + ArrayType(nullptr) { } + ~ArrayType() override; + explicit PROTOBUF_CONSTEXPR ArrayType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ArrayType(const ArrayType &from); + ArrayType(ArrayType &&from) noexcept + : + ArrayType() { + *this = ::std::move(from); + } + + inline ArrayType &operator=(const ArrayType &from) { + CopyFrom(from); + return *this; + } + inline ArrayType &operator=(ArrayType &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ArrayType &default_instance() { + return *internal_default_instance(); + } + static inline const ArrayType* internal_default_instance() { + return reinterpret_cast( + &_ArrayType_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 1; + + friend void swap(ArrayType &a, ArrayType &b) { + a.Swap(&b); + } + inline void Swap(ArrayType* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ArrayType* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ArrayType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ArrayType &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ArrayType &from) { + ArrayType::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ArrayType* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.kv.ArrayType"; + } + + protected: + explicit ArrayType(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kValuesFieldNumber = 1, + }; + // repeated .Canary.protobuf.kv.ValueWrapper values = 1; + int values_size() const; + + private: + int _internal_values_size() const; + + public: + void clear_values(); + ::Canary::protobuf::kv::ValueWrapper* mutable_values(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper>* + mutable_values(); + + private: + const ::Canary::protobuf::kv::ValueWrapper &_internal_values(int index) const; + ::Canary::protobuf::kv::ValueWrapper* _internal_add_values(); + + public: + const ::Canary::protobuf::kv::ValueWrapper &values(int index) const; + ::Canary::protobuf::kv::ValueWrapper* add_values(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper> & + values() const; + + // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.ArrayType) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper> values_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_kv_2eproto; + }; + // ------------------------------------------------------------------- + + class KeyValuePair final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.KeyValuePair) */ { + public: + inline KeyValuePair() : + KeyValuePair(nullptr) { } + ~KeyValuePair() override; + explicit PROTOBUF_CONSTEXPR KeyValuePair(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + KeyValuePair(const KeyValuePair &from); + KeyValuePair(KeyValuePair &&from) noexcept + : + KeyValuePair() { + *this = ::std::move(from); + } + + inline KeyValuePair &operator=(const KeyValuePair &from) { + CopyFrom(from); + return *this; + } + inline KeyValuePair &operator=(KeyValuePair &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const KeyValuePair &default_instance() { + return *internal_default_instance(); + } + static inline const KeyValuePair* internal_default_instance() { + return reinterpret_cast( + &_KeyValuePair_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 2; + + friend void swap(KeyValuePair &a, KeyValuePair &b) { + a.Swap(&b); + } + inline void Swap(KeyValuePair* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(KeyValuePair* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + KeyValuePair* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const KeyValuePair &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const KeyValuePair &from) { + KeyValuePair::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(KeyValuePair* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.kv.KeyValuePair"; + } + + protected: + explicit KeyValuePair(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kKeyFieldNumber = 1, + kValueFieldNumber = 2, + }; + // string key = 1; + void clear_key(); + const std::string &key() const; + template + void set_key(ArgT0 &&arg0, ArgT... args); + std::string* mutable_key(); + PROTOBUF_NODISCARD std::string* release_key(); + void set_allocated_key(std::string* key); + + private: + const std::string &_internal_key() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_key(const std::string &value); + std::string* _internal_mutable_key(); + + public: + // .Canary.protobuf.kv.ValueWrapper value = 2; + bool has_value() const; + + private: + bool _internal_has_value() const; + + public: + void clear_value(); + const ::Canary::protobuf::kv::ValueWrapper &value() const; + PROTOBUF_NODISCARD ::Canary::protobuf::kv::ValueWrapper* release_value(); + ::Canary::protobuf::kv::ValueWrapper* mutable_value(); + void set_allocated_value(::Canary::protobuf::kv::ValueWrapper* value); + + private: + const ::Canary::protobuf::kv::ValueWrapper &_internal_value() const; + ::Canary::protobuf::kv::ValueWrapper* _internal_mutable_value(); + + public: + void unsafe_arena_set_allocated_value( + ::Canary::protobuf::kv::ValueWrapper* value + ); + ::Canary::protobuf::kv::ValueWrapper* unsafe_arena_release_value(); + + // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.KeyValuePair) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr key_; + ::Canary::protobuf::kv::ValueWrapper* value_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_kv_2eproto; + }; + // ------------------------------------------------------------------- + + class MapType final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.MapType) */ { + public: + inline MapType() : + MapType(nullptr) { } + ~MapType() override; + explicit PROTOBUF_CONSTEXPR MapType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + MapType(const MapType &from); + MapType(MapType &&from) noexcept + : + MapType() { + *this = ::std::move(from); + } + + inline MapType &operator=(const MapType &from) { + CopyFrom(from); + return *this; + } + inline MapType &operator=(MapType &&from) noexcept { + if (this == &from) { + return *this; + } + if (GetOwningArena() == from.GetOwningArena() +#ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr +#endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const MapType &default_instance() { + return *internal_default_instance(); + } + static inline const MapType* internal_default_instance() { + return reinterpret_cast( + &_MapType_default_instance_ + ); + } + static constexpr int kIndexInFileMessages = 3; + + friend void swap(MapType &a, MapType &b) { + a.Swap(&b); + } + inline void Swap(MapType* other) { + if (other == this) { + return; + } +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(MapType* other) { + if (other == this) { + return; + } + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + MapType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MapType &from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const MapType &from) { + MapType::MergeImpl(*this, from); + } + + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); + + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream + ) const final; + int GetCachedSize() const final { + return _impl_._cached_size_.Get(); + } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MapType* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Canary.protobuf.kv.MapType"; + } + + protected: + explicit MapType(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); + + public: + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kItemsFieldNumber = 1, + }; + // repeated .Canary.protobuf.kv.KeyValuePair items = 1; + int items_size() const; + + private: + int _internal_items_size() const; + + public: + void clear_items(); + ::Canary::protobuf::kv::KeyValuePair* mutable_items(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair>* + mutable_items(); + + private: + const ::Canary::protobuf::kv::KeyValuePair &_internal_items(int index) const; + ::Canary::protobuf::kv::KeyValuePair* _internal_add_items(); + + public: + const ::Canary::protobuf::kv::KeyValuePair &items(int index) const; + ::Canary::protobuf::kv::KeyValuePair* add_items(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair> & + items() const; + + // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.MapType) + private: + class _Internal; + + template + friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair> items_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { + Impl_ _impl_; + }; + friend struct ::TableStruct_kv_2eproto; + }; + // =================================================================== + + // =================================================================== #ifdef __GNUC__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wstrict-aliasing" -#endif // __GNUC__ -// ValueWrapper - -// string str_value = 1; -inline bool ValueWrapper::_internal_has_str_value() const { - return value_case() == kStrValue; -} -inline bool ValueWrapper::has_str_value() const { - return _internal_has_str_value(); -} -inline void ValueWrapper::set_has_str_value() { - _impl_._oneof_case_[0] = kStrValue; -} -inline void ValueWrapper::clear_str_value() { - if (_internal_has_str_value()) { - _impl_.value_.str_value_.Destroy(); - clear_has_value(); - } -} -inline const std::string& ValueWrapper::str_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.str_value) - return _internal_str_value(); -} -template -inline void ValueWrapper::set_str_value(ArgT0&& arg0, ArgT... args) { - if (!_internal_has_str_value()) { - clear_value(); - set_has_str_value(); - _impl_.value_.str_value_.InitDefault(); - } - _impl_.value_.str_value_.Set( static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.str_value) -} -inline std::string* ValueWrapper::mutable_str_value() { - std::string* _s = _internal_mutable_str_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.str_value) - return _s; -} -inline const std::string& ValueWrapper::_internal_str_value() const { - if (_internal_has_str_value()) { - return _impl_.value_.str_value_.Get(); - } - return ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(); -} -inline void ValueWrapper::_internal_set_str_value(const std::string& value) { - if (!_internal_has_str_value()) { - clear_value(); - set_has_str_value(); - _impl_.value_.str_value_.InitDefault(); - } - _impl_.value_.str_value_.Set(value, GetArenaForAllocation()); -} -inline std::string* ValueWrapper::_internal_mutable_str_value() { - if (!_internal_has_str_value()) { - clear_value(); - set_has_str_value(); - _impl_.value_.str_value_.InitDefault(); - } - return _impl_.value_.str_value_.Mutable( GetArenaForAllocation()); -} -inline std::string* ValueWrapper::release_str_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.str_value) - if (_internal_has_str_value()) { - clear_has_value(); - return _impl_.value_.str_value_.Release(); - } else { - return nullptr; - } -} -inline void ValueWrapper::set_allocated_str_value(std::string* str_value) { - if (has_value()) { - clear_value(); - } - if (str_value != nullptr) { - set_has_str_value(); - _impl_.value_.str_value_.InitAllocated(str_value, GetArenaForAllocation()); - } - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.ValueWrapper.str_value) -} - -// int32 int_value = 2; -inline bool ValueWrapper::_internal_has_int_value() const { - return value_case() == kIntValue; -} -inline bool ValueWrapper::has_int_value() const { - return _internal_has_int_value(); -} -inline void ValueWrapper::set_has_int_value() { - _impl_._oneof_case_[0] = kIntValue; -} -inline void ValueWrapper::clear_int_value() { - if (_internal_has_int_value()) { - _impl_.value_.int_value_ = 0; - clear_has_value(); - } -} -inline int32_t ValueWrapper::_internal_int_value() const { - if (_internal_has_int_value()) { - return _impl_.value_.int_value_; - } - return 0; -} -inline void ValueWrapper::_internal_set_int_value(int32_t value) { - if (!_internal_has_int_value()) { - clear_value(); - set_has_int_value(); - } - _impl_.value_.int_value_ = value; -} -inline int32_t ValueWrapper::int_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.int_value) - return _internal_int_value(); -} -inline void ValueWrapper::set_int_value(int32_t value) { - _internal_set_int_value(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.int_value) -} - -// double double_value = 3; -inline bool ValueWrapper::_internal_has_double_value() const { - return value_case() == kDoubleValue; -} -inline bool ValueWrapper::has_double_value() const { - return _internal_has_double_value(); -} -inline void ValueWrapper::set_has_double_value() { - _impl_._oneof_case_[0] = kDoubleValue; -} -inline void ValueWrapper::clear_double_value() { - if (_internal_has_double_value()) { - _impl_.value_.double_value_ = 0; - clear_has_value(); - } -} -inline double ValueWrapper::_internal_double_value() const { - if (_internal_has_double_value()) { - return _impl_.value_.double_value_; - } - return 0; -} -inline void ValueWrapper::_internal_set_double_value(double value) { - if (!_internal_has_double_value()) { - clear_value(); - set_has_double_value(); - } - _impl_.value_.double_value_ = value; -} -inline double ValueWrapper::double_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.double_value) - return _internal_double_value(); -} -inline void ValueWrapper::set_double_value(double value) { - _internal_set_double_value(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.double_value) -} - -// .Canary.protobuf.kv.ArrayType array_value = 4; -inline bool ValueWrapper::_internal_has_array_value() const { - return value_case() == kArrayValue; -} -inline bool ValueWrapper::has_array_value() const { - return _internal_has_array_value(); -} -inline void ValueWrapper::set_has_array_value() { - _impl_._oneof_case_[0] = kArrayValue; -} -inline void ValueWrapper::clear_array_value() { - if (_internal_has_array_value()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.value_.array_value_; - } - clear_has_value(); - } -} -inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::release_array_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.array_value) - if (_internal_has_array_value()) { - clear_has_value(); - ::Canary::protobuf::kv::ArrayType* temp = _impl_.value_.array_value_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.value_.array_value_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::Canary::protobuf::kv::ArrayType& ValueWrapper::_internal_array_value() const { - return _internal_has_array_value() - ? *_impl_.value_.array_value_ - : reinterpret_cast< ::Canary::protobuf::kv::ArrayType&>(::Canary::protobuf::kv::_ArrayType_default_instance_); -} -inline const ::Canary::protobuf::kv::ArrayType& ValueWrapper::array_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.array_value) - return _internal_array_value(); -} -inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::unsafe_arena_release_array_value() { - // @@protoc_insertion_point(field_unsafe_arena_release:Canary.protobuf.kv.ValueWrapper.array_value) - if (_internal_has_array_value()) { - clear_has_value(); - ::Canary::protobuf::kv::ArrayType* temp = _impl_.value_.array_value_; - _impl_.value_.array_value_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void ValueWrapper::unsafe_arena_set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value) { - clear_value(); - if (array_value) { - set_has_array_value(); - _impl_.value_.array_value_ = array_value; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.ValueWrapper.array_value) -} -inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::_internal_mutable_array_value() { - if (!_internal_has_array_value()) { - clear_value(); - set_has_array_value(); - _impl_.value_.array_value_ = CreateMaybeMessage< ::Canary::protobuf::kv::ArrayType >(GetArenaForAllocation()); - } - return _impl_.value_.array_value_; -} -inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::mutable_array_value() { - ::Canary::protobuf::kv::ArrayType* _msg = _internal_mutable_array_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.array_value) - return _msg; -} - -// .Canary.protobuf.kv.MapType map_value = 5; -inline bool ValueWrapper::_internal_has_map_value() const { - return value_case() == kMapValue; -} -inline bool ValueWrapper::has_map_value() const { - return _internal_has_map_value(); -} -inline void ValueWrapper::set_has_map_value() { - _impl_._oneof_case_[0] = kMapValue; -} -inline void ValueWrapper::clear_map_value() { - if (_internal_has_map_value()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.value_.map_value_; - } - clear_has_value(); - } -} -inline ::Canary::protobuf::kv::MapType* ValueWrapper::release_map_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.map_value) - if (_internal_has_map_value()) { - clear_has_value(); - ::Canary::protobuf::kv::MapType* temp = _impl_.value_.map_value_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.value_.map_value_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::Canary::protobuf::kv::MapType& ValueWrapper::_internal_map_value() const { - return _internal_has_map_value() - ? *_impl_.value_.map_value_ - : reinterpret_cast< ::Canary::protobuf::kv::MapType&>(::Canary::protobuf::kv::_MapType_default_instance_); -} -inline const ::Canary::protobuf::kv::MapType& ValueWrapper::map_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.map_value) - return _internal_map_value(); -} -inline ::Canary::protobuf::kv::MapType* ValueWrapper::unsafe_arena_release_map_value() { - // @@protoc_insertion_point(field_unsafe_arena_release:Canary.protobuf.kv.ValueWrapper.map_value) - if (_internal_has_map_value()) { - clear_has_value(); - ::Canary::protobuf::kv::MapType* temp = _impl_.value_.map_value_; - _impl_.value_.map_value_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void ValueWrapper::unsafe_arena_set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value) { - clear_value(); - if (map_value) { - set_has_map_value(); - _impl_.value_.map_value_ = map_value; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.ValueWrapper.map_value) -} -inline ::Canary::protobuf::kv::MapType* ValueWrapper::_internal_mutable_map_value() { - if (!_internal_has_map_value()) { - clear_value(); - set_has_map_value(); - _impl_.value_.map_value_ = CreateMaybeMessage< ::Canary::protobuf::kv::MapType >(GetArenaForAllocation()); - } - return _impl_.value_.map_value_; -} -inline ::Canary::protobuf::kv::MapType* ValueWrapper::mutable_map_value() { - ::Canary::protobuf::kv::MapType* _msg = _internal_mutable_map_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.map_value) - return _msg; -} - -// bool bool_value = 6; -inline bool ValueWrapper::_internal_has_bool_value() const { - return value_case() == kBoolValue; -} -inline bool ValueWrapper::has_bool_value() const { - return _internal_has_bool_value(); -} -inline void ValueWrapper::set_has_bool_value() { - _impl_._oneof_case_[0] = kBoolValue; -} -inline void ValueWrapper::clear_bool_value() { - if (_internal_has_bool_value()) { - _impl_.value_.bool_value_ = false; - clear_has_value(); - } -} -inline bool ValueWrapper::_internal_bool_value() const { - if (_internal_has_bool_value()) { - return _impl_.value_.bool_value_; - } - return false; -} -inline void ValueWrapper::_internal_set_bool_value(bool value) { - if (!_internal_has_bool_value()) { - clear_value(); - set_has_bool_value(); - } - _impl_.value_.bool_value_ = value; -} -inline bool ValueWrapper::bool_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.bool_value) - return _internal_bool_value(); -} -inline void ValueWrapper::set_bool_value(bool value) { - _internal_set_bool_value(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.bool_value) -} - -inline bool ValueWrapper::has_value() const { - return value_case() != VALUE_NOT_SET; -} -inline void ValueWrapper::clear_has_value() { - _impl_._oneof_case_[0] = VALUE_NOT_SET; -} -inline ValueWrapper::ValueCase ValueWrapper::value_case() const { - return ValueWrapper::ValueCase(_impl_._oneof_case_[0]); -} -// ------------------------------------------------------------------- - -// ArrayType - -// repeated .Canary.protobuf.kv.ValueWrapper values = 1; -inline int ArrayType::_internal_values_size() const { - return _impl_.values_.size(); -} -inline int ArrayType::values_size() const { - return _internal_values_size(); -} -inline void ArrayType::clear_values() { - _impl_.values_.Clear(); -} -inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::mutable_values(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ArrayType.values) - return _impl_.values_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::ValueWrapper >* -ArrayType::mutable_values() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.kv.ArrayType.values) - return &_impl_.values_; -} -inline const ::Canary::protobuf::kv::ValueWrapper& ArrayType::_internal_values(int index) const { - return _impl_.values_.Get(index); -} -inline const ::Canary::protobuf::kv::ValueWrapper& ArrayType::values(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ArrayType.values) - return _internal_values(index); -} -inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::_internal_add_values() { - return _impl_.values_.Add(); -} -inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::add_values() { - ::Canary::protobuf::kv::ValueWrapper* _add = _internal_add_values(); - // @@protoc_insertion_point(field_add:Canary.protobuf.kv.ArrayType.values) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::ValueWrapper >& -ArrayType::values() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.kv.ArrayType.values) - return _impl_.values_; -} - -// ------------------------------------------------------------------- - -// KeyValuePair - -// string key = 1; -inline void KeyValuePair::clear_key() { - _impl_.key_.ClearToEmpty(); -} -inline const std::string& KeyValuePair::key() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.KeyValuePair.key) - return _internal_key(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void KeyValuePair::set_key(ArgT0&& arg0, ArgT... args) { - - _impl_.key_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.KeyValuePair.key) -} -inline std::string* KeyValuePair::mutable_key() { - std::string* _s = _internal_mutable_key(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.KeyValuePair.key) - return _s; -} -inline const std::string& KeyValuePair::_internal_key() const { - return _impl_.key_.Get(); -} -inline void KeyValuePair::_internal_set_key(const std::string& value) { - - _impl_.key_.Set(value, GetArenaForAllocation()); -} -inline std::string* KeyValuePair::_internal_mutable_key() { - - return _impl_.key_.Mutable(GetArenaForAllocation()); -} -inline std::string* KeyValuePair::release_key() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.KeyValuePair.key) - return _impl_.key_.Release(); -} -inline void KeyValuePair::set_allocated_key(std::string* key) { - if (key != nullptr) { - - } else { - - } - _impl_.key_.SetAllocated(key, GetArenaForAllocation()); + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ + // ValueWrapper + + // string str_value = 1; + inline bool ValueWrapper::_internal_has_str_value() const { + return value_case() == kStrValue; + } + inline bool ValueWrapper::has_str_value() const { + return _internal_has_str_value(); + } + inline void ValueWrapper::set_has_str_value() { + _impl_._oneof_case_[0] = kStrValue; + } + inline void ValueWrapper::clear_str_value() { + if (_internal_has_str_value()) { + _impl_.value_.str_value_.Destroy(); + clear_has_value(); + } + } + inline const std::string &ValueWrapper::str_value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.str_value) + return _internal_str_value(); + } + template + inline void ValueWrapper::set_str_value(ArgT0 &&arg0, ArgT... args) { + if (!_internal_has_str_value()) { + clear_value(); + set_has_str_value(); + _impl_.value_.str_value_.InitDefault(); + } + _impl_.value_.str_value_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.str_value) + } + inline std::string* ValueWrapper::mutable_str_value() { + std::string* _s = _internal_mutable_str_value(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.str_value) + return _s; + } + inline const std::string &ValueWrapper::_internal_str_value() const { + if (_internal_has_str_value()) { + return _impl_.value_.str_value_.Get(); + } + return ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(); + } + inline void ValueWrapper::_internal_set_str_value(const std::string &value) { + if (!_internal_has_str_value()) { + clear_value(); + set_has_str_value(); + _impl_.value_.str_value_.InitDefault(); + } + _impl_.value_.str_value_.Set(value, GetArenaForAllocation()); + } + inline std::string* ValueWrapper::_internal_mutable_str_value() { + if (!_internal_has_str_value()) { + clear_value(); + set_has_str_value(); + _impl_.value_.str_value_.InitDefault(); + } + return _impl_.value_.str_value_.Mutable(GetArenaForAllocation()); + } + inline std::string* ValueWrapper::release_str_value() { + // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.str_value) + if (_internal_has_str_value()) { + clear_has_value(); + return _impl_.value_.str_value_.Release(); + } else { + return nullptr; + } + } + inline void ValueWrapper::set_allocated_str_value(std::string* str_value) { + if (has_value()) { + clear_value(); + } + if (str_value != nullptr) { + set_has_str_value(); + _impl_.value_.str_value_.InitAllocated(str_value, GetArenaForAllocation()); + } + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.ValueWrapper.str_value) + } + + // int32 int_value = 2; + inline bool ValueWrapper::_internal_has_int_value() const { + return value_case() == kIntValue; + } + inline bool ValueWrapper::has_int_value() const { + return _internal_has_int_value(); + } + inline void ValueWrapper::set_has_int_value() { + _impl_._oneof_case_[0] = kIntValue; + } + inline void ValueWrapper::clear_int_value() { + if (_internal_has_int_value()) { + _impl_.value_.int_value_ = 0; + clear_has_value(); + } + } + inline int32_t ValueWrapper::_internal_int_value() const { + if (_internal_has_int_value()) { + return _impl_.value_.int_value_; + } + return 0; + } + inline void ValueWrapper::_internal_set_int_value(int32_t value) { + if (!_internal_has_int_value()) { + clear_value(); + set_has_int_value(); + } + _impl_.value_.int_value_ = value; + } + inline int32_t ValueWrapper::int_value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.int_value) + return _internal_int_value(); + } + inline void ValueWrapper::set_int_value(int32_t value) { + _internal_set_int_value(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.int_value) + } + + // double double_value = 3; + inline bool ValueWrapper::_internal_has_double_value() const { + return value_case() == kDoubleValue; + } + inline bool ValueWrapper::has_double_value() const { + return _internal_has_double_value(); + } + inline void ValueWrapper::set_has_double_value() { + _impl_._oneof_case_[0] = kDoubleValue; + } + inline void ValueWrapper::clear_double_value() { + if (_internal_has_double_value()) { + _impl_.value_.double_value_ = 0; + clear_has_value(); + } + } + inline double ValueWrapper::_internal_double_value() const { + if (_internal_has_double_value()) { + return _impl_.value_.double_value_; + } + return 0; + } + inline void ValueWrapper::_internal_set_double_value(double value) { + if (!_internal_has_double_value()) { + clear_value(); + set_has_double_value(); + } + _impl_.value_.double_value_ = value; + } + inline double ValueWrapper::double_value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.double_value) + return _internal_double_value(); + } + inline void ValueWrapper::set_double_value(double value) { + _internal_set_double_value(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.double_value) + } + + // .Canary.protobuf.kv.ArrayType array_value = 4; + inline bool ValueWrapper::_internal_has_array_value() const { + return value_case() == kArrayValue; + } + inline bool ValueWrapper::has_array_value() const { + return _internal_has_array_value(); + } + inline void ValueWrapper::set_has_array_value() { + _impl_._oneof_case_[0] = kArrayValue; + } + inline void ValueWrapper::clear_array_value() { + if (_internal_has_array_value()) { + if (GetArenaForAllocation() == nullptr) { + delete _impl_.value_.array_value_; + } + clear_has_value(); + } + } + inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::release_array_value() { + // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.array_value) + if (_internal_has_array_value()) { + clear_has_value(); + ::Canary::protobuf::kv::ArrayType* temp = _impl_.value_.array_value_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + _impl_.value_.array_value_ = nullptr; + return temp; + } else { + return nullptr; + } + } + inline const ::Canary::protobuf::kv::ArrayType &ValueWrapper::_internal_array_value() const { + return _internal_has_array_value() + ? *_impl_.value_.array_value_ + : reinterpret_cast<::Canary::protobuf::kv::ArrayType &>(::Canary::protobuf::kv::_ArrayType_default_instance_); + } + inline const ::Canary::protobuf::kv::ArrayType &ValueWrapper::array_value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.array_value) + return _internal_array_value(); + } + inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::unsafe_arena_release_array_value() { + // @@protoc_insertion_point(field_unsafe_arena_release:Canary.protobuf.kv.ValueWrapper.array_value) + if (_internal_has_array_value()) { + clear_has_value(); + ::Canary::protobuf::kv::ArrayType* temp = _impl_.value_.array_value_; + _impl_.value_.array_value_ = nullptr; + return temp; + } else { + return nullptr; + } + } + inline void ValueWrapper::unsafe_arena_set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value) { + clear_value(); + if (array_value) { + set_has_array_value(); + _impl_.value_.array_value_ = array_value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.ValueWrapper.array_value) + } + inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::_internal_mutable_array_value() { + if (!_internal_has_array_value()) { + clear_value(); + set_has_array_value(); + _impl_.value_.array_value_ = CreateMaybeMessage<::Canary::protobuf::kv::ArrayType>(GetArenaForAllocation()); + } + return _impl_.value_.array_value_; + } + inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::mutable_array_value() { + ::Canary::protobuf::kv::ArrayType* _msg = _internal_mutable_array_value(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.array_value) + return _msg; + } + + // .Canary.protobuf.kv.MapType map_value = 5; + inline bool ValueWrapper::_internal_has_map_value() const { + return value_case() == kMapValue; + } + inline bool ValueWrapper::has_map_value() const { + return _internal_has_map_value(); + } + inline void ValueWrapper::set_has_map_value() { + _impl_._oneof_case_[0] = kMapValue; + } + inline void ValueWrapper::clear_map_value() { + if (_internal_has_map_value()) { + if (GetArenaForAllocation() == nullptr) { + delete _impl_.value_.map_value_; + } + clear_has_value(); + } + } + inline ::Canary::protobuf::kv::MapType* ValueWrapper::release_map_value() { + // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.map_value) + if (_internal_has_map_value()) { + clear_has_value(); + ::Canary::protobuf::kv::MapType* temp = _impl_.value_.map_value_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + _impl_.value_.map_value_ = nullptr; + return temp; + } else { + return nullptr; + } + } + inline const ::Canary::protobuf::kv::MapType &ValueWrapper::_internal_map_value() const { + return _internal_has_map_value() + ? *_impl_.value_.map_value_ + : reinterpret_cast<::Canary::protobuf::kv::MapType &>(::Canary::protobuf::kv::_MapType_default_instance_); + } + inline const ::Canary::protobuf::kv::MapType &ValueWrapper::map_value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.map_value) + return _internal_map_value(); + } + inline ::Canary::protobuf::kv::MapType* ValueWrapper::unsafe_arena_release_map_value() { + // @@protoc_insertion_point(field_unsafe_arena_release:Canary.protobuf.kv.ValueWrapper.map_value) + if (_internal_has_map_value()) { + clear_has_value(); + ::Canary::protobuf::kv::MapType* temp = _impl_.value_.map_value_; + _impl_.value_.map_value_ = nullptr; + return temp; + } else { + return nullptr; + } + } + inline void ValueWrapper::unsafe_arena_set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value) { + clear_value(); + if (map_value) { + set_has_map_value(); + _impl_.value_.map_value_ = map_value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.ValueWrapper.map_value) + } + inline ::Canary::protobuf::kv::MapType* ValueWrapper::_internal_mutable_map_value() { + if (!_internal_has_map_value()) { + clear_value(); + set_has_map_value(); + _impl_.value_.map_value_ = CreateMaybeMessage<::Canary::protobuf::kv::MapType>(GetArenaForAllocation()); + } + return _impl_.value_.map_value_; + } + inline ::Canary::protobuf::kv::MapType* ValueWrapper::mutable_map_value() { + ::Canary::protobuf::kv::MapType* _msg = _internal_mutable_map_value(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.map_value) + return _msg; + } + + // bool bool_value = 6; + inline bool ValueWrapper::_internal_has_bool_value() const { + return value_case() == kBoolValue; + } + inline bool ValueWrapper::has_bool_value() const { + return _internal_has_bool_value(); + } + inline void ValueWrapper::set_has_bool_value() { + _impl_._oneof_case_[0] = kBoolValue; + } + inline void ValueWrapper::clear_bool_value() { + if (_internal_has_bool_value()) { + _impl_.value_.bool_value_ = false; + clear_has_value(); + } + } + inline bool ValueWrapper::_internal_bool_value() const { + if (_internal_has_bool_value()) { + return _impl_.value_.bool_value_; + } + return false; + } + inline void ValueWrapper::_internal_set_bool_value(bool value) { + if (!_internal_has_bool_value()) { + clear_value(); + set_has_bool_value(); + } + _impl_.value_.bool_value_ = value; + } + inline bool ValueWrapper::bool_value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.bool_value) + return _internal_bool_value(); + } + inline void ValueWrapper::set_bool_value(bool value) { + _internal_set_bool_value(value); + // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.bool_value) + } + + inline bool ValueWrapper::has_value() const { + return value_case() != VALUE_NOT_SET; + } + inline void ValueWrapper::clear_has_value() { + _impl_._oneof_case_[0] = VALUE_NOT_SET; + } + inline ValueWrapper::ValueCase ValueWrapper::value_case() const { + return ValueWrapper::ValueCase(_impl_._oneof_case_[0]); + } + // ------------------------------------------------------------------- + + // ArrayType + + // repeated .Canary.protobuf.kv.ValueWrapper values = 1; + inline int ArrayType::_internal_values_size() const { + return _impl_.values_.size(); + } + inline int ArrayType::values_size() const { + return _internal_values_size(); + } + inline void ArrayType::clear_values() { + _impl_.values_.Clear(); + } + inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::mutable_values(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ArrayType.values) + return _impl_.values_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper>* + ArrayType::mutable_values() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.kv.ArrayType.values) + return &_impl_.values_; + } + inline const ::Canary::protobuf::kv::ValueWrapper &ArrayType::_internal_values(int index) const { + return _impl_.values_.Get(index); + } + inline const ::Canary::protobuf::kv::ValueWrapper &ArrayType::values(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ArrayType.values) + return _internal_values(index); + } + inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::_internal_add_values() { + return _impl_.values_.Add(); + } + inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::add_values() { + ::Canary::protobuf::kv::ValueWrapper* _add = _internal_add_values(); + // @@protoc_insertion_point(field_add:Canary.protobuf.kv.ArrayType.values) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper> & + ArrayType::values() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.kv.ArrayType.values) + return _impl_.values_; + } + + // ------------------------------------------------------------------- + + // KeyValuePair + + // string key = 1; + inline void KeyValuePair::clear_key() { + _impl_.key_.ClearToEmpty(); + } + inline const std::string &KeyValuePair::key() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.KeyValuePair.key) + return _internal_key(); + } + template + inline PROTOBUF_ALWAYS_INLINE void KeyValuePair::set_key(ArgT0 &&arg0, ArgT... args) { + + _impl_.key_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Canary.protobuf.kv.KeyValuePair.key) + } + inline std::string* KeyValuePair::mutable_key() { + std::string* _s = _internal_mutable_key(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.KeyValuePair.key) + return _s; + } + inline const std::string &KeyValuePair::_internal_key() const { + return _impl_.key_.Get(); + } + inline void KeyValuePair::_internal_set_key(const std::string &value) { + + _impl_.key_.Set(value, GetArenaForAllocation()); + } + inline std::string* KeyValuePair::_internal_mutable_key() { + + return _impl_.key_.Mutable(GetArenaForAllocation()); + } + inline std::string* KeyValuePair::release_key() { + // @@protoc_insertion_point(field_release:Canary.protobuf.kv.KeyValuePair.key) + return _impl_.key_.Release(); + } + inline void KeyValuePair::set_allocated_key(std::string* key) { + if (key != nullptr) { + + } else { + } + _impl_.key_.SetAllocated(key, GetArenaForAllocation()); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.key_.IsDefault()) { - _impl_.key_.Set("", GetArenaForAllocation()); - } + if (_impl_.key_.IsDefault()) { + _impl_.key_.Set("", GetArenaForAllocation()); + } #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.KeyValuePair.key) -} - -// .Canary.protobuf.kv.ValueWrapper value = 2; -inline bool KeyValuePair::_internal_has_value() const { - return this != internal_default_instance() && _impl_.value_ != nullptr; -} -inline bool KeyValuePair::has_value() const { - return _internal_has_value(); -} -inline void KeyValuePair::clear_value() { - if (GetArenaForAllocation() == nullptr && _impl_.value_ != nullptr) { - delete _impl_.value_; - } - _impl_.value_ = nullptr; -} -inline const ::Canary::protobuf::kv::ValueWrapper& KeyValuePair::_internal_value() const { - const ::Canary::protobuf::kv::ValueWrapper* p = _impl_.value_; - return p != nullptr ? *p : reinterpret_cast( - ::Canary::protobuf::kv::_ValueWrapper_default_instance_); -} -inline const ::Canary::protobuf::kv::ValueWrapper& KeyValuePair::value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.KeyValuePair.value) - return _internal_value(); -} -inline void KeyValuePair::unsafe_arena_set_allocated_value( - ::Canary::protobuf::kv::ValueWrapper* value) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.value_); - } - _impl_.value_ = value; - if (value) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.KeyValuePair.value) -} -inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::release_value() { - - ::Canary::protobuf::kv::ValueWrapper* temp = _impl_.value_; - _impl_.value_ = nullptr; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.KeyValuePair.key) + } + + // .Canary.protobuf.kv.ValueWrapper value = 2; + inline bool KeyValuePair::_internal_has_value() const { + return this != internal_default_instance() && _impl_.value_ != nullptr; + } + inline bool KeyValuePair::has_value() const { + return _internal_has_value(); + } + inline void KeyValuePair::clear_value() { + if (GetArenaForAllocation() == nullptr && _impl_.value_ != nullptr) { + delete _impl_.value_; + } + _impl_.value_ = nullptr; + } + inline const ::Canary::protobuf::kv::ValueWrapper &KeyValuePair::_internal_value() const { + const ::Canary::protobuf::kv::ValueWrapper* p = _impl_.value_; + return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::kv::_ValueWrapper_default_instance_); + } + inline const ::Canary::protobuf::kv::ValueWrapper &KeyValuePair::value() const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.KeyValuePair.value) + return _internal_value(); + } + inline void KeyValuePair::unsafe_arena_set_allocated_value( + ::Canary::protobuf::kv::ValueWrapper* value + ) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.value_); + } + _impl_.value_ = value; + if (value) { + + } else { + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.KeyValuePair.value) + } + inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::release_value() { + + ::Canary::protobuf::kv::ValueWrapper* temp = _impl_.value_; + _impl_.value_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::unsafe_arena_release_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.KeyValuePair.value) - - ::Canary::protobuf::kv::ValueWrapper* temp = _impl_.value_; - _impl_.value_ = nullptr; - return temp; -} -inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::_internal_mutable_value() { - - if (_impl_.value_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::kv::ValueWrapper>(GetArenaForAllocation()); - _impl_.value_ = p; - } - return _impl_.value_; -} -inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::mutable_value() { - ::Canary::protobuf::kv::ValueWrapper* _msg = _internal_mutable_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.KeyValuePair.value) - return _msg; -} -inline void KeyValuePair::set_allocated_value(::Canary::protobuf::kv::ValueWrapper* value) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.value_; - } - if (value) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(value); - if (message_arena != submessage_arena) { - value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, value, submessage_arena); - } - - } else { - - } - _impl_.value_ = value; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.KeyValuePair.value) -} - -// ------------------------------------------------------------------- - -// MapType - -// repeated .Canary.protobuf.kv.KeyValuePair items = 1; -inline int MapType::_internal_items_size() const { - return _impl_.items_.size(); -} -inline int MapType::items_size() const { - return _internal_items_size(); -} -inline void MapType::clear_items() { - _impl_.items_.Clear(); -} -inline ::Canary::protobuf::kv::KeyValuePair* MapType::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.MapType.items) - return _impl_.items_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::KeyValuePair >* -MapType::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.kv.MapType.items) - return &_impl_.items_; -} -inline const ::Canary::protobuf::kv::KeyValuePair& MapType::_internal_items(int index) const { - return _impl_.items_.Get(index); -} -inline const ::Canary::protobuf::kv::KeyValuePair& MapType::items(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.MapType.items) - return _internal_items(index); -} -inline ::Canary::protobuf::kv::KeyValuePair* MapType::_internal_add_items() { - return _impl_.items_.Add(); -} -inline ::Canary::protobuf::kv::KeyValuePair* MapType::add_items() { - ::Canary::protobuf::kv::KeyValuePair* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:Canary.protobuf.kv.MapType.items) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Canary::protobuf::kv::KeyValuePair >& -MapType::items() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.kv.MapType.items) - return _impl_.items_; -} + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; + } + inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::unsafe_arena_release_value() { + // @@protoc_insertion_point(field_release:Canary.protobuf.kv.KeyValuePair.value) + + ::Canary::protobuf::kv::ValueWrapper* temp = _impl_.value_; + _impl_.value_ = nullptr; + return temp; + } + inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::_internal_mutable_value() { + + if (_impl_.value_ == nullptr) { + auto* p = CreateMaybeMessage<::Canary::protobuf::kv::ValueWrapper>(GetArenaForAllocation()); + _impl_.value_ = p; + } + return _impl_.value_; + } + inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::mutable_value() { + ::Canary::protobuf::kv::ValueWrapper* _msg = _internal_mutable_value(); + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.KeyValuePair.value) + return _msg; + } + inline void KeyValuePair::set_allocated_value(::Canary::protobuf::kv::ValueWrapper* value) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.value_; + } + if (value) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(value); + if (message_arena != submessage_arena) { + value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, value, submessage_arena + ); + } + + } else { + } + _impl_.value_ = value; + // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.KeyValuePair.value) + } + + // ------------------------------------------------------------------- + + // MapType + + // repeated .Canary.protobuf.kv.KeyValuePair items = 1; + inline int MapType::_internal_items_size() const { + return _impl_.items_.size(); + } + inline int MapType::items_size() const { + return _internal_items_size(); + } + inline void MapType::clear_items() { + _impl_.items_.Clear(); + } + inline ::Canary::protobuf::kv::KeyValuePair* MapType::mutable_items(int index) { + // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.MapType.items) + return _impl_.items_.Mutable(index); + } + inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair>* + MapType::mutable_items() { + // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.kv.MapType.items) + return &_impl_.items_; + } + inline const ::Canary::protobuf::kv::KeyValuePair &MapType::_internal_items(int index) const { + return _impl_.items_.Get(index); + } + inline const ::Canary::protobuf::kv::KeyValuePair &MapType::items(int index) const { + // @@protoc_insertion_point(field_get:Canary.protobuf.kv.MapType.items) + return _internal_items(index); + } + inline ::Canary::protobuf::kv::KeyValuePair* MapType::_internal_add_items() { + return _impl_.items_.Add(); + } + inline ::Canary::protobuf::kv::KeyValuePair* MapType::add_items() { + ::Canary::protobuf::kv::KeyValuePair* _add = _internal_add_items(); + // @@protoc_insertion_point(field_add:Canary.protobuf.kv.MapType.items) + return _add; + } + inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair> & + MapType::items() const { + // @@protoc_insertion_point(field_list:Canary.protobuf.kv.MapType.items) + return _impl_.items_; + } #ifdef __GNUC__ - #pragma GCC diagnostic pop -#endif // __GNUC__ -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- + #pragma GCC diagnostic pop +#endif // __GNUC__ + // ------------------------------------------------------------------- -// ------------------------------------------------------------------- + // ------------------------------------------------------------------- + // ------------------------------------------------------------------- -// @@protoc_insertion_point(namespace_scope) + // @@protoc_insertion_point(namespace_scope) -} // namespace kv -} // namespace protobuf -} // namespace Canary + } // namespace kv + } // namespace protobuf +} // namespace Canary // @@protoc_insertion_point(global_scope) #include -#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_kv_2eproto +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_kv_2eproto From e2d8c9d218b952e4d0ba1ef6c0daef230615da0b Mon Sep 17 00:00:00 2001 From: Eduardo Dantas Date: Wed, 28 Feb 2024 22:14:45 -0300 Subject: [PATCH 10/10] fix: remove protobuf compiled files --- src/protobuf/appearances.pb.cc | 10027 ------------------------- src/protobuf/appearances.pb.h | 12409 ------------------------------- src/protobuf/kv.pb.cc | 1247 ---- src/protobuf/kv.pb.h | 1533 ---- 4 files changed, 25216 deletions(-) delete mode 100644 src/protobuf/appearances.pb.cc delete mode 100644 src/protobuf/appearances.pb.h delete mode 100644 src/protobuf/kv.pb.cc delete mode 100644 src/protobuf/kv.pb.h diff --git a/src/protobuf/appearances.pb.cc b/src/protobuf/appearances.pb.cc deleted file mode 100644 index ced2a617345..00000000000 --- a/src/protobuf/appearances.pb.cc +++ /dev/null @@ -1,10027 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: appearances.proto - -#include "appearances.pb.h" - -#include - -#include -#include -#include -#include -#include -#include -#include -// @@protoc_insertion_point(includes) -#include - -PROTOBUF_PRAGMA_INIT_SEG - -namespace _pb = ::PROTOBUF_NAMESPACE_ID; -namespace _pbi = _pb::internal; - -namespace Canary { -namespace protobuf { -namespace appearances { -PROTOBUF_CONSTEXPR Coordinate::Coordinate( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.x_)*/0u - , /*decltype(_impl_.y_)*/0u - , /*decltype(_impl_.z_)*/0u} {} -struct CoordinateDefaultTypeInternal { - PROTOBUF_CONSTEXPR CoordinateDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~CoordinateDefaultTypeInternal() {} - union { - Coordinate _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CoordinateDefaultTypeInternal _Coordinate_default_instance_; -PROTOBUF_CONSTEXPR Appearances::Appearances( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.object_)*/{} - , /*decltype(_impl_.outfit_)*/{} - , /*decltype(_impl_.effect_)*/{} - , /*decltype(_impl_.missile_)*/{} - , /*decltype(_impl_.special_meaning_appearance_ids_)*/nullptr} {} -struct AppearancesDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearancesDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearancesDefaultTypeInternal() {} - union { - Appearances _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearancesDefaultTypeInternal _Appearances_default_instance_; -PROTOBUF_CONSTEXPR SpritePhase::SpritePhase( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.duration_min_)*/0u - , /*decltype(_impl_.duration_max_)*/0u} {} -struct SpritePhaseDefaultTypeInternal { - PROTOBUF_CONSTEXPR SpritePhaseDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~SpritePhaseDefaultTypeInternal() {} - union { - SpritePhase _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SpritePhaseDefaultTypeInternal _SpritePhase_default_instance_; -PROTOBUF_CONSTEXPR SpriteAnimation::SpriteAnimation( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.sprite_phase_)*/{} - , /*decltype(_impl_.default_start_phase_)*/0u - , /*decltype(_impl_.synchronized_)*/false - , /*decltype(_impl_.random_start_phase_)*/false - , /*decltype(_impl_.loop_count_)*/0u - , /*decltype(_impl_.loop_type_)*/-1} {} -struct SpriteAnimationDefaultTypeInternal { - PROTOBUF_CONSTEXPR SpriteAnimationDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~SpriteAnimationDefaultTypeInternal() {} - union { - SpriteAnimation _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SpriteAnimationDefaultTypeInternal _SpriteAnimation_default_instance_; -PROTOBUF_CONSTEXPR Box::Box( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.x_)*/0u - , /*decltype(_impl_.y_)*/0u - , /*decltype(_impl_.width_)*/0u - , /*decltype(_impl_.height_)*/0u} {} -struct BoxDefaultTypeInternal { - PROTOBUF_CONSTEXPR BoxDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~BoxDefaultTypeInternal() {} - union { - Box _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 BoxDefaultTypeInternal _Box_default_instance_; -PROTOBUF_CONSTEXPR SpriteInfo::SpriteInfo( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.sprite_id_)*/{} - , /*decltype(_impl_.bounding_box_per_direction_)*/{} - , /*decltype(_impl_.animation_)*/nullptr - , /*decltype(_impl_.pattern_width_)*/0u - , /*decltype(_impl_.pattern_height_)*/0u - , /*decltype(_impl_.pattern_depth_)*/0u - , /*decltype(_impl_.layers_)*/0u - , /*decltype(_impl_.bounding_square_)*/0u - , /*decltype(_impl_.is_opaque_)*/false} {} -struct SpriteInfoDefaultTypeInternal { - PROTOBUF_CONSTEXPR SpriteInfoDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~SpriteInfoDefaultTypeInternal() {} - union { - SpriteInfo _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SpriteInfoDefaultTypeInternal _SpriteInfo_default_instance_; -PROTOBUF_CONSTEXPR FrameGroup::FrameGroup( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.sprite_info_)*/nullptr - , /*decltype(_impl_.fixed_frame_group_)*/0 - , /*decltype(_impl_.id_)*/0u} {} -struct FrameGroupDefaultTypeInternal { - PROTOBUF_CONSTEXPR FrameGroupDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~FrameGroupDefaultTypeInternal() {} - union { - FrameGroup _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FrameGroupDefaultTypeInternal _FrameGroup_default_instance_; -PROTOBUF_CONSTEXPR Appearance::Appearance( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.frame_group_)*/{} - , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.flags_)*/nullptr - , /*decltype(_impl_.id_)*/0u} {} -struct AppearanceDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceDefaultTypeInternal() {} - union { - Appearance _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceDefaultTypeInternal _Appearance_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlags::AppearanceFlags( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.npcsaledata_)*/{} - , /*decltype(_impl_.bank_)*/nullptr - , /*decltype(_impl_.write_)*/nullptr - , /*decltype(_impl_.write_once_)*/nullptr - , /*decltype(_impl_.hook_)*/nullptr - , /*decltype(_impl_.light_)*/nullptr - , /*decltype(_impl_.shift_)*/nullptr - , /*decltype(_impl_.height_)*/nullptr - , /*decltype(_impl_.automap_)*/nullptr - , /*decltype(_impl_.lenshelp_)*/nullptr - , /*decltype(_impl_.clothes_)*/nullptr - , /*decltype(_impl_.default_action_)*/nullptr - , /*decltype(_impl_.market_)*/nullptr - , /*decltype(_impl_.changedtoexpire_)*/nullptr - , /*decltype(_impl_.cyclopediaitem_)*/nullptr - , /*decltype(_impl_.upgradeclassification_)*/nullptr - , /*decltype(_impl_.clip_)*/false - , /*decltype(_impl_.bottom_)*/false - , /*decltype(_impl_.top_)*/false - , /*decltype(_impl_.container_)*/false - , /*decltype(_impl_.cumulative_)*/false - , /*decltype(_impl_.usable_)*/false - , /*decltype(_impl_.forceuse_)*/false - , /*decltype(_impl_.multiuse_)*/false - , /*decltype(_impl_.liquidpool_)*/false - , /*decltype(_impl_.unpass_)*/false - , /*decltype(_impl_.unmove_)*/false - , /*decltype(_impl_.unsight_)*/false - , /*decltype(_impl_.avoid_)*/false - , /*decltype(_impl_.no_movement_animation_)*/false - , /*decltype(_impl_.take_)*/false - , /*decltype(_impl_.liquidcontainer_)*/false - , /*decltype(_impl_.hang_)*/false - , /*decltype(_impl_.rotate_)*/false - , /*decltype(_impl_.dont_hide_)*/false - , /*decltype(_impl_.translucent_)*/false - , /*decltype(_impl_.lying_object_)*/false - , /*decltype(_impl_.animate_always_)*/false - , /*decltype(_impl_.fullbank_)*/false - , /*decltype(_impl_.ignore_look_)*/false - , /*decltype(_impl_.wrap_)*/false - , /*decltype(_impl_.unwrap_)*/false - , /*decltype(_impl_.topeffect_)*/false - , /*decltype(_impl_.corpse_)*/false - , /*decltype(_impl_.player_corpse_)*/false - , /*decltype(_impl_.ammo_)*/false - , /*decltype(_impl_.show_off_socket_)*/false - , /*decltype(_impl_.reportable_)*/false - , /*decltype(_impl_.reverse_addons_east_)*/false - , /*decltype(_impl_.reverse_addons_west_)*/false - , /*decltype(_impl_.reverse_addons_south_)*/false - , /*decltype(_impl_.reverse_addons_north_)*/false - , /*decltype(_impl_.wearout_)*/false - , /*decltype(_impl_.clockexpire_)*/false - , /*decltype(_impl_.expire_)*/false - , /*decltype(_impl_.expirestop_)*/false - , /*decltype(_impl_.wrapkit_)*/false} {} -struct AppearanceFlagsDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagsDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagsDefaultTypeInternal() {} - union { - AppearanceFlags _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagsDefaultTypeInternal _AppearanceFlags_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagUpgradeClassification::AppearanceFlagUpgradeClassification( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.upgrade_classification_)*/0u} {} -struct AppearanceFlagUpgradeClassificationDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagUpgradeClassificationDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagUpgradeClassificationDefaultTypeInternal() {} - union { - AppearanceFlagUpgradeClassification _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagUpgradeClassificationDefaultTypeInternal _AppearanceFlagUpgradeClassification_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagBank::AppearanceFlagBank( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.waypoints_)*/0u} {} -struct AppearanceFlagBankDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagBankDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagBankDefaultTypeInternal() {} - union { - AppearanceFlagBank _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagBankDefaultTypeInternal _AppearanceFlagBank_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagWrite::AppearanceFlagWrite( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.max_text_length_)*/0u} {} -struct AppearanceFlagWriteDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagWriteDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagWriteDefaultTypeInternal() {} - union { - AppearanceFlagWrite _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagWriteDefaultTypeInternal _AppearanceFlagWrite_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagWriteOnce::AppearanceFlagWriteOnce( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.max_text_length_once_)*/0u} {} -struct AppearanceFlagWriteOnceDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagWriteOnceDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagWriteOnceDefaultTypeInternal() {} - union { - AppearanceFlagWriteOnce _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagWriteOnceDefaultTypeInternal _AppearanceFlagWriteOnce_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagLight::AppearanceFlagLight( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.brightness_)*/0u - , /*decltype(_impl_.color_)*/0u} {} -struct AppearanceFlagLightDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagLightDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagLightDefaultTypeInternal() {} - union { - AppearanceFlagLight _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagLightDefaultTypeInternal _AppearanceFlagLight_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagHeight::AppearanceFlagHeight( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.elevation_)*/0u} {} -struct AppearanceFlagHeightDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagHeightDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagHeightDefaultTypeInternal() {} - union { - AppearanceFlagHeight _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagHeightDefaultTypeInternal _AppearanceFlagHeight_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagShift::AppearanceFlagShift( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.x_)*/0u - , /*decltype(_impl_.y_)*/0u} {} -struct AppearanceFlagShiftDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagShiftDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagShiftDefaultTypeInternal() {} - union { - AppearanceFlagShift _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagShiftDefaultTypeInternal _AppearanceFlagShift_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagClothes::AppearanceFlagClothes( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.slot_)*/0u} {} -struct AppearanceFlagClothesDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagClothesDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagClothesDefaultTypeInternal() {} - union { - AppearanceFlagClothes _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagClothesDefaultTypeInternal _AppearanceFlagClothes_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagDefaultAction::AppearanceFlagDefaultAction( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.action_)*/0} {} -struct AppearanceFlagDefaultActionDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagDefaultActionDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagDefaultActionDefaultTypeInternal() {} - union { - AppearanceFlagDefaultAction _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagDefaultActionDefaultTypeInternal _AppearanceFlagDefaultAction_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagMarket::AppearanceFlagMarket( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.restrict_to_profession_)*/{} - , /*decltype(_impl_.trade_as_object_id_)*/0u - , /*decltype(_impl_.show_as_object_id_)*/0u - , /*decltype(_impl_.minimum_level_)*/0u - , /*decltype(_impl_.category_)*/1} {} -struct AppearanceFlagMarketDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagMarketDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagMarketDefaultTypeInternal() {} - union { - AppearanceFlagMarket _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagMarketDefaultTypeInternal _AppearanceFlagMarket_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagNPC::AppearanceFlagNPC( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.location_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.currency_quest_flag_display_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.sale_price_)*/0u - , /*decltype(_impl_.buy_price_)*/0u - , /*decltype(_impl_.currency_object_type_id_)*/0u} {} -struct AppearanceFlagNPCDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagNPCDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagNPCDefaultTypeInternal() {} - union { - AppearanceFlagNPC _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagNPCDefaultTypeInternal _AppearanceFlagNPC_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagAutomap::AppearanceFlagAutomap( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.color_)*/0u} {} -struct AppearanceFlagAutomapDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagAutomapDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagAutomapDefaultTypeInternal() {} - union { - AppearanceFlagAutomap _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagAutomapDefaultTypeInternal _AppearanceFlagAutomap_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagHook::AppearanceFlagHook( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.direction_)*/1} {} -struct AppearanceFlagHookDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagHookDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagHookDefaultTypeInternal() {} - union { - AppearanceFlagHook _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagHookDefaultTypeInternal _AppearanceFlagHook_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagLenshelp::AppearanceFlagLenshelp( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.id_)*/0u} {} -struct AppearanceFlagLenshelpDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagLenshelpDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagLenshelpDefaultTypeInternal() {} - union { - AppearanceFlagLenshelp _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagLenshelpDefaultTypeInternal _AppearanceFlagLenshelp_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagChangedToExpire::AppearanceFlagChangedToExpire( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.former_object_typeid_)*/0u} {} -struct AppearanceFlagChangedToExpireDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagChangedToExpireDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagChangedToExpireDefaultTypeInternal() {} - union { - AppearanceFlagChangedToExpire _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagChangedToExpireDefaultTypeInternal _AppearanceFlagChangedToExpire_default_instance_; -PROTOBUF_CONSTEXPR AppearanceFlagCyclopedia::AppearanceFlagCyclopedia( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.cyclopedia_type_)*/0u} {} -struct AppearanceFlagCyclopediaDefaultTypeInternal { - PROTOBUF_CONSTEXPR AppearanceFlagCyclopediaDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~AppearanceFlagCyclopediaDefaultTypeInternal() {} - union { - AppearanceFlagCyclopedia _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AppearanceFlagCyclopediaDefaultTypeInternal _AppearanceFlagCyclopedia_default_instance_; -PROTOBUF_CONSTEXPR SpecialMeaningAppearanceIds::SpecialMeaningAppearanceIds( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.gold_coin_id_)*/0u - , /*decltype(_impl_.platinum_coin_id_)*/0u - , /*decltype(_impl_.crystal_coin_id_)*/0u - , /*decltype(_impl_.tibia_coin_id_)*/0u - , /*decltype(_impl_.stamped_letter_id_)*/0u - , /*decltype(_impl_.supply_stash_id_)*/0u - , /*decltype(_impl_.reward_chest_id_)*/0u} {} -struct SpecialMeaningAppearanceIdsDefaultTypeInternal { - PROTOBUF_CONSTEXPR SpecialMeaningAppearanceIdsDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~SpecialMeaningAppearanceIdsDefaultTypeInternal() {} - union { - SpecialMeaningAppearanceIds _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SpecialMeaningAppearanceIdsDefaultTypeInternal _SpecialMeaningAppearanceIds_default_instance_; -} // namespace appearances -} // namespace protobuf -} // namespace Canary -static ::_pb::Metadata file_level_metadata_appearances_2eproto[26]; -static const ::_pb::EnumDescriptor* file_level_enum_descriptors_appearances_2eproto[6]; -static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_appearances_2eproto = nullptr; - -const uint32_t TableStruct_appearances_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Coordinate, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Coordinate, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Coordinate, _impl_.x_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Coordinate, _impl_.y_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Coordinate, _impl_.z_), - 0, - 1, - 2, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _impl_.object_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _impl_.outfit_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _impl_.effect_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _impl_.missile_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearances, _impl_.special_meaning_appearance_ids_), - ~0u, - ~0u, - ~0u, - ~0u, - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpritePhase, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpritePhase, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpritePhase, _impl_.duration_min_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpritePhase, _impl_.duration_max_), - 0, - 1, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_.default_start_phase_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_.synchronized_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_.random_start_phase_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_.loop_type_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_.loop_count_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteAnimation, _impl_.sprite_phase_), - 0, - 1, - 2, - 4, - 3, - ~0u, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Box, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Box, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Box, _impl_.x_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Box, _impl_.y_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Box, _impl_.width_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Box, _impl_.height_), - 0, - 1, - 2, - 3, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.pattern_width_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.pattern_height_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.pattern_depth_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.layers_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.sprite_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.bounding_square_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.animation_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.is_opaque_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpriteInfo, _impl_.bounding_box_per_direction_), - 1, - 2, - 3, - 4, - ~0u, - 5, - 0, - 6, - ~0u, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::FrameGroup, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::FrameGroup, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::FrameGroup, _impl_.fixed_frame_group_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::FrameGroup, _impl_.id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::FrameGroup, _impl_.sprite_info_), - 1, - 2, - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _impl_.id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _impl_.frame_group_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _impl_.flags_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _impl_.name_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::Appearance, _impl_.description_), - 3, - ~0u, - 2, - 0, - 1, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.bank_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.clip_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.bottom_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.top_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.container_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.cumulative_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.usable_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.forceuse_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.multiuse_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.write_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.write_once_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.liquidpool_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.unpass_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.unmove_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.unsight_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.avoid_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.no_movement_animation_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.take_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.liquidcontainer_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.hang_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.hook_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.rotate_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.light_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.dont_hide_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.translucent_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.shift_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.height_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.lying_object_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.animate_always_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.automap_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.lenshelp_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.fullbank_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.ignore_look_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.clothes_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.default_action_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.market_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.wrap_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.unwrap_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.topeffect_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.npcsaledata_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.changedtoexpire_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.corpse_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.player_corpse_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.cyclopediaitem_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.ammo_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.show_off_socket_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.reportable_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.upgradeclassification_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.reverse_addons_east_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.reverse_addons_west_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.reverse_addons_south_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.reverse_addons_north_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.wearout_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.clockexpire_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.expire_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.expirestop_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlags, _impl_.wrapkit_), - 0, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 1, - 2, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 3, - 32, - 4, - 33, - 34, - 5, - 6, - 35, - 36, - 7, - 8, - 37, - 38, - 9, - 10, - 11, - 39, - 40, - 41, - ~0u, - 12, - 42, - 43, - 13, - 44, - 45, - 46, - 14, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification, _impl_.upgrade_classification_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagBank, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagBank, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagBank, _impl_.waypoints_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagWrite, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagWrite, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagWrite, _impl_.max_text_length_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagWriteOnce, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagWriteOnce, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagWriteOnce, _impl_.max_text_length_once_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLight, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLight, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLight, _impl_.brightness_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLight, _impl_.color_), - 0, - 1, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagHeight, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagHeight, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagHeight, _impl_.elevation_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagShift, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagShift, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagShift, _impl_.x_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagShift, _impl_.y_), - 0, - 1, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagClothes, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagClothes, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagClothes, _impl_.slot_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagDefaultAction, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagDefaultAction, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagDefaultAction, _impl_.action_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _impl_.category_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _impl_.trade_as_object_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _impl_.show_as_object_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _impl_.restrict_to_profession_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagMarket, _impl_.minimum_level_), - 3, - 0, - 1, - ~0u, - 2, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_.name_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_.location_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_.sale_price_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_.buy_price_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_.currency_object_type_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagNPC, _impl_.currency_quest_flag_display_name_), - 0, - 1, - 3, - 4, - 5, - 2, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagAutomap, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagAutomap, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagAutomap, _impl_.color_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagHook, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagHook, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagHook, _impl_.direction_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLenshelp, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLenshelp, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagLenshelp, _impl_.id_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire, _impl_.former_object_typeid_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagCyclopedia, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagCyclopedia, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::AppearanceFlagCyclopedia, _impl_.cyclopedia_type_), - 0, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.gold_coin_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.platinum_coin_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.crystal_coin_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.tibia_coin_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.stamped_letter_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.supply_stash_id_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds, _impl_.reward_chest_id_), - 0, - 1, - 2, - 3, - 4, - 5, - 6, -}; -static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - { 0, 9, -1, sizeof(::Canary::protobuf::appearances::Coordinate)}, - { 12, 23, -1, sizeof(::Canary::protobuf::appearances::Appearances)}, - { 28, 36, -1, sizeof(::Canary::protobuf::appearances::SpritePhase)}, - { 38, 50, -1, sizeof(::Canary::protobuf::appearances::SpriteAnimation)}, - { 56, 66, -1, sizeof(::Canary::protobuf::appearances::Box)}, - { 70, 85, -1, sizeof(::Canary::protobuf::appearances::SpriteInfo)}, - { 94, 103, -1, sizeof(::Canary::protobuf::appearances::FrameGroup)}, - { 106, 117, -1, sizeof(::Canary::protobuf::appearances::Appearance)}, - { 122, 185, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlags)}, - { 242, 249, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification)}, - { 250, 257, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagBank)}, - { 258, 265, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagWrite)}, - { 266, 273, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagWriteOnce)}, - { 274, 282, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagLight)}, - { 284, 291, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagHeight)}, - { 292, 300, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagShift)}, - { 302, 309, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagClothes)}, - { 310, 317, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagDefaultAction)}, - { 318, 329, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagMarket)}, - { 334, 346, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagNPC)}, - { 352, 359, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagAutomap)}, - { 360, 367, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagHook)}, - { 368, 375, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagLenshelp)}, - { 376, 383, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire)}, - { 384, 391, -1, sizeof(::Canary::protobuf::appearances::AppearanceFlagCyclopedia)}, - { 392, 405, -1, sizeof(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds)}, -}; - -static const ::_pb::Message* const file_default_instances[] = { - &::Canary::protobuf::appearances::_Coordinate_default_instance_._instance, - &::Canary::protobuf::appearances::_Appearances_default_instance_._instance, - &::Canary::protobuf::appearances::_SpritePhase_default_instance_._instance, - &::Canary::protobuf::appearances::_SpriteAnimation_default_instance_._instance, - &::Canary::protobuf::appearances::_Box_default_instance_._instance, - &::Canary::protobuf::appearances::_SpriteInfo_default_instance_._instance, - &::Canary::protobuf::appearances::_FrameGroup_default_instance_._instance, - &::Canary::protobuf::appearances::_Appearance_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlags_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagUpgradeClassification_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagBank_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagWrite_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagWriteOnce_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagLight_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagHeight_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagShift_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagClothes_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagDefaultAction_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagMarket_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagNPC_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagAutomap_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagHook_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagLenshelp_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagChangedToExpire_default_instance_._instance, - &::Canary::protobuf::appearances::_AppearanceFlagCyclopedia_default_instance_._instance, - &::Canary::protobuf::appearances::_SpecialMeaningAppearanceIds_default_instance_._instance, -}; - -const char descriptor_table_protodef_appearances_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = - "\n\021appearances.proto\022\033Canary.protobuf.app" - "earances\"-\n\nCoordinate\022\t\n\001x\030\001 \001(\r\022\t\n\001y\030\002" - " \001(\r\022\t\n\001z\030\003 \001(\r\"\324\002\n\013Appearances\0227\n\006objec" - "t\030\001 \003(\0132\'.Canary.protobuf.appearances.Ap" - "pearance\0227\n\006outfit\030\002 \003(\0132\'.Canary.protob" - "uf.appearances.Appearance\0227\n\006effect\030\003 \003(" - "\0132\'.Canary.protobuf.appearances.Appearan" - "ce\0228\n\007missile\030\004 \003(\0132\'.Canary.protobuf.ap" - "pearances.Appearance\022`\n\036special_meaning_" - "appearance_ids\030\005 \001(\01328.Canary.protobuf.a" - "ppearances.SpecialMeaningAppearanceIds\"9" - "\n\013SpritePhase\022\024\n\014duration_min\030\001 \001(\r\022\024\n\014d" - "uration_max\030\002 \001(\r\"\371\001\n\017SpriteAnimation\022\033\n" - "\023default_start_phase\030\001 \001(\r\022\024\n\014synchroniz" - "ed\030\002 \001(\010\022\032\n\022random_start_phase\030\003 \001(\010\022C\n\t" - "loop_type\030\004 \001(\01620.Canary.protobuf.appear" - "ances.ANIMATION_LOOP_TYPE\022\022\n\nloop_count\030" - "\005 \001(\r\022>\n\014sprite_phase\030\006 \003(\0132(.Canary.pro" - "tobuf.appearances.SpritePhase\":\n\003Box\022\t\n\001" - "x\030\001 \001(\r\022\t\n\001y\030\002 \001(\r\022\r\n\005width\030\003 \001(\r\022\016\n\006hei" - "ght\030\004 \001(\r\"\250\002\n\nSpriteInfo\022\025\n\rpattern_widt" - "h\030\001 \001(\r\022\026\n\016pattern_height\030\002 \001(\r\022\025\n\rpatte" - "rn_depth\030\003 \001(\r\022\016\n\006layers\030\004 \001(\r\022\021\n\tsprite" - "_id\030\005 \003(\r\022\027\n\017bounding_square\030\007 \001(\r\022\?\n\tan" - "imation\030\006 \001(\0132,.Canary.protobuf.appearan" - "ces.SpriteAnimation\022\021\n\tis_opaque\030\010 \001(\010\022D" - "\n\032bounding_box_per_direction\030\t \003(\0132 .Can" - "ary.protobuf.appearances.Box\"\241\001\n\nFrameGr" - "oup\022I\n\021fixed_frame_group\030\001 \001(\0162..Canary." - "protobuf.appearances.FIXED_FRAME_GROUP\022\n" - "\n\002id\030\002 \001(\r\022<\n\013sprite_info\030\003 \001(\0132\'.Canary" - ".protobuf.appearances.SpriteInfo\"\266\001\n\nApp" - "earance\022\n\n\002id\030\001 \001(\r\022<\n\013frame_group\030\002 \003(\013" - "2\'.Canary.protobuf.appearances.FrameGrou" - "p\022;\n\005flags\030\003 \001(\0132,.Canary.protobuf.appea" - "rances.AppearanceFlags\022\014\n\004name\030\004 \001(\014\022\023\n\013" - "description\030\005 \001(\014\"\256\017\n\017AppearanceFlags\022=\n" - "\004bank\030\001 \001(\0132/.Canary.protobuf.appearance" - "s.AppearanceFlagBank\022\014\n\004clip\030\002 \001(\010\022\016\n\006bo" - "ttom\030\003 \001(\010\022\013\n\003top\030\004 \001(\010\022\021\n\tcontainer\030\005 \001" - "(\010\022\022\n\ncumulative\030\006 \001(\010\022\016\n\006usable\030\007 \001(\010\022\020" - "\n\010forceuse\030\010 \001(\010\022\020\n\010multiuse\030\t \001(\010\022\?\n\005wr" - "ite\030\n \001(\01320.Canary.protobuf.appearances." - "AppearanceFlagWrite\022H\n\nwrite_once\030\013 \001(\0132" - "4.Canary.protobuf.appearances.Appearance" - "FlagWriteOnce\022\022\n\nliquidpool\030\014 \001(\010\022\016\n\006unp" - "ass\030\r \001(\010\022\016\n\006unmove\030\016 \001(\010\022\017\n\007unsight\030\017 \001" - "(\010\022\r\n\005avoid\030\020 \001(\010\022\035\n\025no_movement_animati" - "on\030\021 \001(\010\022\014\n\004take\030\022 \001(\010\022\027\n\017liquidcontaine" - "r\030\023 \001(\010\022\014\n\004hang\030\024 \001(\010\022=\n\004hook\030\025 \001(\0132/.Ca" - "nary.protobuf.appearances.AppearanceFlag" - "Hook\022\016\n\006rotate\030\026 \001(\010\022\?\n\005light\030\027 \001(\01320.Ca" - "nary.protobuf.appearances.AppearanceFlag" - "Light\022\021\n\tdont_hide\030\030 \001(\010\022\023\n\013translucent\030" - "\031 \001(\010\022\?\n\005shift\030\032 \001(\01320.Canary.protobuf.a" - "ppearances.AppearanceFlagShift\022A\n\006height" - "\030\033 \001(\01321.Canary.protobuf.appearances.App" - "earanceFlagHeight\022\024\n\014lying_object\030\034 \001(\010\022" - "\026\n\016animate_always\030\035 \001(\010\022C\n\007automap\030\036 \001(\013" - "22.Canary.protobuf.appearances.Appearanc" - "eFlagAutomap\022E\n\010lenshelp\030\037 \001(\01323.Canary." - "protobuf.appearances.AppearanceFlagLensh" - "elp\022\020\n\010fullbank\030 \001(\010\022\023\n\013ignore_look\030! \001" - "(\010\022C\n\007clothes\030\" \001(\01322.Canary.protobuf.ap" - "pearances.AppearanceFlagClothes\022P\n\016defau" - "lt_action\030# \001(\01328.Canary.protobuf.appear" - "ances.AppearanceFlagDefaultAction\022A\n\006mar" - "ket\030$ \001(\01321.Canary.protobuf.appearances." - "AppearanceFlagMarket\022\014\n\004wrap\030% \001(\010\022\016\n\006un" - "wrap\030& \001(\010\022\021\n\ttopeffect\030\' \001(\010\022C\n\013npcsale" - "data\030( \003(\0132..Canary.protobuf.appearances" - ".AppearanceFlagNPC\022S\n\017changedtoexpire\030) " - "\001(\0132:.Canary.protobuf.appearances.Appear" - "anceFlagChangedToExpire\022\016\n\006corpse\030* \001(\010\022" - "\025\n\rplayer_corpse\030+ \001(\010\022M\n\016cyclopediaitem" - "\030, \001(\01325.Canary.protobuf.appearances.App" - "earanceFlagCyclopedia\022\014\n\004ammo\030- \001(\010\022\027\n\017s" - "how_off_socket\030. \001(\010\022\022\n\nreportable\030/ \001(\010" - "\022_\n\025upgradeclassification\0300 \001(\0132@.Canary" - ".protobuf.appearances.AppearanceFlagUpgr" - "adeClassification\022\033\n\023reverse_addons_east" - "\0301 \001(\010\022\033\n\023reverse_addons_west\0302 \001(\010\022\034\n\024r" - "everse_addons_south\0303 \001(\010\022\034\n\024reverse_add" - "ons_north\0304 \001(\010\022\017\n\007wearout\0305 \001(\010\022\023\n\013cloc" - "kexpire\0306 \001(\010\022\016\n\006expire\0307 \001(\010\022\022\n\nexpires" - "top\0308 \001(\010\022\017\n\007wrapkit\0309 \001(\010\"E\n#Appearance" - "FlagUpgradeClassification\022\036\n\026upgrade_cla" - "ssification\030\001 \001(\r\"\'\n\022AppearanceFlagBank\022" - "\021\n\twaypoints\030\001 \001(\r\".\n\023AppearanceFlagWrit" - "e\022\027\n\017max_text_length\030\001 \001(\r\"7\n\027Appearance" - "FlagWriteOnce\022\034\n\024max_text_length_once\030\001 " - "\001(\r\"8\n\023AppearanceFlagLight\022\022\n\nbrightness" - "\030\001 \001(\r\022\r\n\005color\030\002 \001(\r\")\n\024AppearanceFlagH" - "eight\022\021\n\televation\030\001 \001(\r\"+\n\023AppearanceFl" - "agShift\022\t\n\001x\030\001 \001(\r\022\t\n\001y\030\002 \001(\r\"%\n\025Appeara" - "nceFlagClothes\022\014\n\004slot\030\001 \001(\r\"Y\n\033Appearan" - "ceFlagDefaultAction\022:\n\006action\030\001 \001(\0162*.Ca" - "nary.protobuf.appearances.PLAYER_ACTION\"" - "\362\001\n\024AppearanceFlagMarket\022<\n\010category\030\001 \001" - "(\0162*.Canary.protobuf.appearances.ITEM_CA" - "TEGORY\022\032\n\022trade_as_object_id\030\002 \001(\r\022\031\n\021sh" - "ow_as_object_id\030\003 \001(\r\022N\n\026restrict_to_pro" - "fession\030\005 \003(\0162..Canary.protobuf.appearan" - "ces.PLAYER_PROFESSION\022\025\n\rminimum_level\030\006" - " \001(\r\"\245\001\n\021AppearanceFlagNPC\022\014\n\004name\030\001 \001(\014" - "\022\020\n\010location\030\002 \001(\014\022\022\n\nsale_price\030\003 \001(\r\022\021" - "\n\tbuy_price\030\004 \001(\r\022\037\n\027currency_object_typ" - "e_id\030\005 \001(\r\022(\n currency_quest_flag_displa" - "y_name\030\006 \001(\014\"&\n\025AppearanceFlagAutomap\022\r\n" - "\005color\030\001 \001(\r\"O\n\022AppearanceFlagHook\0229\n\tdi" - "rection\030\001 \001(\0162&.Canary.protobuf.appearan" - "ces.HOOK_TYPE\"$\n\026AppearanceFlagLenshelp\022" - "\n\n\002id\030\001 \001(\r\"=\n\035AppearanceFlagChangedToEx" - "pire\022\034\n\024former_object_typeid\030\001 \001(\r\"3\n\030Ap" - "pearanceFlagCyclopedia\022\027\n\017cyclopedia_typ" - "e\030\001 \001(\r\"\312\001\n\033SpecialMeaningAppearanceIds\022" - "\024\n\014gold_coin_id\030\001 \001(\r\022\030\n\020platinum_coin_i" - "d\030\002 \001(\r\022\027\n\017crystal_coin_id\030\003 \001(\r\022\025\n\rtibi" - "a_coin_id\030\004 \001(\r\022\031\n\021stamped_letter_id\030\005 \001" - "(\r\022\027\n\017supply_stash_id\030\006 \001(\r\022\027\n\017reward_ch" - "est_id\030\007 \001(\r*\224\001\n\rPLAYER_ACTION\022\026\n\022PLAYER" - "_ACTION_NONE\020\000\022\026\n\022PLAYER_ACTION_LOOK\020\001\022\025" - "\n\021PLAYER_ACTION_USE\020\002\022\026\n\022PLAYER_ACTION_O" - "PEN\020\003\022$\n PLAYER_ACTION_AUTOWALK_HIGHLIGH" - "T\020\004*\315\005\n\rITEM_CATEGORY\022\030\n\024ITEM_CATEGORY_A" - "RMORS\020\001\022\031\n\025ITEM_CATEGORY_AMULETS\020\002\022\027\n\023IT" - "EM_CATEGORY_BOOTS\020\003\022\034\n\030ITEM_CATEGORY_CON" - "TAINERS\020\004\022\034\n\030ITEM_CATEGORY_DECORATION\020\005\022" - "\026\n\022ITEM_CATEGORY_FOOD\020\006\022\036\n\032ITEM_CATEGORY" - "_HELMETS_HATS\020\007\022\026\n\022ITEM_CATEGORY_LEGS\020\010\022" - "\030\n\024ITEM_CATEGORY_OTHERS\020\t\022\031\n\025ITEM_CATEGO" - "RY_POTIONS\020\n\022\027\n\023ITEM_CATEGORY_RINGS\020\013\022\027\n" - "\023ITEM_CATEGORY_RUNES\020\014\022\031\n\025ITEM_CATEGORY_" - "SHIELDS\020\r\022\027\n\023ITEM_CATEGORY_TOOLS\020\016\022\033\n\027IT" - "EM_CATEGORY_VALUABLES\020\017\022\034\n\030ITEM_CATEGORY" - "_AMMUNITION\020\020\022\026\n\022ITEM_CATEGORY_AXES\020\021\022\027\n" - "\023ITEM_CATEGORY_CLUBS\020\022\022\"\n\036ITEM_CATEGORY_" - "DISTANCE_WEAPONS\020\023\022\030\n\024ITEM_CATEGORY_SWOR" - "DS\020\024\022\034\n\030ITEM_CATEGORY_WANDS_RODS\020\025\022!\n\035IT" - "EM_CATEGORY_PREMIUM_SCROLLS\020\026\022\035\n\031ITEM_CA" - "TEGORY_TIBIA_COINS\020\027\022#\n\037ITEM_CATEGORY_CR" - "EATURE_PRODUCTS\020\030\022\030\n\024ITEM_CATEGORY_QUIVE" - "R\020\031*\355\001\n\021PLAYER_PROFESSION\022\"\n\025PLAYER_PROF" - "ESSION_ANY\020\377\377\377\377\377\377\377\377\377\001\022\032\n\026PLAYER_PROFESSI" - "ON_NONE\020\000\022\034\n\030PLAYER_PROFESSION_KNIGHT\020\001\022" - "\035\n\031PLAYER_PROFESSION_PALADIN\020\002\022\036\n\032PLAYER" - "_PROFESSION_SORCERER\020\003\022\033\n\027PLAYER_PROFESS" - "ION_DRUID\020\004\022\036\n\032PLAYER_PROFESSION_PROMOTE" - "D\020\n*\203\001\n\023ANIMATION_LOOP_TYPE\022)\n\034ANIMATION" - "_LOOP_TYPE_PINGPONG\020\377\377\377\377\377\377\377\377\377\001\022 \n\034ANIMAT" - "ION_LOOP_TYPE_INFINITE\020\000\022\037\n\033ANIMATION_LO" - "OP_TYPE_COUNTED\020\001*4\n\tHOOK_TYPE\022\023\n\017HOOK_T" - "YPE_SOUTH\020\001\022\022\n\016HOOK_TYPE_EAST\020\002*\201\001\n\021FIXE" - "D_FRAME_GROUP\022!\n\035FIXED_FRAME_GROUP_OUTFI" - "T_IDLE\020\000\022#\n\037FIXED_FRAME_GROUP_OUTFIT_MOV" - "ING\020\001\022$\n FIXED_FRAME_GROUP_OBJECT_INITIA" - "L\020\002" - ; -static ::_pbi::once_flag descriptor_table_appearances_2eproto_once; -const ::_pbi::DescriptorTable descriptor_table_appearances_2eproto = { - false, false, 6243, descriptor_table_protodef_appearances_2eproto, - "appearances.proto", - &descriptor_table_appearances_2eproto_once, nullptr, 0, 26, - schemas, file_default_instances, TableStruct_appearances_2eproto::offsets, - file_level_metadata_appearances_2eproto, file_level_enum_descriptors_appearances_2eproto, - file_level_service_descriptors_appearances_2eproto, -}; -PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_appearances_2eproto_getter() { - return &descriptor_table_appearances_2eproto; -} - -// Force running AddDescriptors() at dynamic initialization time. -PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_appearances_2eproto(&descriptor_table_appearances_2eproto); -namespace Canary { -namespace protobuf { -namespace appearances { -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_ACTION_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_appearances_2eproto); - return file_level_enum_descriptors_appearances_2eproto[0]; -} -bool PLAYER_ACTION_IsValid(int value) { - switch (value) { - case 0: - case 1: - case 2: - case 3: - case 4: - return true; - default: - return false; - } -} - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ITEM_CATEGORY_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_appearances_2eproto); - return file_level_enum_descriptors_appearances_2eproto[1]; -} -bool ITEM_CATEGORY_IsValid(int value) { - switch (value) { - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: - case 13: - case 14: - case 15: - case 16: - case 17: - case 18: - case 19: - case 20: - case 21: - case 22: - case 23: - case 24: - case 25: - return true; - default: - return false; - } -} - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_PROFESSION_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_appearances_2eproto); - return file_level_enum_descriptors_appearances_2eproto[2]; -} -bool PLAYER_PROFESSION_IsValid(int value) { - switch (value) { - case -1: - case 0: - case 1: - case 2: - case 3: - case 4: - case 10: - return true; - default: - return false; - } -} - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ANIMATION_LOOP_TYPE_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_appearances_2eproto); - return file_level_enum_descriptors_appearances_2eproto[3]; -} -bool ANIMATION_LOOP_TYPE_IsValid(int value) { - switch (value) { - case -1: - case 0: - case 1: - return true; - default: - return false; - } -} - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* HOOK_TYPE_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_appearances_2eproto); - return file_level_enum_descriptors_appearances_2eproto[4]; -} -bool HOOK_TYPE_IsValid(int value) { - switch (value) { - case 1: - case 2: - return true; - default: - return false; - } -} - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FIXED_FRAME_GROUP_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_appearances_2eproto); - return file_level_enum_descriptors_appearances_2eproto[5]; -} -bool FIXED_FRAME_GROUP_IsValid(int value) { - switch (value) { - case 0: - case 1: - case 2: - return true; - default: - return false; - } -} - - -// =================================================================== - -class Coordinate::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_x(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_y(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_z(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } -}; - -Coordinate::Coordinate(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.Coordinate) -} -Coordinate::Coordinate(const Coordinate& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Coordinate* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.x_){} - , decltype(_impl_.y_){} - , decltype(_impl_.z_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.x_, &from._impl_.x_, - static_cast(reinterpret_cast(&_impl_.z_) - - reinterpret_cast(&_impl_.x_)) + sizeof(_impl_.z_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.Coordinate) -} - -inline void Coordinate::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.x_){0u} - , decltype(_impl_.y_){0u} - , decltype(_impl_.z_){0u} - }; -} - -Coordinate::~Coordinate() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.Coordinate) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Coordinate::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void Coordinate::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Coordinate::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.Coordinate) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - ::memset(&_impl_.x_, 0, static_cast( - reinterpret_cast(&_impl_.z_) - - reinterpret_cast(&_impl_.x_)) + sizeof(_impl_.z_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Coordinate::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 x = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_x(&has_bits); - _impl_.x_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 y = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_y(&has_bits); - _impl_.y_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 z = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_z(&has_bits); - _impl_.z_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Coordinate::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.Coordinate) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 x = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_x(), target); - } - - // optional uint32 y = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_y(), target); - } - - // optional uint32 z = 3; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_z(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.Coordinate) - return target; -} - -size_t Coordinate::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.Coordinate) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - // optional uint32 x = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_x()); - } - - // optional uint32 y = 2; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_y()); - } - - // optional uint32 z = 3; - if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_z()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Coordinate::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Coordinate::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Coordinate::GetClassData() const { return &_class_data_; } - - -void Coordinate::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.Coordinate) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.x_ = from._impl_.x_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.y_ = from._impl_.y_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.z_ = from._impl_.z_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Coordinate::CopyFrom(const Coordinate& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.Coordinate) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Coordinate::IsInitialized() const { - return true; -} - -void Coordinate::InternalSwap(Coordinate* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(Coordinate, _impl_.z_) - + sizeof(Coordinate::_impl_.z_) - - PROTOBUF_FIELD_OFFSET(Coordinate, _impl_.x_)>( - reinterpret_cast(&_impl_.x_), - reinterpret_cast(&other->_impl_.x_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Coordinate::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[0]); -} - -// =================================================================== - -class Appearances::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds& special_meaning_appearance_ids(const Appearances* msg); - static void set_has_special_meaning_appearance_ids(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds& -Appearances::_Internal::special_meaning_appearance_ids(const Appearances* msg) { - return *msg->_impl_.special_meaning_appearance_ids_; -} -Appearances::Appearances(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.Appearances) -} -Appearances::Appearances(const Appearances& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Appearances* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.object_){from._impl_.object_} - , decltype(_impl_.outfit_){from._impl_.outfit_} - , decltype(_impl_.effect_){from._impl_.effect_} - , decltype(_impl_.missile_){from._impl_.missile_} - , decltype(_impl_.special_meaning_appearance_ids_){nullptr}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_special_meaning_appearance_ids()) { - _this->_impl_.special_meaning_appearance_ids_ = new ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds(*from._impl_.special_meaning_appearance_ids_); - } - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.Appearances) -} - -inline void Appearances::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.object_){arena} - , decltype(_impl_.outfit_){arena} - , decltype(_impl_.effect_){arena} - , decltype(_impl_.missile_){arena} - , decltype(_impl_.special_meaning_appearance_ids_){nullptr} - }; -} - -Appearances::~Appearances() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.Appearances) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Appearances::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.object_.~RepeatedPtrField(); - _impl_.outfit_.~RepeatedPtrField(); - _impl_.effect_.~RepeatedPtrField(); - _impl_.missile_.~RepeatedPtrField(); - if (this != internal_default_instance()) delete _impl_.special_meaning_appearance_ids_; -} - -void Appearances::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Appearances::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.Appearances) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.object_.Clear(); - _impl_.outfit_.Clear(); - _impl_.effect_.Clear(); - _impl_.missile_.Clear(); - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - GOOGLE_DCHECK(_impl_.special_meaning_appearance_ids_ != nullptr); - _impl_.special_meaning_appearance_ids_->Clear(); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Appearances::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // repeated .Canary.protobuf.appearances.Appearance object = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_object(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.Appearance outfit = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_outfit(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.Appearance effect = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_effect(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr)); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.Appearance missile = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_missile(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr)); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { - ptr = ctx->ParseMessage(_internal_mutable_special_meaning_appearance_ids(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Appearances::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.Appearances) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // repeated .Canary.protobuf.appearances.Appearance object = 1; - for (unsigned i = 0, - n = static_cast(this->_internal_object_size()); i < n; i++) { - const auto& repfield = this->_internal_object(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream); - } - - // repeated .Canary.protobuf.appearances.Appearance outfit = 2; - for (unsigned i = 0, - n = static_cast(this->_internal_outfit_size()); i < n; i++) { - const auto& repfield = this->_internal_outfit(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream); - } - - // repeated .Canary.protobuf.appearances.Appearance effect = 3; - for (unsigned i = 0, - n = static_cast(this->_internal_effect_size()); i < n; i++) { - const auto& repfield = this->_internal_effect(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(3, repfield, repfield.GetCachedSize(), target, stream); - } - - // repeated .Canary.protobuf.appearances.Appearance missile = 4; - for (unsigned i = 0, - n = static_cast(this->_internal_missile_size()); i < n; i++) { - const auto& repfield = this->_internal_missile(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(4, repfield, repfield.GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; - if (cached_has_bits & 0x00000001u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(5, _Internal::special_meaning_appearance_ids(this), - _Internal::special_meaning_appearance_ids(this).GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.Appearances) - return target; -} - -size_t Appearances::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.Appearances) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.appearances.Appearance object = 1; - total_size += 1UL * this->_internal_object_size(); - for (const auto& msg : this->_impl_.object_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - // repeated .Canary.protobuf.appearances.Appearance outfit = 2; - total_size += 1UL * this->_internal_outfit_size(); - for (const auto& msg : this->_impl_.outfit_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - // repeated .Canary.protobuf.appearances.Appearance effect = 3; - total_size += 1UL * this->_internal_effect_size(); - for (const auto& msg : this->_impl_.effect_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - // repeated .Canary.protobuf.appearances.Appearance missile = 4; - total_size += 1UL * this->_internal_missile_size(); - for (const auto& msg : this->_impl_.missile_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.special_meaning_appearance_ids_); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Appearances::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Appearances::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Appearances::GetClassData() const { return &_class_data_; } - - -void Appearances::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.Appearances) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.object_.MergeFrom(from._impl_.object_); - _this->_impl_.outfit_.MergeFrom(from._impl_.outfit_); - _this->_impl_.effect_.MergeFrom(from._impl_.effect_); - _this->_impl_.missile_.MergeFrom(from._impl_.missile_); - if (from._internal_has_special_meaning_appearance_ids()) { - _this->_internal_mutable_special_meaning_appearance_ids()->::Canary::protobuf::appearances::SpecialMeaningAppearanceIds::MergeFrom( - from._internal_special_meaning_appearance_ids()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Appearances::CopyFrom(const Appearances& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.Appearances) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Appearances::IsInitialized() const { - return true; -} - -void Appearances::InternalSwap(Appearances* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.object_.InternalSwap(&other->_impl_.object_); - _impl_.outfit_.InternalSwap(&other->_impl_.outfit_); - _impl_.effect_.InternalSwap(&other->_impl_.effect_); - _impl_.missile_.InternalSwap(&other->_impl_.missile_); - swap(_impl_.special_meaning_appearance_ids_, other->_impl_.special_meaning_appearance_ids_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Appearances::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[1]); -} - -// =================================================================== - -class SpritePhase::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_duration_min(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_duration_max(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } -}; - -SpritePhase::SpritePhase(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.SpritePhase) -} -SpritePhase::SpritePhase(const SpritePhase& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - SpritePhase* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.duration_min_){} - , decltype(_impl_.duration_max_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.duration_min_, &from._impl_.duration_min_, - static_cast(reinterpret_cast(&_impl_.duration_max_) - - reinterpret_cast(&_impl_.duration_min_)) + sizeof(_impl_.duration_max_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.SpritePhase) -} - -inline void SpritePhase::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.duration_min_){0u} - , decltype(_impl_.duration_max_){0u} - }; -} - -SpritePhase::~SpritePhase() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.SpritePhase) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void SpritePhase::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void SpritePhase::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void SpritePhase::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.SpritePhase) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - ::memset(&_impl_.duration_min_, 0, static_cast( - reinterpret_cast(&_impl_.duration_max_) - - reinterpret_cast(&_impl_.duration_min_)) + sizeof(_impl_.duration_max_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* SpritePhase::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 duration_min = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_duration_min(&has_bits); - _impl_.duration_min_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 duration_max = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_duration_max(&has_bits); - _impl_.duration_max_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* SpritePhase::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.SpritePhase) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 duration_min = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_duration_min(), target); - } - - // optional uint32 duration_max = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_duration_max(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.SpritePhase) - return target; -} - -size_t SpritePhase::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.SpritePhase) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - // optional uint32 duration_min = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_duration_min()); - } - - // optional uint32 duration_max = 2; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_duration_max()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SpritePhase::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - SpritePhase::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SpritePhase::GetClassData() const { return &_class_data_; } - - -void SpritePhase::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.SpritePhase) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.duration_min_ = from._impl_.duration_min_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.duration_max_ = from._impl_.duration_max_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void SpritePhase::CopyFrom(const SpritePhase& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.SpritePhase) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool SpritePhase::IsInitialized() const { - return true; -} - -void SpritePhase::InternalSwap(SpritePhase* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(SpritePhase, _impl_.duration_max_) - + sizeof(SpritePhase::_impl_.duration_max_) - - PROTOBUF_FIELD_OFFSET(SpritePhase, _impl_.duration_min_)>( - reinterpret_cast(&_impl_.duration_min_), - reinterpret_cast(&other->_impl_.duration_min_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata SpritePhase::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[2]); -} - -// =================================================================== - -class SpriteAnimation::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_default_start_phase(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_synchronized(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_random_start_phase(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_loop_type(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_loop_count(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } -}; - -SpriteAnimation::SpriteAnimation(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.SpriteAnimation) -} -SpriteAnimation::SpriteAnimation(const SpriteAnimation& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - SpriteAnimation* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.sprite_phase_){from._impl_.sprite_phase_} - , decltype(_impl_.default_start_phase_){} - , decltype(_impl_.synchronized_){} - , decltype(_impl_.random_start_phase_){} - , decltype(_impl_.loop_count_){} - , decltype(_impl_.loop_type_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.default_start_phase_, &from._impl_.default_start_phase_, - static_cast(reinterpret_cast(&_impl_.loop_type_) - - reinterpret_cast(&_impl_.default_start_phase_)) + sizeof(_impl_.loop_type_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.SpriteAnimation) -} - -inline void SpriteAnimation::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.sprite_phase_){arena} - , decltype(_impl_.default_start_phase_){0u} - , decltype(_impl_.synchronized_){false} - , decltype(_impl_.random_start_phase_){false} - , decltype(_impl_.loop_count_){0u} - , decltype(_impl_.loop_type_){-1} - }; -} - -SpriteAnimation::~SpriteAnimation() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.SpriteAnimation) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void SpriteAnimation::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.sprite_phase_.~RepeatedPtrField(); -} - -void SpriteAnimation::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void SpriteAnimation::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.SpriteAnimation) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.sprite_phase_.Clear(); - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000001fu) { - ::memset(&_impl_.default_start_phase_, 0, static_cast( - reinterpret_cast(&_impl_.loop_count_) - - reinterpret_cast(&_impl_.default_start_phase_)) + sizeof(_impl_.loop_count_)); - _impl_.loop_type_ = -1; - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* SpriteAnimation::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 default_start_phase = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_default_start_phase(&has_bits); - _impl_.default_start_phase_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool synchronized = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_synchronized(&has_bits); - _impl_.synchronized_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool random_start_phase = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_random_start_phase(&has_bits); - _impl_.random_start_phase_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - if (PROTOBUF_PREDICT_TRUE(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_IsValid(val))) { - _internal_set_loop_type(static_cast<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE>(val)); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields()); - } - } else - goto handle_unusual; - continue; - // optional uint32 loop_count = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - _Internal::set_has_loop_count(&has_bits); - _impl_.loop_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_sprite_phase(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr)); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* SpriteAnimation::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.SpriteAnimation) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 default_start_phase = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_default_start_phase(), target); - } - - // optional bool synchronized = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_synchronized(), target); - } - - // optional bool random_start_phase = 3; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_random_start_phase(), target); - } - - // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; - if (cached_has_bits & 0x00000010u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 4, this->_internal_loop_type(), target); - } - - // optional uint32 loop_count = 5; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_loop_count(), target); - } - - // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; - for (unsigned i = 0, - n = static_cast(this->_internal_sprite_phase_size()); i < n; i++) { - const auto& repfield = this->_internal_sprite_phase(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(6, repfield, repfield.GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.SpriteAnimation) - return target; -} - -size_t SpriteAnimation::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.SpriteAnimation) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; - total_size += 1UL * this->_internal_sprite_phase_size(); - for (const auto& msg : this->_impl_.sprite_phase_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000001fu) { - // optional uint32 default_start_phase = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_default_start_phase()); - } - - // optional bool synchronized = 2; - if (cached_has_bits & 0x00000002u) { - total_size += 1 + 1; - } - - // optional bool random_start_phase = 3; - if (cached_has_bits & 0x00000004u) { - total_size += 1 + 1; - } - - // optional uint32 loop_count = 5; - if (cached_has_bits & 0x00000008u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_loop_count()); - } - - // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; - if (cached_has_bits & 0x00000010u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_loop_type()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SpriteAnimation::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - SpriteAnimation::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SpriteAnimation::GetClassData() const { return &_class_data_; } - - -void SpriteAnimation::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.SpriteAnimation) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.sprite_phase_.MergeFrom(from._impl_.sprite_phase_); - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000001fu) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.default_start_phase_ = from._impl_.default_start_phase_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.synchronized_ = from._impl_.synchronized_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.random_start_phase_ = from._impl_.random_start_phase_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.loop_count_ = from._impl_.loop_count_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.loop_type_ = from._impl_.loop_type_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void SpriteAnimation::CopyFrom(const SpriteAnimation& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.SpriteAnimation) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool SpriteAnimation::IsInitialized() const { - return true; -} - -void SpriteAnimation::InternalSwap(SpriteAnimation* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.sprite_phase_.InternalSwap(&other->_impl_.sprite_phase_); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(SpriteAnimation, _impl_.loop_count_) - + sizeof(SpriteAnimation::_impl_.loop_count_) - - PROTOBUF_FIELD_OFFSET(SpriteAnimation, _impl_.default_start_phase_)>( - reinterpret_cast(&_impl_.default_start_phase_), - reinterpret_cast(&other->_impl_.default_start_phase_)); - swap(_impl_.loop_type_, other->_impl_.loop_type_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata SpriteAnimation::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[3]); -} - -// =================================================================== - -class Box::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_x(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_y(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_width(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_height(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } -}; - -Box::Box(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.Box) -} -Box::Box(const Box& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Box* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.x_){} - , decltype(_impl_.y_){} - , decltype(_impl_.width_){} - , decltype(_impl_.height_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.x_, &from._impl_.x_, - static_cast(reinterpret_cast(&_impl_.height_) - - reinterpret_cast(&_impl_.x_)) + sizeof(_impl_.height_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.Box) -} - -inline void Box::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.x_){0u} - , decltype(_impl_.y_){0u} - , decltype(_impl_.width_){0u} - , decltype(_impl_.height_){0u} - }; -} - -Box::~Box() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.Box) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Box::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void Box::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Box::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.Box) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - ::memset(&_impl_.x_, 0, static_cast( - reinterpret_cast(&_impl_.height_) - - reinterpret_cast(&_impl_.x_)) + sizeof(_impl_.height_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Box::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 x = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_x(&has_bits); - _impl_.x_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 y = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_y(&has_bits); - _impl_.y_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 width = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_width(&has_bits); - _impl_.width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 height = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - _Internal::set_has_height(&has_bits); - _impl_.height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Box::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.Box) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 x = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_x(), target); - } - - // optional uint32 y = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_y(), target); - } - - // optional uint32 width = 3; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_width(), target); - } - - // optional uint32 height = 4; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_height(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.Box) - return target; -} - -size_t Box::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.Box) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - // optional uint32 x = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_x()); - } - - // optional uint32 y = 2; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_y()); - } - - // optional uint32 width = 3; - if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_width()); - } - - // optional uint32 height = 4; - if (cached_has_bits & 0x00000008u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_height()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Box::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Box::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Box::GetClassData() const { return &_class_data_; } - - -void Box::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.Box) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.x_ = from._impl_.x_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.y_ = from._impl_.y_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.width_ = from._impl_.width_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.height_ = from._impl_.height_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Box::CopyFrom(const Box& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.Box) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Box::IsInitialized() const { - return true; -} - -void Box::InternalSwap(Box* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(Box, _impl_.height_) - + sizeof(Box::_impl_.height_) - - PROTOBUF_FIELD_OFFSET(Box, _impl_.x_)>( - reinterpret_cast(&_impl_.x_), - reinterpret_cast(&other->_impl_.x_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Box::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[4]); -} - -// =================================================================== - -class SpriteInfo::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_pattern_width(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_pattern_height(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_pattern_depth(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_layers(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_bounding_square(HasBits* has_bits) { - (*has_bits)[0] |= 32u; - } - static const ::Canary::protobuf::appearances::SpriteAnimation& animation(const SpriteInfo* msg); - static void set_has_animation(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_is_opaque(HasBits* has_bits) { - (*has_bits)[0] |= 64u; - } -}; - -const ::Canary::protobuf::appearances::SpriteAnimation& -SpriteInfo::_Internal::animation(const SpriteInfo* msg) { - return *msg->_impl_.animation_; -} -SpriteInfo::SpriteInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.SpriteInfo) -} -SpriteInfo::SpriteInfo(const SpriteInfo& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - SpriteInfo* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.sprite_id_){from._impl_.sprite_id_} - , decltype(_impl_.bounding_box_per_direction_){from._impl_.bounding_box_per_direction_} - , decltype(_impl_.animation_){nullptr} - , decltype(_impl_.pattern_width_){} - , decltype(_impl_.pattern_height_){} - , decltype(_impl_.pattern_depth_){} - , decltype(_impl_.layers_){} - , decltype(_impl_.bounding_square_){} - , decltype(_impl_.is_opaque_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_animation()) { - _this->_impl_.animation_ = new ::Canary::protobuf::appearances::SpriteAnimation(*from._impl_.animation_); - } - ::memcpy(&_impl_.pattern_width_, &from._impl_.pattern_width_, - static_cast(reinterpret_cast(&_impl_.is_opaque_) - - reinterpret_cast(&_impl_.pattern_width_)) + sizeof(_impl_.is_opaque_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.SpriteInfo) -} - -inline void SpriteInfo::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.sprite_id_){arena} - , decltype(_impl_.bounding_box_per_direction_){arena} - , decltype(_impl_.animation_){nullptr} - , decltype(_impl_.pattern_width_){0u} - , decltype(_impl_.pattern_height_){0u} - , decltype(_impl_.pattern_depth_){0u} - , decltype(_impl_.layers_){0u} - , decltype(_impl_.bounding_square_){0u} - , decltype(_impl_.is_opaque_){false} - }; -} - -SpriteInfo::~SpriteInfo() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.SpriteInfo) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void SpriteInfo::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.sprite_id_.~RepeatedField(); - _impl_.bounding_box_per_direction_.~RepeatedPtrField(); - if (this != internal_default_instance()) delete _impl_.animation_; -} - -void SpriteInfo::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void SpriteInfo::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.SpriteInfo) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.sprite_id_.Clear(); - _impl_.bounding_box_per_direction_.Clear(); - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - GOOGLE_DCHECK(_impl_.animation_ != nullptr); - _impl_.animation_->Clear(); - } - if (cached_has_bits & 0x0000007eu) { - ::memset(&_impl_.pattern_width_, 0, static_cast( - reinterpret_cast(&_impl_.is_opaque_) - - reinterpret_cast(&_impl_.pattern_width_)) + sizeof(_impl_.is_opaque_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* SpriteInfo::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 pattern_width = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_pattern_width(&has_bits); - _impl_.pattern_width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 pattern_height = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_pattern_height(&has_bits); - _impl_.pattern_height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 pattern_depth = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_pattern_depth(&has_bits); - _impl_.pattern_depth_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 layers = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - _Internal::set_has_layers(&has_bits); - _impl_.layers_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // repeated uint32 sprite_id = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - ptr -= 1; - do { - ptr += 1; - _internal_add_sprite_id(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr)); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<40>(ptr)); - } else if (static_cast(tag) == 42) { - ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_sprite_id(), ptr, ctx); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { - ptr = ctx->ParseMessage(_internal_mutable_animation(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 bounding_square = 7; - case 7: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { - _Internal::set_has_bounding_square(&has_bits); - _impl_.bounding_square_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool is_opaque = 8; - case 8: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { - _Internal::set_has_is_opaque(&has_bits); - _impl_.is_opaque_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; - case 9: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 74)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_bounding_box_per_direction(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr)); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* SpriteInfo::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.SpriteInfo) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 pattern_width = 1; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_pattern_width(), target); - } - - // optional uint32 pattern_height = 2; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_pattern_height(), target); - } - - // optional uint32 pattern_depth = 3; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_pattern_depth(), target); - } - - // optional uint32 layers = 4; - if (cached_has_bits & 0x00000010u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_layers(), target); - } - - // repeated uint32 sprite_id = 5; - for (int i = 0, n = this->_internal_sprite_id_size(); i < n; i++) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_sprite_id(i), target); - } - - // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; - if (cached_has_bits & 0x00000001u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(6, _Internal::animation(this), - _Internal::animation(this).GetCachedSize(), target, stream); - } - - // optional uint32 bounding_square = 7; - if (cached_has_bits & 0x00000020u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(7, this->_internal_bounding_square(), target); - } - - // optional bool is_opaque = 8; - if (cached_has_bits & 0x00000040u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(8, this->_internal_is_opaque(), target); - } - - // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; - for (unsigned i = 0, - n = static_cast(this->_internal_bounding_box_per_direction_size()); i < n; i++) { - const auto& repfield = this->_internal_bounding_box_per_direction(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(9, repfield, repfield.GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.SpriteInfo) - return target; -} - -size_t SpriteInfo::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.SpriteInfo) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated uint32 sprite_id = 5; - { - size_t data_size = ::_pbi::WireFormatLite:: - UInt32Size(this->_impl_.sprite_id_); - total_size += 1 * - ::_pbi::FromIntSize(this->_internal_sprite_id_size()); - total_size += data_size; - } - - // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; - total_size += 1UL * this->_internal_bounding_box_per_direction_size(); - for (const auto& msg : this->_impl_.bounding_box_per_direction_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.animation_); - } - - // optional uint32 pattern_width = 1; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_pattern_width()); - } - - // optional uint32 pattern_height = 2; - if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_pattern_height()); - } - - // optional uint32 pattern_depth = 3; - if (cached_has_bits & 0x00000008u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_pattern_depth()); - } - - // optional uint32 layers = 4; - if (cached_has_bits & 0x00000010u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_layers()); - } - - // optional uint32 bounding_square = 7; - if (cached_has_bits & 0x00000020u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_bounding_square()); - } - - // optional bool is_opaque = 8; - if (cached_has_bits & 0x00000040u) { - total_size += 1 + 1; - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SpriteInfo::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - SpriteInfo::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SpriteInfo::GetClassData() const { return &_class_data_; } - - -void SpriteInfo::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.SpriteInfo) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.sprite_id_.MergeFrom(from._impl_.sprite_id_); - _this->_impl_.bounding_box_per_direction_.MergeFrom(from._impl_.bounding_box_per_direction_); - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - if (cached_has_bits & 0x00000001u) { - _this->_internal_mutable_animation()->::Canary::protobuf::appearances::SpriteAnimation::MergeFrom( - from._internal_animation()); - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.pattern_width_ = from._impl_.pattern_width_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.pattern_height_ = from._impl_.pattern_height_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.pattern_depth_ = from._impl_.pattern_depth_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.layers_ = from._impl_.layers_; - } - if (cached_has_bits & 0x00000020u) { - _this->_impl_.bounding_square_ = from._impl_.bounding_square_; - } - if (cached_has_bits & 0x00000040u) { - _this->_impl_.is_opaque_ = from._impl_.is_opaque_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void SpriteInfo::CopyFrom(const SpriteInfo& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.SpriteInfo) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool SpriteInfo::IsInitialized() const { - return true; -} - -void SpriteInfo::InternalSwap(SpriteInfo* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.sprite_id_.InternalSwap(&other->_impl_.sprite_id_); - _impl_.bounding_box_per_direction_.InternalSwap(&other->_impl_.bounding_box_per_direction_); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(SpriteInfo, _impl_.is_opaque_) - + sizeof(SpriteInfo::_impl_.is_opaque_) - - PROTOBUF_FIELD_OFFSET(SpriteInfo, _impl_.animation_)>( - reinterpret_cast(&_impl_.animation_), - reinterpret_cast(&other->_impl_.animation_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata SpriteInfo::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[5]); -} - -// =================================================================== - -class FrameGroup::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_fixed_frame_group(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_id(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static const ::Canary::protobuf::appearances::SpriteInfo& sprite_info(const FrameGroup* msg); - static void set_has_sprite_info(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -const ::Canary::protobuf::appearances::SpriteInfo& -FrameGroup::_Internal::sprite_info(const FrameGroup* msg) { - return *msg->_impl_.sprite_info_; -} -FrameGroup::FrameGroup(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.FrameGroup) -} -FrameGroup::FrameGroup(const FrameGroup& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - FrameGroup* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.sprite_info_){nullptr} - , decltype(_impl_.fixed_frame_group_){} - , decltype(_impl_.id_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_sprite_info()) { - _this->_impl_.sprite_info_ = new ::Canary::protobuf::appearances::SpriteInfo(*from._impl_.sprite_info_); - } - ::memcpy(&_impl_.fixed_frame_group_, &from._impl_.fixed_frame_group_, - static_cast(reinterpret_cast(&_impl_.id_) - - reinterpret_cast(&_impl_.fixed_frame_group_)) + sizeof(_impl_.id_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.FrameGroup) -} - -inline void FrameGroup::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.sprite_info_){nullptr} - , decltype(_impl_.fixed_frame_group_){0} - , decltype(_impl_.id_){0u} - }; -} - -FrameGroup::~FrameGroup() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.FrameGroup) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void FrameGroup::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - if (this != internal_default_instance()) delete _impl_.sprite_info_; -} - -void FrameGroup::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void FrameGroup::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.FrameGroup) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - GOOGLE_DCHECK(_impl_.sprite_info_ != nullptr); - _impl_.sprite_info_->Clear(); - } - if (cached_has_bits & 0x00000006u) { - ::memset(&_impl_.fixed_frame_group_, 0, static_cast( - reinterpret_cast(&_impl_.id_) - - reinterpret_cast(&_impl_.fixed_frame_group_)) + sizeof(_impl_.id_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* FrameGroup::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - if (PROTOBUF_PREDICT_TRUE(::Canary::protobuf::appearances::FIXED_FRAME_GROUP_IsValid(val))) { - _internal_set_fixed_frame_group(static_cast<::Canary::protobuf::appearances::FIXED_FRAME_GROUP>(val)); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields()); - } - } else - goto handle_unusual; - continue; - // optional uint32 id = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_id(&has_bits); - _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { - ptr = ctx->ParseMessage(_internal_mutable_sprite_info(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* FrameGroup::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.FrameGroup) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 1, this->_internal_fixed_frame_group(), target); - } - - // optional uint32 id = 2; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_id(), target); - } - - // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; - if (cached_has_bits & 0x00000001u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(3, _Internal::sprite_info(this), - _Internal::sprite_info(this).GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.FrameGroup) - return target; -} - -size_t FrameGroup::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.FrameGroup) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.sprite_info_); - } - - // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; - if (cached_has_bits & 0x00000002u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_fixed_frame_group()); - } - - // optional uint32 id = 2; - if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FrameGroup::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - FrameGroup::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FrameGroup::GetClassData() const { return &_class_data_; } - - -void FrameGroup::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.FrameGroup) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - if (cached_has_bits & 0x00000001u) { - _this->_internal_mutable_sprite_info()->::Canary::protobuf::appearances::SpriteInfo::MergeFrom( - from._internal_sprite_info()); - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.fixed_frame_group_ = from._impl_.fixed_frame_group_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.id_ = from._impl_.id_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void FrameGroup::CopyFrom(const FrameGroup& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.FrameGroup) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool FrameGroup::IsInitialized() const { - return true; -} - -void FrameGroup::InternalSwap(FrameGroup* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(FrameGroup, _impl_.id_) - + sizeof(FrameGroup::_impl_.id_) - - PROTOBUF_FIELD_OFFSET(FrameGroup, _impl_.sprite_info_)>( - reinterpret_cast(&_impl_.sprite_info_), - reinterpret_cast(&other->_impl_.sprite_info_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata FrameGroup::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[6]); -} - -// =================================================================== - -class Appearance::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_id(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static const ::Canary::protobuf::appearances::AppearanceFlags& flags(const Appearance* msg); - static void set_has_flags(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_name(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_description(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } -}; - -const ::Canary::protobuf::appearances::AppearanceFlags& -Appearance::_Internal::flags(const Appearance* msg) { - return *msg->_impl_.flags_; -} -Appearance::Appearance(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.Appearance) -} -Appearance::Appearance(const Appearance& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Appearance* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.frame_group_){from._impl_.frame_group_} - , decltype(_impl_.name_){} - , decltype(_impl_.description_){} - , decltype(_impl_.flags_){nullptr} - , decltype(_impl_.id_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_name()) { - _this->_impl_.name_.Set(from._internal_name(), - _this->GetArenaForAllocation()); - } - _impl_.description_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.description_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_description()) { - _this->_impl_.description_.Set(from._internal_description(), - _this->GetArenaForAllocation()); - } - if (from._internal_has_flags()) { - _this->_impl_.flags_ = new ::Canary::protobuf::appearances::AppearanceFlags(*from._impl_.flags_); - } - _this->_impl_.id_ = from._impl_.id_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.Appearance) -} - -inline void Appearance::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.frame_group_){arena} - , decltype(_impl_.name_){} - , decltype(_impl_.description_){} - , decltype(_impl_.flags_){nullptr} - , decltype(_impl_.id_){0u} - }; - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.description_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.description_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING -} - -Appearance::~Appearance() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.Appearance) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Appearance::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.frame_group_.~RepeatedPtrField(); - _impl_.name_.Destroy(); - _impl_.description_.Destroy(); - if (this != internal_default_instance()) delete _impl_.flags_; -} - -void Appearance::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Appearance::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.Appearance) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.frame_group_.Clear(); - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - if (cached_has_bits & 0x00000001u) { - _impl_.name_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000002u) { - _impl_.description_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000004u) { - GOOGLE_DCHECK(_impl_.flags_ != nullptr); - _impl_.flags_->Clear(); - } - } - _impl_.id_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Appearance::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 id = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_id(&has_bits); - _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_frame_group(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { - ptr = ctx->ParseMessage(_internal_mutable_flags(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bytes name = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - auto str = _internal_mutable_name(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bytes description = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { - auto str = _internal_mutable_description(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Appearance::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.Appearance) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 id = 1; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_id(), target); - } - - // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; - for (unsigned i = 0, - n = static_cast(this->_internal_frame_group_size()); i < n; i++) { - const auto& repfield = this->_internal_frame_group(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream); - } - - // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; - if (cached_has_bits & 0x00000004u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(3, _Internal::flags(this), - _Internal::flags(this).GetCachedSize(), target, stream); - } - - // optional bytes name = 4; - if (cached_has_bits & 0x00000001u) { - target = stream->WriteBytesMaybeAliased( - 4, this->_internal_name(), target); - } - - // optional bytes description = 5; - if (cached_has_bits & 0x00000002u) { - target = stream->WriteBytesMaybeAliased( - 5, this->_internal_description(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.Appearance) - return target; -} - -size_t Appearance::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.Appearance) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; - total_size += 1UL * this->_internal_frame_group_size(); - for (const auto& msg : this->_impl_.frame_group_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - // optional bytes name = 4; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize( - this->_internal_name()); - } - - // optional bytes description = 5; - if (cached_has_bits & 0x00000002u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize( - this->_internal_description()); - } - - // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; - if (cached_has_bits & 0x00000004u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.flags_); - } - - // optional uint32 id = 1; - if (cached_has_bits & 0x00000008u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Appearance::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Appearance::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Appearance::GetClassData() const { return &_class_data_; } - - -void Appearance::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.Appearance) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.frame_group_.MergeFrom(from._impl_.frame_group_); - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - if (cached_has_bits & 0x00000001u) { - _this->_internal_set_name(from._internal_name()); - } - if (cached_has_bits & 0x00000002u) { - _this->_internal_set_description(from._internal_description()); - } - if (cached_has_bits & 0x00000004u) { - _this->_internal_mutable_flags()->::Canary::protobuf::appearances::AppearanceFlags::MergeFrom( - from._internal_flags()); - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.id_ = from._impl_.id_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Appearance::CopyFrom(const Appearance& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.Appearance) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Appearance::IsInitialized() const { - return true; -} - -void Appearance::InternalSwap(Appearance* other) { - using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.frame_group_.InternalSwap(&other->_impl_.frame_group_); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.name_, lhs_arena, - &other->_impl_.name_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.description_, lhs_arena, - &other->_impl_.description_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(Appearance, _impl_.id_) - + sizeof(Appearance::_impl_.id_) - - PROTOBUF_FIELD_OFFSET(Appearance, _impl_.flags_)>( - reinterpret_cast(&_impl_.flags_), - reinterpret_cast(&other->_impl_.flags_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Appearance::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[7]); -} - -// =================================================================== - -class AppearanceFlags::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static const ::Canary::protobuf::appearances::AppearanceFlagBank& bank(const AppearanceFlags* msg); - static void set_has_bank(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_clip(HasBits* has_bits) { - (*has_bits)[0] |= 32768u; - } - static void set_has_bottom(HasBits* has_bits) { - (*has_bits)[0] |= 65536u; - } - static void set_has_top(HasBits* has_bits) { - (*has_bits)[0] |= 131072u; - } - static void set_has_container(HasBits* has_bits) { - (*has_bits)[0] |= 262144u; - } - static void set_has_cumulative(HasBits* has_bits) { - (*has_bits)[0] |= 524288u; - } - static void set_has_usable(HasBits* has_bits) { - (*has_bits)[0] |= 1048576u; - } - static void set_has_forceuse(HasBits* has_bits) { - (*has_bits)[0] |= 2097152u; - } - static void set_has_multiuse(HasBits* has_bits) { - (*has_bits)[0] |= 4194304u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagWrite& write(const AppearanceFlags* msg); - static void set_has_write(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce& write_once(const AppearanceFlags* msg); - static void set_has_write_once(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_liquidpool(HasBits* has_bits) { - (*has_bits)[0] |= 8388608u; - } - static void set_has_unpass(HasBits* has_bits) { - (*has_bits)[0] |= 16777216u; - } - static void set_has_unmove(HasBits* has_bits) { - (*has_bits)[0] |= 33554432u; - } - static void set_has_unsight(HasBits* has_bits) { - (*has_bits)[0] |= 67108864u; - } - static void set_has_avoid(HasBits* has_bits) { - (*has_bits)[0] |= 134217728u; - } - static void set_has_no_movement_animation(HasBits* has_bits) { - (*has_bits)[0] |= 268435456u; - } - static void set_has_take(HasBits* has_bits) { - (*has_bits)[0] |= 536870912u; - } - static void set_has_liquidcontainer(HasBits* has_bits) { - (*has_bits)[0] |= 1073741824u; - } - static void set_has_hang(HasBits* has_bits) { - (*has_bits)[0] |= 2147483648u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagHook& hook(const AppearanceFlags* msg); - static void set_has_hook(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_rotate(HasBits* has_bits) { - (*has_bits)[1] |= 1u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagLight& light(const AppearanceFlags* msg); - static void set_has_light(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_dont_hide(HasBits* has_bits) { - (*has_bits)[1] |= 2u; - } - static void set_has_translucent(HasBits* has_bits) { - (*has_bits)[1] |= 4u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagShift& shift(const AppearanceFlags* msg); - static void set_has_shift(HasBits* has_bits) { - (*has_bits)[0] |= 32u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagHeight& height(const AppearanceFlags* msg); - static void set_has_height(HasBits* has_bits) { - (*has_bits)[0] |= 64u; - } - static void set_has_lying_object(HasBits* has_bits) { - (*has_bits)[1] |= 8u; - } - static void set_has_animate_always(HasBits* has_bits) { - (*has_bits)[1] |= 16u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagAutomap& automap(const AppearanceFlags* msg); - static void set_has_automap(HasBits* has_bits) { - (*has_bits)[0] |= 128u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagLenshelp& lenshelp(const AppearanceFlags* msg); - static void set_has_lenshelp(HasBits* has_bits) { - (*has_bits)[0] |= 256u; - } - static void set_has_fullbank(HasBits* has_bits) { - (*has_bits)[1] |= 32u; - } - static void set_has_ignore_look(HasBits* has_bits) { - (*has_bits)[1] |= 64u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagClothes& clothes(const AppearanceFlags* msg); - static void set_has_clothes(HasBits* has_bits) { - (*has_bits)[0] |= 512u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction& default_action(const AppearanceFlags* msg); - static void set_has_default_action(HasBits* has_bits) { - (*has_bits)[0] |= 1024u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagMarket& market(const AppearanceFlags* msg); - static void set_has_market(HasBits* has_bits) { - (*has_bits)[0] |= 2048u; - } - static void set_has_wrap(HasBits* has_bits) { - (*has_bits)[1] |= 128u; - } - static void set_has_unwrap(HasBits* has_bits) { - (*has_bits)[1] |= 256u; - } - static void set_has_topeffect(HasBits* has_bits) { - (*has_bits)[1] |= 512u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire& changedtoexpire(const AppearanceFlags* msg); - static void set_has_changedtoexpire(HasBits* has_bits) { - (*has_bits)[0] |= 4096u; - } - static void set_has_corpse(HasBits* has_bits) { - (*has_bits)[1] |= 1024u; - } - static void set_has_player_corpse(HasBits* has_bits) { - (*has_bits)[1] |= 2048u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia& cyclopediaitem(const AppearanceFlags* msg); - static void set_has_cyclopediaitem(HasBits* has_bits) { - (*has_bits)[0] |= 8192u; - } - static void set_has_ammo(HasBits* has_bits) { - (*has_bits)[1] |= 4096u; - } - static void set_has_show_off_socket(HasBits* has_bits) { - (*has_bits)[1] |= 8192u; - } - static void set_has_reportable(HasBits* has_bits) { - (*has_bits)[1] |= 16384u; - } - static const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification& upgradeclassification(const AppearanceFlags* msg); - static void set_has_upgradeclassification(HasBits* has_bits) { - (*has_bits)[0] |= 16384u; - } - static void set_has_reverse_addons_east(HasBits* has_bits) { - (*has_bits)[1] |= 32768u; - } - static void set_has_reverse_addons_west(HasBits* has_bits) { - (*has_bits)[1] |= 65536u; - } - static void set_has_reverse_addons_south(HasBits* has_bits) { - (*has_bits)[1] |= 131072u; - } - static void set_has_reverse_addons_north(HasBits* has_bits) { - (*has_bits)[1] |= 262144u; - } - static void set_has_wearout(HasBits* has_bits) { - (*has_bits)[1] |= 524288u; - } - static void set_has_clockexpire(HasBits* has_bits) { - (*has_bits)[1] |= 1048576u; - } - static void set_has_expire(HasBits* has_bits) { - (*has_bits)[1] |= 2097152u; - } - static void set_has_expirestop(HasBits* has_bits) { - (*has_bits)[1] |= 4194304u; - } - static void set_has_wrapkit(HasBits* has_bits) { - (*has_bits)[1] |= 8388608u; - } -}; - -const ::Canary::protobuf::appearances::AppearanceFlagBank& -AppearanceFlags::_Internal::bank(const AppearanceFlags* msg) { - return *msg->_impl_.bank_; -} -const ::Canary::protobuf::appearances::AppearanceFlagWrite& -AppearanceFlags::_Internal::write(const AppearanceFlags* msg) { - return *msg->_impl_.write_; -} -const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce& -AppearanceFlags::_Internal::write_once(const AppearanceFlags* msg) { - return *msg->_impl_.write_once_; -} -const ::Canary::protobuf::appearances::AppearanceFlagHook& -AppearanceFlags::_Internal::hook(const AppearanceFlags* msg) { - return *msg->_impl_.hook_; -} -const ::Canary::protobuf::appearances::AppearanceFlagLight& -AppearanceFlags::_Internal::light(const AppearanceFlags* msg) { - return *msg->_impl_.light_; -} -const ::Canary::protobuf::appearances::AppearanceFlagShift& -AppearanceFlags::_Internal::shift(const AppearanceFlags* msg) { - return *msg->_impl_.shift_; -} -const ::Canary::protobuf::appearances::AppearanceFlagHeight& -AppearanceFlags::_Internal::height(const AppearanceFlags* msg) { - return *msg->_impl_.height_; -} -const ::Canary::protobuf::appearances::AppearanceFlagAutomap& -AppearanceFlags::_Internal::automap(const AppearanceFlags* msg) { - return *msg->_impl_.automap_; -} -const ::Canary::protobuf::appearances::AppearanceFlagLenshelp& -AppearanceFlags::_Internal::lenshelp(const AppearanceFlags* msg) { - return *msg->_impl_.lenshelp_; -} -const ::Canary::protobuf::appearances::AppearanceFlagClothes& -AppearanceFlags::_Internal::clothes(const AppearanceFlags* msg) { - return *msg->_impl_.clothes_; -} -const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction& -AppearanceFlags::_Internal::default_action(const AppearanceFlags* msg) { - return *msg->_impl_.default_action_; -} -const ::Canary::protobuf::appearances::AppearanceFlagMarket& -AppearanceFlags::_Internal::market(const AppearanceFlags* msg) { - return *msg->_impl_.market_; -} -const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire& -AppearanceFlags::_Internal::changedtoexpire(const AppearanceFlags* msg) { - return *msg->_impl_.changedtoexpire_; -} -const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia& -AppearanceFlags::_Internal::cyclopediaitem(const AppearanceFlags* msg) { - return *msg->_impl_.cyclopediaitem_; -} -const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification& -AppearanceFlags::_Internal::upgradeclassification(const AppearanceFlags* msg) { - return *msg->_impl_.upgradeclassification_; -} -AppearanceFlags::AppearanceFlags(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlags) -} -AppearanceFlags::AppearanceFlags(const AppearanceFlags& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlags* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.npcsaledata_){from._impl_.npcsaledata_} - , decltype(_impl_.bank_){nullptr} - , decltype(_impl_.write_){nullptr} - , decltype(_impl_.write_once_){nullptr} - , decltype(_impl_.hook_){nullptr} - , decltype(_impl_.light_){nullptr} - , decltype(_impl_.shift_){nullptr} - , decltype(_impl_.height_){nullptr} - , decltype(_impl_.automap_){nullptr} - , decltype(_impl_.lenshelp_){nullptr} - , decltype(_impl_.clothes_){nullptr} - , decltype(_impl_.default_action_){nullptr} - , decltype(_impl_.market_){nullptr} - , decltype(_impl_.changedtoexpire_){nullptr} - , decltype(_impl_.cyclopediaitem_){nullptr} - , decltype(_impl_.upgradeclassification_){nullptr} - , decltype(_impl_.clip_){} - , decltype(_impl_.bottom_){} - , decltype(_impl_.top_){} - , decltype(_impl_.container_){} - , decltype(_impl_.cumulative_){} - , decltype(_impl_.usable_){} - , decltype(_impl_.forceuse_){} - , decltype(_impl_.multiuse_){} - , decltype(_impl_.liquidpool_){} - , decltype(_impl_.unpass_){} - , decltype(_impl_.unmove_){} - , decltype(_impl_.unsight_){} - , decltype(_impl_.avoid_){} - , decltype(_impl_.no_movement_animation_){} - , decltype(_impl_.take_){} - , decltype(_impl_.liquidcontainer_){} - , decltype(_impl_.hang_){} - , decltype(_impl_.rotate_){} - , decltype(_impl_.dont_hide_){} - , decltype(_impl_.translucent_){} - , decltype(_impl_.lying_object_){} - , decltype(_impl_.animate_always_){} - , decltype(_impl_.fullbank_){} - , decltype(_impl_.ignore_look_){} - , decltype(_impl_.wrap_){} - , decltype(_impl_.unwrap_){} - , decltype(_impl_.topeffect_){} - , decltype(_impl_.corpse_){} - , decltype(_impl_.player_corpse_){} - , decltype(_impl_.ammo_){} - , decltype(_impl_.show_off_socket_){} - , decltype(_impl_.reportable_){} - , decltype(_impl_.reverse_addons_east_){} - , decltype(_impl_.reverse_addons_west_){} - , decltype(_impl_.reverse_addons_south_){} - , decltype(_impl_.reverse_addons_north_){} - , decltype(_impl_.wearout_){} - , decltype(_impl_.clockexpire_){} - , decltype(_impl_.expire_){} - , decltype(_impl_.expirestop_){} - , decltype(_impl_.wrapkit_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_bank()) { - _this->_impl_.bank_ = new ::Canary::protobuf::appearances::AppearanceFlagBank(*from._impl_.bank_); - } - if (from._internal_has_write()) { - _this->_impl_.write_ = new ::Canary::protobuf::appearances::AppearanceFlagWrite(*from._impl_.write_); - } - if (from._internal_has_write_once()) { - _this->_impl_.write_once_ = new ::Canary::protobuf::appearances::AppearanceFlagWriteOnce(*from._impl_.write_once_); - } - if (from._internal_has_hook()) { - _this->_impl_.hook_ = new ::Canary::protobuf::appearances::AppearanceFlagHook(*from._impl_.hook_); - } - if (from._internal_has_light()) { - _this->_impl_.light_ = new ::Canary::protobuf::appearances::AppearanceFlagLight(*from._impl_.light_); - } - if (from._internal_has_shift()) { - _this->_impl_.shift_ = new ::Canary::protobuf::appearances::AppearanceFlagShift(*from._impl_.shift_); - } - if (from._internal_has_height()) { - _this->_impl_.height_ = new ::Canary::protobuf::appearances::AppearanceFlagHeight(*from._impl_.height_); - } - if (from._internal_has_automap()) { - _this->_impl_.automap_ = new ::Canary::protobuf::appearances::AppearanceFlagAutomap(*from._impl_.automap_); - } - if (from._internal_has_lenshelp()) { - _this->_impl_.lenshelp_ = new ::Canary::protobuf::appearances::AppearanceFlagLenshelp(*from._impl_.lenshelp_); - } - if (from._internal_has_clothes()) { - _this->_impl_.clothes_ = new ::Canary::protobuf::appearances::AppearanceFlagClothes(*from._impl_.clothes_); - } - if (from._internal_has_default_action()) { - _this->_impl_.default_action_ = new ::Canary::protobuf::appearances::AppearanceFlagDefaultAction(*from._impl_.default_action_); - } - if (from._internal_has_market()) { - _this->_impl_.market_ = new ::Canary::protobuf::appearances::AppearanceFlagMarket(*from._impl_.market_); - } - if (from._internal_has_changedtoexpire()) { - _this->_impl_.changedtoexpire_ = new ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire(*from._impl_.changedtoexpire_); - } - if (from._internal_has_cyclopediaitem()) { - _this->_impl_.cyclopediaitem_ = new ::Canary::protobuf::appearances::AppearanceFlagCyclopedia(*from._impl_.cyclopediaitem_); - } - if (from._internal_has_upgradeclassification()) { - _this->_impl_.upgradeclassification_ = new ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification(*from._impl_.upgradeclassification_); - } - ::memcpy(&_impl_.clip_, &from._impl_.clip_, - static_cast(reinterpret_cast(&_impl_.wrapkit_) - - reinterpret_cast(&_impl_.clip_)) + sizeof(_impl_.wrapkit_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlags) -} - -inline void AppearanceFlags::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.npcsaledata_){arena} - , decltype(_impl_.bank_){nullptr} - , decltype(_impl_.write_){nullptr} - , decltype(_impl_.write_once_){nullptr} - , decltype(_impl_.hook_){nullptr} - , decltype(_impl_.light_){nullptr} - , decltype(_impl_.shift_){nullptr} - , decltype(_impl_.height_){nullptr} - , decltype(_impl_.automap_){nullptr} - , decltype(_impl_.lenshelp_){nullptr} - , decltype(_impl_.clothes_){nullptr} - , decltype(_impl_.default_action_){nullptr} - , decltype(_impl_.market_){nullptr} - , decltype(_impl_.changedtoexpire_){nullptr} - , decltype(_impl_.cyclopediaitem_){nullptr} - , decltype(_impl_.upgradeclassification_){nullptr} - , decltype(_impl_.clip_){false} - , decltype(_impl_.bottom_){false} - , decltype(_impl_.top_){false} - , decltype(_impl_.container_){false} - , decltype(_impl_.cumulative_){false} - , decltype(_impl_.usable_){false} - , decltype(_impl_.forceuse_){false} - , decltype(_impl_.multiuse_){false} - , decltype(_impl_.liquidpool_){false} - , decltype(_impl_.unpass_){false} - , decltype(_impl_.unmove_){false} - , decltype(_impl_.unsight_){false} - , decltype(_impl_.avoid_){false} - , decltype(_impl_.no_movement_animation_){false} - , decltype(_impl_.take_){false} - , decltype(_impl_.liquidcontainer_){false} - , decltype(_impl_.hang_){false} - , decltype(_impl_.rotate_){false} - , decltype(_impl_.dont_hide_){false} - , decltype(_impl_.translucent_){false} - , decltype(_impl_.lying_object_){false} - , decltype(_impl_.animate_always_){false} - , decltype(_impl_.fullbank_){false} - , decltype(_impl_.ignore_look_){false} - , decltype(_impl_.wrap_){false} - , decltype(_impl_.unwrap_){false} - , decltype(_impl_.topeffect_){false} - , decltype(_impl_.corpse_){false} - , decltype(_impl_.player_corpse_){false} - , decltype(_impl_.ammo_){false} - , decltype(_impl_.show_off_socket_){false} - , decltype(_impl_.reportable_){false} - , decltype(_impl_.reverse_addons_east_){false} - , decltype(_impl_.reverse_addons_west_){false} - , decltype(_impl_.reverse_addons_south_){false} - , decltype(_impl_.reverse_addons_north_){false} - , decltype(_impl_.wearout_){false} - , decltype(_impl_.clockexpire_){false} - , decltype(_impl_.expire_){false} - , decltype(_impl_.expirestop_){false} - , decltype(_impl_.wrapkit_){false} - }; -} - -AppearanceFlags::~AppearanceFlags() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlags) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlags::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.npcsaledata_.~RepeatedPtrField(); - if (this != internal_default_instance()) delete _impl_.bank_; - if (this != internal_default_instance()) delete _impl_.write_; - if (this != internal_default_instance()) delete _impl_.write_once_; - if (this != internal_default_instance()) delete _impl_.hook_; - if (this != internal_default_instance()) delete _impl_.light_; - if (this != internal_default_instance()) delete _impl_.shift_; - if (this != internal_default_instance()) delete _impl_.height_; - if (this != internal_default_instance()) delete _impl_.automap_; - if (this != internal_default_instance()) delete _impl_.lenshelp_; - if (this != internal_default_instance()) delete _impl_.clothes_; - if (this != internal_default_instance()) delete _impl_.default_action_; - if (this != internal_default_instance()) delete _impl_.market_; - if (this != internal_default_instance()) delete _impl_.changedtoexpire_; - if (this != internal_default_instance()) delete _impl_.cyclopediaitem_; - if (this != internal_default_instance()) delete _impl_.upgradeclassification_; -} - -void AppearanceFlags::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlags::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlags) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.npcsaledata_.Clear(); - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x000000ffu) { - if (cached_has_bits & 0x00000001u) { - GOOGLE_DCHECK(_impl_.bank_ != nullptr); - _impl_.bank_->Clear(); - } - if (cached_has_bits & 0x00000002u) { - GOOGLE_DCHECK(_impl_.write_ != nullptr); - _impl_.write_->Clear(); - } - if (cached_has_bits & 0x00000004u) { - GOOGLE_DCHECK(_impl_.write_once_ != nullptr); - _impl_.write_once_->Clear(); - } - if (cached_has_bits & 0x00000008u) { - GOOGLE_DCHECK(_impl_.hook_ != nullptr); - _impl_.hook_->Clear(); - } - if (cached_has_bits & 0x00000010u) { - GOOGLE_DCHECK(_impl_.light_ != nullptr); - _impl_.light_->Clear(); - } - if (cached_has_bits & 0x00000020u) { - GOOGLE_DCHECK(_impl_.shift_ != nullptr); - _impl_.shift_->Clear(); - } - if (cached_has_bits & 0x00000040u) { - GOOGLE_DCHECK(_impl_.height_ != nullptr); - _impl_.height_->Clear(); - } - if (cached_has_bits & 0x00000080u) { - GOOGLE_DCHECK(_impl_.automap_ != nullptr); - _impl_.automap_->Clear(); - } - } - if (cached_has_bits & 0x00007f00u) { - if (cached_has_bits & 0x00000100u) { - GOOGLE_DCHECK(_impl_.lenshelp_ != nullptr); - _impl_.lenshelp_->Clear(); - } - if (cached_has_bits & 0x00000200u) { - GOOGLE_DCHECK(_impl_.clothes_ != nullptr); - _impl_.clothes_->Clear(); - } - if (cached_has_bits & 0x00000400u) { - GOOGLE_DCHECK(_impl_.default_action_ != nullptr); - _impl_.default_action_->Clear(); - } - if (cached_has_bits & 0x00000800u) { - GOOGLE_DCHECK(_impl_.market_ != nullptr); - _impl_.market_->Clear(); - } - if (cached_has_bits & 0x00001000u) { - GOOGLE_DCHECK(_impl_.changedtoexpire_ != nullptr); - _impl_.changedtoexpire_->Clear(); - } - if (cached_has_bits & 0x00002000u) { - GOOGLE_DCHECK(_impl_.cyclopediaitem_ != nullptr); - _impl_.cyclopediaitem_->Clear(); - } - if (cached_has_bits & 0x00004000u) { - GOOGLE_DCHECK(_impl_.upgradeclassification_ != nullptr); - _impl_.upgradeclassification_->Clear(); - } - } - _impl_.clip_ = false; - if (cached_has_bits & 0x00ff0000u) { - ::memset(&_impl_.bottom_, 0, static_cast( - reinterpret_cast(&_impl_.liquidpool_) - - reinterpret_cast(&_impl_.bottom_)) + sizeof(_impl_.liquidpool_)); - } - if (cached_has_bits & 0xff000000u) { - ::memset(&_impl_.unpass_, 0, static_cast( - reinterpret_cast(&_impl_.hang_) - - reinterpret_cast(&_impl_.unpass_)) + sizeof(_impl_.hang_)); - } - cached_has_bits = _impl_._has_bits_[1]; - if (cached_has_bits & 0x000000ffu) { - ::memset(&_impl_.rotate_, 0, static_cast( - reinterpret_cast(&_impl_.wrap_) - - reinterpret_cast(&_impl_.rotate_)) + sizeof(_impl_.wrap_)); - } - if (cached_has_bits & 0x0000ff00u) { - ::memset(&_impl_.unwrap_, 0, static_cast( - reinterpret_cast(&_impl_.reverse_addons_east_) - - reinterpret_cast(&_impl_.unwrap_)) + sizeof(_impl_.reverse_addons_east_)); - } - if (cached_has_bits & 0x00ff0000u) { - ::memset(&_impl_.reverse_addons_west_, 0, static_cast( - reinterpret_cast(&_impl_.wrapkit_) - - reinterpret_cast(&_impl_.reverse_addons_west_)) + sizeof(_impl_.wrapkit_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlags::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - ptr = ctx->ParseMessage(_internal_mutable_bank(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool clip = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_clip(&_impl_._has_bits_); - _impl_.clip_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool bottom = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_bottom(&_impl_._has_bits_); - _impl_.bottom_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool top = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - _Internal::set_has_top(&_impl_._has_bits_); - _impl_.top_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool container = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - _Internal::set_has_container(&_impl_._has_bits_); - _impl_.container_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool cumulative = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - _Internal::set_has_cumulative(&_impl_._has_bits_); - _impl_.cumulative_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool usable = 7; - case 7: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { - _Internal::set_has_usable(&_impl_._has_bits_); - _impl_.usable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool forceuse = 8; - case 8: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { - _Internal::set_has_forceuse(&_impl_._has_bits_); - _impl_.forceuse_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool multiuse = 9; - case 9: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 72)) { - _Internal::set_has_multiuse(&_impl_._has_bits_); - _impl_.multiuse_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; - case 10: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 82)) { - ptr = ctx->ParseMessage(_internal_mutable_write(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; - case 11: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 90)) { - ptr = ctx->ParseMessage(_internal_mutable_write_once(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool liquidpool = 12; - case 12: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 96)) { - _Internal::set_has_liquidpool(&_impl_._has_bits_); - _impl_.liquidpool_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool unpass = 13; - case 13: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 104)) { - _Internal::set_has_unpass(&_impl_._has_bits_); - _impl_.unpass_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool unmove = 14; - case 14: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 112)) { - _Internal::set_has_unmove(&_impl_._has_bits_); - _impl_.unmove_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool unsight = 15; - case 15: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 120)) { - _Internal::set_has_unsight(&_impl_._has_bits_); - _impl_.unsight_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool avoid = 16; - case 16: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 128)) { - _Internal::set_has_avoid(&_impl_._has_bits_); - _impl_.avoid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool no_movement_animation = 17; - case 17: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 136)) { - _Internal::set_has_no_movement_animation(&_impl_._has_bits_); - _impl_.no_movement_animation_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool take = 18; - case 18: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 144)) { - _Internal::set_has_take(&_impl_._has_bits_); - _impl_.take_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool liquidcontainer = 19; - case 19: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 152)) { - _Internal::set_has_liquidcontainer(&_impl_._has_bits_); - _impl_.liquidcontainer_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool hang = 20; - case 20: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 160)) { - _Internal::set_has_hang(&_impl_._has_bits_); - _impl_.hang_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; - case 21: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 170)) { - ptr = ctx->ParseMessage(_internal_mutable_hook(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool rotate = 22; - case 22: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 176)) { - _Internal::set_has_rotate(&_impl_._has_bits_); - _impl_.rotate_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; - case 23: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 186)) { - ptr = ctx->ParseMessage(_internal_mutable_light(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool dont_hide = 24; - case 24: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 192)) { - _Internal::set_has_dont_hide(&_impl_._has_bits_); - _impl_.dont_hide_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool translucent = 25; - case 25: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 200)) { - _Internal::set_has_translucent(&_impl_._has_bits_); - _impl_.translucent_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; - case 26: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 210)) { - ptr = ctx->ParseMessage(_internal_mutable_shift(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; - case 27: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 218)) { - ptr = ctx->ParseMessage(_internal_mutable_height(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool lying_object = 28; - case 28: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 224)) { - _Internal::set_has_lying_object(&_impl_._has_bits_); - _impl_.lying_object_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool animate_always = 29; - case 29: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 232)) { - _Internal::set_has_animate_always(&_impl_._has_bits_); - _impl_.animate_always_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; - case 30: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 242)) { - ptr = ctx->ParseMessage(_internal_mutable_automap(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; - case 31: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 250)) { - ptr = ctx->ParseMessage(_internal_mutable_lenshelp(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool fullbank = 32; - case 32: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 0)) { - _Internal::set_has_fullbank(&_impl_._has_bits_); - _impl_.fullbank_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool ignore_look = 33; - case 33: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_ignore_look(&_impl_._has_bits_); - _impl_.ignore_look_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; - case 34: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - ptr = ctx->ParseMessage(_internal_mutable_clothes(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; - case 35: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { - ptr = ctx->ParseMessage(_internal_mutable_default_action(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; - case 36: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - ptr = ctx->ParseMessage(_internal_mutable_market(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool wrap = 37; - case 37: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - _Internal::set_has_wrap(&_impl_._has_bits_); - _impl_.wrap_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool unwrap = 38; - case 38: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - _Internal::set_has_unwrap(&_impl_._has_bits_); - _impl_.unwrap_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool topeffect = 39; - case 39: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { - _Internal::set_has_topeffect(&_impl_._has_bits_); - _impl_.topeffect_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; - case 40: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { - ptr -= 2; - do { - ptr += 2; - ptr = ctx->ParseMessage(_internal_add_npcsaledata(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<322>(ptr)); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; - case 41: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 74)) { - ptr = ctx->ParseMessage(_internal_mutable_changedtoexpire(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool corpse = 42; - case 42: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 80)) { - _Internal::set_has_corpse(&_impl_._has_bits_); - _impl_.corpse_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool player_corpse = 43; - case 43: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 88)) { - _Internal::set_has_player_corpse(&_impl_._has_bits_); - _impl_.player_corpse_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; - case 44: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 98)) { - ptr = ctx->ParseMessage(_internal_mutable_cyclopediaitem(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool ammo = 45; - case 45: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 104)) { - _Internal::set_has_ammo(&_impl_._has_bits_); - _impl_.ammo_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool show_off_socket = 46; - case 46: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 112)) { - _Internal::set_has_show_off_socket(&_impl_._has_bits_); - _impl_.show_off_socket_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool reportable = 47; - case 47: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 120)) { - _Internal::set_has_reportable(&_impl_._has_bits_); - _impl_.reportable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; - case 48: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 130)) { - ptr = ctx->ParseMessage(_internal_mutable_upgradeclassification(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool reverse_addons_east = 49; - case 49: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 136)) { - _Internal::set_has_reverse_addons_east(&_impl_._has_bits_); - _impl_.reverse_addons_east_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool reverse_addons_west = 50; - case 50: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 144)) { - _Internal::set_has_reverse_addons_west(&_impl_._has_bits_); - _impl_.reverse_addons_west_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool reverse_addons_south = 51; - case 51: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 152)) { - _Internal::set_has_reverse_addons_south(&_impl_._has_bits_); - _impl_.reverse_addons_south_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool reverse_addons_north = 52; - case 52: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 160)) { - _Internal::set_has_reverse_addons_north(&_impl_._has_bits_); - _impl_.reverse_addons_north_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool wearout = 53; - case 53: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 168)) { - _Internal::set_has_wearout(&_impl_._has_bits_); - _impl_.wearout_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool clockexpire = 54; - case 54: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 176)) { - _Internal::set_has_clockexpire(&_impl_._has_bits_); - _impl_.clockexpire_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool expire = 55; - case 55: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 184)) { - _Internal::set_has_expire(&_impl_._has_bits_); - _impl_.expire_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool expirestop = 56; - case 56: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 192)) { - _Internal::set_has_expirestop(&_impl_._has_bits_); - _impl_.expirestop_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bool wrapkit = 57; - case 57: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 200)) { - _Internal::set_has_wrapkit(&_impl_._has_bits_); - _impl_.wrapkit_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlags::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlags) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; - if (cached_has_bits & 0x00000001u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, _Internal::bank(this), - _Internal::bank(this).GetCachedSize(), target, stream); - } - - // optional bool clip = 2; - if (cached_has_bits & 0x00008000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_clip(), target); - } - - // optional bool bottom = 3; - if (cached_has_bits & 0x00010000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_bottom(), target); - } - - // optional bool top = 4; - if (cached_has_bits & 0x00020000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_top(), target); - } - - // optional bool container = 5; - if (cached_has_bits & 0x00040000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_container(), target); - } - - // optional bool cumulative = 6; - if (cached_has_bits & 0x00080000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_cumulative(), target); - } - - // optional bool usable = 7; - if (cached_has_bits & 0x00100000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(7, this->_internal_usable(), target); - } - - // optional bool forceuse = 8; - if (cached_has_bits & 0x00200000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(8, this->_internal_forceuse(), target); - } - - // optional bool multiuse = 9; - if (cached_has_bits & 0x00400000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(9, this->_internal_multiuse(), target); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; - if (cached_has_bits & 0x00000002u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(10, _Internal::write(this), - _Internal::write(this).GetCachedSize(), target, stream); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; - if (cached_has_bits & 0x00000004u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(11, _Internal::write_once(this), - _Internal::write_once(this).GetCachedSize(), target, stream); - } - - // optional bool liquidpool = 12; - if (cached_has_bits & 0x00800000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(12, this->_internal_liquidpool(), target); - } - - // optional bool unpass = 13; - if (cached_has_bits & 0x01000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(13, this->_internal_unpass(), target); - } - - // optional bool unmove = 14; - if (cached_has_bits & 0x02000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(14, this->_internal_unmove(), target); - } - - // optional bool unsight = 15; - if (cached_has_bits & 0x04000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(15, this->_internal_unsight(), target); - } - - // optional bool avoid = 16; - if (cached_has_bits & 0x08000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(16, this->_internal_avoid(), target); - } - - // optional bool no_movement_animation = 17; - if (cached_has_bits & 0x10000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(17, this->_internal_no_movement_animation(), target); - } - - // optional bool take = 18; - if (cached_has_bits & 0x20000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(18, this->_internal_take(), target); - } - - // optional bool liquidcontainer = 19; - if (cached_has_bits & 0x40000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(19, this->_internal_liquidcontainer(), target); - } - - // optional bool hang = 20; - if (cached_has_bits & 0x80000000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(20, this->_internal_hang(), target); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; - if (cached_has_bits & 0x00000008u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(21, _Internal::hook(this), - _Internal::hook(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool rotate = 22; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(22, this->_internal_rotate(), target); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; - if (cached_has_bits & 0x00000010u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(23, _Internal::light(this), - _Internal::light(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool dont_hide = 24; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(24, this->_internal_dont_hide(), target); - } - - // optional bool translucent = 25; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(25, this->_internal_translucent(), target); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; - if (cached_has_bits & 0x00000020u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(26, _Internal::shift(this), - _Internal::shift(this).GetCachedSize(), target, stream); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; - if (cached_has_bits & 0x00000040u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(27, _Internal::height(this), - _Internal::height(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool lying_object = 28; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(28, this->_internal_lying_object(), target); - } - - // optional bool animate_always = 29; - if (cached_has_bits & 0x00000010u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(29, this->_internal_animate_always(), target); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; - if (cached_has_bits & 0x00000080u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(30, _Internal::automap(this), - _Internal::automap(this).GetCachedSize(), target, stream); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; - if (cached_has_bits & 0x00000100u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(31, _Internal::lenshelp(this), - _Internal::lenshelp(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool fullbank = 32; - if (cached_has_bits & 0x00000020u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(32, this->_internal_fullbank(), target); - } - - // optional bool ignore_look = 33; - if (cached_has_bits & 0x00000040u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(33, this->_internal_ignore_look(), target); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; - if (cached_has_bits & 0x00000200u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(34, _Internal::clothes(this), - _Internal::clothes(this).GetCachedSize(), target, stream); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; - if (cached_has_bits & 0x00000400u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(35, _Internal::default_action(this), - _Internal::default_action(this).GetCachedSize(), target, stream); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; - if (cached_has_bits & 0x00000800u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(36, _Internal::market(this), - _Internal::market(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool wrap = 37; - if (cached_has_bits & 0x00000080u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(37, this->_internal_wrap(), target); - } - - // optional bool unwrap = 38; - if (cached_has_bits & 0x00000100u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(38, this->_internal_unwrap(), target); - } - - // optional bool topeffect = 39; - if (cached_has_bits & 0x00000200u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(39, this->_internal_topeffect(), target); - } - - // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; - for (unsigned i = 0, - n = static_cast(this->_internal_npcsaledata_size()); i < n; i++) { - const auto& repfield = this->_internal_npcsaledata(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(40, repfield, repfield.GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; - if (cached_has_bits & 0x00001000u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(41, _Internal::changedtoexpire(this), - _Internal::changedtoexpire(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool corpse = 42; - if (cached_has_bits & 0x00000400u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(42, this->_internal_corpse(), target); - } - - // optional bool player_corpse = 43; - if (cached_has_bits & 0x00000800u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(43, this->_internal_player_corpse(), target); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; - if (cached_has_bits & 0x00002000u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(44, _Internal::cyclopediaitem(this), - _Internal::cyclopediaitem(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool ammo = 45; - if (cached_has_bits & 0x00001000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(45, this->_internal_ammo(), target); - } - - // optional bool show_off_socket = 46; - if (cached_has_bits & 0x00002000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(46, this->_internal_show_off_socket(), target); - } - - // optional bool reportable = 47; - if (cached_has_bits & 0x00004000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(47, this->_internal_reportable(), target); - } - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; - if (cached_has_bits & 0x00004000u) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(48, _Internal::upgradeclassification(this), - _Internal::upgradeclassification(this).GetCachedSize(), target, stream); - } - - cached_has_bits = _impl_._has_bits_[1]; - // optional bool reverse_addons_east = 49; - if (cached_has_bits & 0x00008000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(49, this->_internal_reverse_addons_east(), target); - } - - // optional bool reverse_addons_west = 50; - if (cached_has_bits & 0x00010000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(50, this->_internal_reverse_addons_west(), target); - } - - // optional bool reverse_addons_south = 51; - if (cached_has_bits & 0x00020000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(51, this->_internal_reverse_addons_south(), target); - } - - // optional bool reverse_addons_north = 52; - if (cached_has_bits & 0x00040000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(52, this->_internal_reverse_addons_north(), target); - } - - // optional bool wearout = 53; - if (cached_has_bits & 0x00080000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(53, this->_internal_wearout(), target); - } - - // optional bool clockexpire = 54; - if (cached_has_bits & 0x00100000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(54, this->_internal_clockexpire(), target); - } - - // optional bool expire = 55; - if (cached_has_bits & 0x00200000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(55, this->_internal_expire(), target); - } - - // optional bool expirestop = 56; - if (cached_has_bits & 0x00400000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(56, this->_internal_expirestop(), target); - } - - // optional bool wrapkit = 57; - if (cached_has_bits & 0x00800000u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(57, this->_internal_wrapkit(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlags) - return target; -} - -size_t AppearanceFlags::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlags) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; - total_size += 2UL * this->_internal_npcsaledata_size(); - for (const auto& msg : this->_impl_.npcsaledata_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x000000ffu) { - // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.bank_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; - if (cached_has_bits & 0x00000002u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.write_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; - if (cached_has_bits & 0x00000004u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.write_once_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; - if (cached_has_bits & 0x00000008u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.hook_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; - if (cached_has_bits & 0x00000010u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.light_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; - if (cached_has_bits & 0x00000020u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.shift_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; - if (cached_has_bits & 0x00000040u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.height_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; - if (cached_has_bits & 0x00000080u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.automap_); - } - - } - if (cached_has_bits & 0x0000ff00u) { - // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; - if (cached_has_bits & 0x00000100u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.lenshelp_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; - if (cached_has_bits & 0x00000200u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.clothes_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; - if (cached_has_bits & 0x00000400u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.default_action_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; - if (cached_has_bits & 0x00000800u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.market_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; - if (cached_has_bits & 0x00001000u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.changedtoexpire_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; - if (cached_has_bits & 0x00002000u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.cyclopediaitem_); - } - - // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; - if (cached_has_bits & 0x00004000u) { - total_size += 2 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.upgradeclassification_); - } - - // optional bool clip = 2; - if (cached_has_bits & 0x00008000u) { - total_size += 1 + 1; - } - - } - if (cached_has_bits & 0x00ff0000u) { - // optional bool bottom = 3; - if (cached_has_bits & 0x00010000u) { - total_size += 1 + 1; - } - - // optional bool top = 4; - if (cached_has_bits & 0x00020000u) { - total_size += 1 + 1; - } - - // optional bool container = 5; - if (cached_has_bits & 0x00040000u) { - total_size += 1 + 1; - } - - // optional bool cumulative = 6; - if (cached_has_bits & 0x00080000u) { - total_size += 1 + 1; - } - - // optional bool usable = 7; - if (cached_has_bits & 0x00100000u) { - total_size += 1 + 1; - } - - // optional bool forceuse = 8; - if (cached_has_bits & 0x00200000u) { - total_size += 1 + 1; - } - - // optional bool multiuse = 9; - if (cached_has_bits & 0x00400000u) { - total_size += 1 + 1; - } - - // optional bool liquidpool = 12; - if (cached_has_bits & 0x00800000u) { - total_size += 1 + 1; - } - - } - if (cached_has_bits & 0xff000000u) { - // optional bool unpass = 13; - if (cached_has_bits & 0x01000000u) { - total_size += 1 + 1; - } - - // optional bool unmove = 14; - if (cached_has_bits & 0x02000000u) { - total_size += 1 + 1; - } - - // optional bool unsight = 15; - if (cached_has_bits & 0x04000000u) { - total_size += 1 + 1; - } - - // optional bool avoid = 16; - if (cached_has_bits & 0x08000000u) { - total_size += 2 + 1; - } - - // optional bool no_movement_animation = 17; - if (cached_has_bits & 0x10000000u) { - total_size += 2 + 1; - } - - // optional bool take = 18; - if (cached_has_bits & 0x20000000u) { - total_size += 2 + 1; - } - - // optional bool liquidcontainer = 19; - if (cached_has_bits & 0x40000000u) { - total_size += 2 + 1; - } - - // optional bool hang = 20; - if (cached_has_bits & 0x80000000u) { - total_size += 2 + 1; - } - - } - cached_has_bits = _impl_._has_bits_[1]; - if (cached_has_bits & 0x000000ffu) { - // optional bool rotate = 22; - if (cached_has_bits & 0x00000001u) { - total_size += 2 + 1; - } - - // optional bool dont_hide = 24; - if (cached_has_bits & 0x00000002u) { - total_size += 2 + 1; - } - - // optional bool translucent = 25; - if (cached_has_bits & 0x00000004u) { - total_size += 2 + 1; - } - - // optional bool lying_object = 28; - if (cached_has_bits & 0x00000008u) { - total_size += 2 + 1; - } - - // optional bool animate_always = 29; - if (cached_has_bits & 0x00000010u) { - total_size += 2 + 1; - } - - // optional bool fullbank = 32; - if (cached_has_bits & 0x00000020u) { - total_size += 2 + 1; - } - - // optional bool ignore_look = 33; - if (cached_has_bits & 0x00000040u) { - total_size += 2 + 1; - } - - // optional bool wrap = 37; - if (cached_has_bits & 0x00000080u) { - total_size += 2 + 1; - } - - } - if (cached_has_bits & 0x0000ff00u) { - // optional bool unwrap = 38; - if (cached_has_bits & 0x00000100u) { - total_size += 2 + 1; - } - - // optional bool topeffect = 39; - if (cached_has_bits & 0x00000200u) { - total_size += 2 + 1; - } - - // optional bool corpse = 42; - if (cached_has_bits & 0x00000400u) { - total_size += 2 + 1; - } - - // optional bool player_corpse = 43; - if (cached_has_bits & 0x00000800u) { - total_size += 2 + 1; - } - - // optional bool ammo = 45; - if (cached_has_bits & 0x00001000u) { - total_size += 2 + 1; - } - - // optional bool show_off_socket = 46; - if (cached_has_bits & 0x00002000u) { - total_size += 2 + 1; - } - - // optional bool reportable = 47; - if (cached_has_bits & 0x00004000u) { - total_size += 2 + 1; - } - - // optional bool reverse_addons_east = 49; - if (cached_has_bits & 0x00008000u) { - total_size += 2 + 1; - } - - } - if (cached_has_bits & 0x00ff0000u) { - // optional bool reverse_addons_west = 50; - if (cached_has_bits & 0x00010000u) { - total_size += 2 + 1; - } - - // optional bool reverse_addons_south = 51; - if (cached_has_bits & 0x00020000u) { - total_size += 2 + 1; - } - - // optional bool reverse_addons_north = 52; - if (cached_has_bits & 0x00040000u) { - total_size += 2 + 1; - } - - // optional bool wearout = 53; - if (cached_has_bits & 0x00080000u) { - total_size += 2 + 1; - } - - // optional bool clockexpire = 54; - if (cached_has_bits & 0x00100000u) { - total_size += 2 + 1; - } - - // optional bool expire = 55; - if (cached_has_bits & 0x00200000u) { - total_size += 2 + 1; - } - - // optional bool expirestop = 56; - if (cached_has_bits & 0x00400000u) { - total_size += 2 + 1; - } - - // optional bool wrapkit = 57; - if (cached_has_bits & 0x00800000u) { - total_size += 2 + 1; - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlags::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlags::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlags::GetClassData() const { return &_class_data_; } - - -void AppearanceFlags::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlags) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.npcsaledata_.MergeFrom(from._impl_.npcsaledata_); - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x000000ffu) { - if (cached_has_bits & 0x00000001u) { - _this->_internal_mutable_bank()->::Canary::protobuf::appearances::AppearanceFlagBank::MergeFrom( - from._internal_bank()); - } - if (cached_has_bits & 0x00000002u) { - _this->_internal_mutable_write()->::Canary::protobuf::appearances::AppearanceFlagWrite::MergeFrom( - from._internal_write()); - } - if (cached_has_bits & 0x00000004u) { - _this->_internal_mutable_write_once()->::Canary::protobuf::appearances::AppearanceFlagWriteOnce::MergeFrom( - from._internal_write_once()); - } - if (cached_has_bits & 0x00000008u) { - _this->_internal_mutable_hook()->::Canary::protobuf::appearances::AppearanceFlagHook::MergeFrom( - from._internal_hook()); - } - if (cached_has_bits & 0x00000010u) { - _this->_internal_mutable_light()->::Canary::protobuf::appearances::AppearanceFlagLight::MergeFrom( - from._internal_light()); - } - if (cached_has_bits & 0x00000020u) { - _this->_internal_mutable_shift()->::Canary::protobuf::appearances::AppearanceFlagShift::MergeFrom( - from._internal_shift()); - } - if (cached_has_bits & 0x00000040u) { - _this->_internal_mutable_height()->::Canary::protobuf::appearances::AppearanceFlagHeight::MergeFrom( - from._internal_height()); - } - if (cached_has_bits & 0x00000080u) { - _this->_internal_mutable_automap()->::Canary::protobuf::appearances::AppearanceFlagAutomap::MergeFrom( - from._internal_automap()); - } - } - if (cached_has_bits & 0x0000ff00u) { - if (cached_has_bits & 0x00000100u) { - _this->_internal_mutable_lenshelp()->::Canary::protobuf::appearances::AppearanceFlagLenshelp::MergeFrom( - from._internal_lenshelp()); - } - if (cached_has_bits & 0x00000200u) { - _this->_internal_mutable_clothes()->::Canary::protobuf::appearances::AppearanceFlagClothes::MergeFrom( - from._internal_clothes()); - } - if (cached_has_bits & 0x00000400u) { - _this->_internal_mutable_default_action()->::Canary::protobuf::appearances::AppearanceFlagDefaultAction::MergeFrom( - from._internal_default_action()); - } - if (cached_has_bits & 0x00000800u) { - _this->_internal_mutable_market()->::Canary::protobuf::appearances::AppearanceFlagMarket::MergeFrom( - from._internal_market()); - } - if (cached_has_bits & 0x00001000u) { - _this->_internal_mutable_changedtoexpire()->::Canary::protobuf::appearances::AppearanceFlagChangedToExpire::MergeFrom( - from._internal_changedtoexpire()); - } - if (cached_has_bits & 0x00002000u) { - _this->_internal_mutable_cyclopediaitem()->::Canary::protobuf::appearances::AppearanceFlagCyclopedia::MergeFrom( - from._internal_cyclopediaitem()); - } - if (cached_has_bits & 0x00004000u) { - _this->_internal_mutable_upgradeclassification()->::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification::MergeFrom( - from._internal_upgradeclassification()); - } - if (cached_has_bits & 0x00008000u) { - _this->_impl_.clip_ = from._impl_.clip_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - if (cached_has_bits & 0x00ff0000u) { - if (cached_has_bits & 0x00010000u) { - _this->_impl_.bottom_ = from._impl_.bottom_; - } - if (cached_has_bits & 0x00020000u) { - _this->_impl_.top_ = from._impl_.top_; - } - if (cached_has_bits & 0x00040000u) { - _this->_impl_.container_ = from._impl_.container_; - } - if (cached_has_bits & 0x00080000u) { - _this->_impl_.cumulative_ = from._impl_.cumulative_; - } - if (cached_has_bits & 0x00100000u) { - _this->_impl_.usable_ = from._impl_.usable_; - } - if (cached_has_bits & 0x00200000u) { - _this->_impl_.forceuse_ = from._impl_.forceuse_; - } - if (cached_has_bits & 0x00400000u) { - _this->_impl_.multiuse_ = from._impl_.multiuse_; - } - if (cached_has_bits & 0x00800000u) { - _this->_impl_.liquidpool_ = from._impl_.liquidpool_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - if (cached_has_bits & 0xff000000u) { - if (cached_has_bits & 0x01000000u) { - _this->_impl_.unpass_ = from._impl_.unpass_; - } - if (cached_has_bits & 0x02000000u) { - _this->_impl_.unmove_ = from._impl_.unmove_; - } - if (cached_has_bits & 0x04000000u) { - _this->_impl_.unsight_ = from._impl_.unsight_; - } - if (cached_has_bits & 0x08000000u) { - _this->_impl_.avoid_ = from._impl_.avoid_; - } - if (cached_has_bits & 0x10000000u) { - _this->_impl_.no_movement_animation_ = from._impl_.no_movement_animation_; - } - if (cached_has_bits & 0x20000000u) { - _this->_impl_.take_ = from._impl_.take_; - } - if (cached_has_bits & 0x40000000u) { - _this->_impl_.liquidcontainer_ = from._impl_.liquidcontainer_; - } - if (cached_has_bits & 0x80000000u) { - _this->_impl_.hang_ = from._impl_.hang_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - cached_has_bits = from._impl_._has_bits_[1]; - if (cached_has_bits & 0x000000ffu) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.rotate_ = from._impl_.rotate_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.dont_hide_ = from._impl_.dont_hide_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.translucent_ = from._impl_.translucent_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.lying_object_ = from._impl_.lying_object_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.animate_always_ = from._impl_.animate_always_; - } - if (cached_has_bits & 0x00000020u) { - _this->_impl_.fullbank_ = from._impl_.fullbank_; - } - if (cached_has_bits & 0x00000040u) { - _this->_impl_.ignore_look_ = from._impl_.ignore_look_; - } - if (cached_has_bits & 0x00000080u) { - _this->_impl_.wrap_ = from._impl_.wrap_; - } - _this->_impl_._has_bits_[1] |= cached_has_bits; - } - if (cached_has_bits & 0x0000ff00u) { - if (cached_has_bits & 0x00000100u) { - _this->_impl_.unwrap_ = from._impl_.unwrap_; - } - if (cached_has_bits & 0x00000200u) { - _this->_impl_.topeffect_ = from._impl_.topeffect_; - } - if (cached_has_bits & 0x00000400u) { - _this->_impl_.corpse_ = from._impl_.corpse_; - } - if (cached_has_bits & 0x00000800u) { - _this->_impl_.player_corpse_ = from._impl_.player_corpse_; - } - if (cached_has_bits & 0x00001000u) { - _this->_impl_.ammo_ = from._impl_.ammo_; - } - if (cached_has_bits & 0x00002000u) { - _this->_impl_.show_off_socket_ = from._impl_.show_off_socket_; - } - if (cached_has_bits & 0x00004000u) { - _this->_impl_.reportable_ = from._impl_.reportable_; - } - if (cached_has_bits & 0x00008000u) { - _this->_impl_.reverse_addons_east_ = from._impl_.reverse_addons_east_; - } - _this->_impl_._has_bits_[1] |= cached_has_bits; - } - if (cached_has_bits & 0x00ff0000u) { - if (cached_has_bits & 0x00010000u) { - _this->_impl_.reverse_addons_west_ = from._impl_.reverse_addons_west_; - } - if (cached_has_bits & 0x00020000u) { - _this->_impl_.reverse_addons_south_ = from._impl_.reverse_addons_south_; - } - if (cached_has_bits & 0x00040000u) { - _this->_impl_.reverse_addons_north_ = from._impl_.reverse_addons_north_; - } - if (cached_has_bits & 0x00080000u) { - _this->_impl_.wearout_ = from._impl_.wearout_; - } - if (cached_has_bits & 0x00100000u) { - _this->_impl_.clockexpire_ = from._impl_.clockexpire_; - } - if (cached_has_bits & 0x00200000u) { - _this->_impl_.expire_ = from._impl_.expire_; - } - if (cached_has_bits & 0x00400000u) { - _this->_impl_.expirestop_ = from._impl_.expirestop_; - } - if (cached_has_bits & 0x00800000u) { - _this->_impl_.wrapkit_ = from._impl_.wrapkit_; - } - _this->_impl_._has_bits_[1] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlags::CopyFrom(const AppearanceFlags& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlags) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlags::IsInitialized() const { - return true; -} - -void AppearanceFlags::InternalSwap(AppearanceFlags* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_._has_bits_[1], other->_impl_._has_bits_[1]); - _impl_.npcsaledata_.InternalSwap(&other->_impl_.npcsaledata_); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(AppearanceFlags, _impl_.wrapkit_) - + sizeof(AppearanceFlags::_impl_.wrapkit_) - - PROTOBUF_FIELD_OFFSET(AppearanceFlags, _impl_.bank_)>( - reinterpret_cast(&_impl_.bank_), - reinterpret_cast(&other->_impl_.bank_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlags::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[8]); -} - -// =================================================================== - -class AppearanceFlagUpgradeClassification::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_upgrade_classification(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagUpgradeClassification::AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) -} -AppearanceFlagUpgradeClassification::AppearanceFlagUpgradeClassification(const AppearanceFlagUpgradeClassification& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagUpgradeClassification* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.upgrade_classification_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.upgrade_classification_ = from._impl_.upgrade_classification_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) -} - -inline void AppearanceFlagUpgradeClassification::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.upgrade_classification_){0u} - }; -} - -AppearanceFlagUpgradeClassification::~AppearanceFlagUpgradeClassification() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagUpgradeClassification::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagUpgradeClassification::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagUpgradeClassification::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.upgrade_classification_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagUpgradeClassification::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 upgrade_classification = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_upgrade_classification(&has_bits); - _impl_.upgrade_classification_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagUpgradeClassification::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 upgrade_classification = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_upgrade_classification(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - return target; -} - -size_t AppearanceFlagUpgradeClassification::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 upgrade_classification = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_upgrade_classification()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagUpgradeClassification::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagUpgradeClassification::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagUpgradeClassification::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagUpgradeClassification::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_upgrade_classification()) { - _this->_internal_set_upgrade_classification(from._internal_upgrade_classification()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagUpgradeClassification::CopyFrom(const AppearanceFlagUpgradeClassification& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagUpgradeClassification::IsInitialized() const { - return true; -} - -void AppearanceFlagUpgradeClassification::InternalSwap(AppearanceFlagUpgradeClassification* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.upgrade_classification_, other->_impl_.upgrade_classification_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagUpgradeClassification::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[9]); -} - -// =================================================================== - -class AppearanceFlagBank::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_waypoints(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagBank::AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagBank) -} -AppearanceFlagBank::AppearanceFlagBank(const AppearanceFlagBank& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagBank* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.waypoints_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.waypoints_ = from._impl_.waypoints_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagBank) -} - -inline void AppearanceFlagBank::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.waypoints_){0u} - }; -} - -AppearanceFlagBank::~AppearanceFlagBank() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagBank) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagBank::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagBank::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagBank::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagBank) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.waypoints_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagBank::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 waypoints = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_waypoints(&has_bits); - _impl_.waypoints_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagBank::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagBank) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 waypoints = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_waypoints(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagBank) - return target; -} - -size_t AppearanceFlagBank::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagBank) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 waypoints = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_waypoints()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagBank::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagBank::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagBank::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagBank::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagBank) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_waypoints()) { - _this->_internal_set_waypoints(from._internal_waypoints()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagBank::CopyFrom(const AppearanceFlagBank& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagBank) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagBank::IsInitialized() const { - return true; -} - -void AppearanceFlagBank::InternalSwap(AppearanceFlagBank* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.waypoints_, other->_impl_.waypoints_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagBank::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[10]); -} - -// =================================================================== - -class AppearanceFlagWrite::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_max_text_length(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagWrite::AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagWrite) -} -AppearanceFlagWrite::AppearanceFlagWrite(const AppearanceFlagWrite& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagWrite* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.max_text_length_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.max_text_length_ = from._impl_.max_text_length_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagWrite) -} - -inline void AppearanceFlagWrite::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.max_text_length_){0u} - }; -} - -AppearanceFlagWrite::~AppearanceFlagWrite() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagWrite) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagWrite::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagWrite::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagWrite::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagWrite) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.max_text_length_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagWrite::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 max_text_length = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_max_text_length(&has_bits); - _impl_.max_text_length_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagWrite::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagWrite) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 max_text_length = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_max_text_length(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagWrite) - return target; -} - -size_t AppearanceFlagWrite::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagWrite) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 max_text_length = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_max_text_length()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagWrite::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagWrite::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagWrite::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagWrite::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagWrite) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_max_text_length()) { - _this->_internal_set_max_text_length(from._internal_max_text_length()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagWrite::CopyFrom(const AppearanceFlagWrite& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagWrite) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagWrite::IsInitialized() const { - return true; -} - -void AppearanceFlagWrite::InternalSwap(AppearanceFlagWrite* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.max_text_length_, other->_impl_.max_text_length_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagWrite::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[11]); -} - -// =================================================================== - -class AppearanceFlagWriteOnce::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_max_text_length_once(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagWriteOnce::AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagWriteOnce) -} -AppearanceFlagWriteOnce::AppearanceFlagWriteOnce(const AppearanceFlagWriteOnce& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagWriteOnce* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.max_text_length_once_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.max_text_length_once_ = from._impl_.max_text_length_once_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagWriteOnce) -} - -inline void AppearanceFlagWriteOnce::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.max_text_length_once_){0u} - }; -} - -AppearanceFlagWriteOnce::~AppearanceFlagWriteOnce() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagWriteOnce::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagWriteOnce::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagWriteOnce::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.max_text_length_once_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagWriteOnce::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 max_text_length_once = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_max_text_length_once(&has_bits); - _impl_.max_text_length_once_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagWriteOnce::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 max_text_length_once = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_max_text_length_once(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - return target; -} - -size_t AppearanceFlagWriteOnce::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 max_text_length_once = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_max_text_length_once()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagWriteOnce::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagWriteOnce::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagWriteOnce::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagWriteOnce::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_max_text_length_once()) { - _this->_internal_set_max_text_length_once(from._internal_max_text_length_once()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagWriteOnce::CopyFrom(const AppearanceFlagWriteOnce& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagWriteOnce::IsInitialized() const { - return true; -} - -void AppearanceFlagWriteOnce::InternalSwap(AppearanceFlagWriteOnce* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.max_text_length_once_, other->_impl_.max_text_length_once_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagWriteOnce::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[12]); -} - -// =================================================================== - -class AppearanceFlagLight::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_brightness(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_color(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } -}; - -AppearanceFlagLight::AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagLight) -} -AppearanceFlagLight::AppearanceFlagLight(const AppearanceFlagLight& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagLight* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.brightness_){} - , decltype(_impl_.color_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.brightness_, &from._impl_.brightness_, - static_cast(reinterpret_cast(&_impl_.color_) - - reinterpret_cast(&_impl_.brightness_)) + sizeof(_impl_.color_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagLight) -} - -inline void AppearanceFlagLight::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.brightness_){0u} - , decltype(_impl_.color_){0u} - }; -} - -AppearanceFlagLight::~AppearanceFlagLight() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagLight) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagLight::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagLight::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagLight::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagLight) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - ::memset(&_impl_.brightness_, 0, static_cast( - reinterpret_cast(&_impl_.color_) - - reinterpret_cast(&_impl_.brightness_)) + sizeof(_impl_.color_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagLight::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 brightness = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_brightness(&has_bits); - _impl_.brightness_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 color = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_color(&has_bits); - _impl_.color_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagLight::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagLight) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 brightness = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_brightness(), target); - } - - // optional uint32 color = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_color(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagLight) - return target; -} - -size_t AppearanceFlagLight::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagLight) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - // optional uint32 brightness = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_brightness()); - } - - // optional uint32 color = 2; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_color()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagLight::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagLight::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagLight::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagLight::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagLight) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.brightness_ = from._impl_.brightness_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.color_ = from._impl_.color_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagLight::CopyFrom(const AppearanceFlagLight& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagLight) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagLight::IsInitialized() const { - return true; -} - -void AppearanceFlagLight::InternalSwap(AppearanceFlagLight* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(AppearanceFlagLight, _impl_.color_) - + sizeof(AppearanceFlagLight::_impl_.color_) - - PROTOBUF_FIELD_OFFSET(AppearanceFlagLight, _impl_.brightness_)>( - reinterpret_cast(&_impl_.brightness_), - reinterpret_cast(&other->_impl_.brightness_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagLight::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[13]); -} - -// =================================================================== - -class AppearanceFlagHeight::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_elevation(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagHeight::AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagHeight) -} -AppearanceFlagHeight::AppearanceFlagHeight(const AppearanceFlagHeight& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagHeight* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.elevation_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.elevation_ = from._impl_.elevation_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagHeight) -} - -inline void AppearanceFlagHeight::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.elevation_){0u} - }; -} - -AppearanceFlagHeight::~AppearanceFlagHeight() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagHeight) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagHeight::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagHeight::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagHeight::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagHeight) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.elevation_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagHeight::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 elevation = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_elevation(&has_bits); - _impl_.elevation_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagHeight::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagHeight) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 elevation = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_elevation(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagHeight) - return target; -} - -size_t AppearanceFlagHeight::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagHeight) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 elevation = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_elevation()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagHeight::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagHeight::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagHeight::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagHeight::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagHeight) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_elevation()) { - _this->_internal_set_elevation(from._internal_elevation()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagHeight::CopyFrom(const AppearanceFlagHeight& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagHeight) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagHeight::IsInitialized() const { - return true; -} - -void AppearanceFlagHeight::InternalSwap(AppearanceFlagHeight* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.elevation_, other->_impl_.elevation_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagHeight::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[14]); -} - -// =================================================================== - -class AppearanceFlagShift::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_x(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_y(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } -}; - -AppearanceFlagShift::AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagShift) -} -AppearanceFlagShift::AppearanceFlagShift(const AppearanceFlagShift& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagShift* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.x_){} - , decltype(_impl_.y_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.x_, &from._impl_.x_, - static_cast(reinterpret_cast(&_impl_.y_) - - reinterpret_cast(&_impl_.x_)) + sizeof(_impl_.y_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagShift) -} - -inline void AppearanceFlagShift::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.x_){0u} - , decltype(_impl_.y_){0u} - }; -} - -AppearanceFlagShift::~AppearanceFlagShift() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagShift) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagShift::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagShift::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagShift::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagShift) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - ::memset(&_impl_.x_, 0, static_cast( - reinterpret_cast(&_impl_.y_) - - reinterpret_cast(&_impl_.x_)) + sizeof(_impl_.y_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagShift::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 x = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_x(&has_bits); - _impl_.x_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 y = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_y(&has_bits); - _impl_.y_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagShift::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagShift) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 x = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_x(), target); - } - - // optional uint32 y = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_y(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagShift) - return target; -} - -size_t AppearanceFlagShift::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagShift) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - // optional uint32 x = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_x()); - } - - // optional uint32 y = 2; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_y()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagShift::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagShift::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagShift::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagShift::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagShift) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.x_ = from._impl_.x_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.y_ = from._impl_.y_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagShift::CopyFrom(const AppearanceFlagShift& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagShift) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagShift::IsInitialized() const { - return true; -} - -void AppearanceFlagShift::InternalSwap(AppearanceFlagShift* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(AppearanceFlagShift, _impl_.y_) - + sizeof(AppearanceFlagShift::_impl_.y_) - - PROTOBUF_FIELD_OFFSET(AppearanceFlagShift, _impl_.x_)>( - reinterpret_cast(&_impl_.x_), - reinterpret_cast(&other->_impl_.x_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagShift::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[15]); -} - -// =================================================================== - -class AppearanceFlagClothes::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_slot(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagClothes::AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagClothes) -} -AppearanceFlagClothes::AppearanceFlagClothes(const AppearanceFlagClothes& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagClothes* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.slot_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.slot_ = from._impl_.slot_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagClothes) -} - -inline void AppearanceFlagClothes::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.slot_){0u} - }; -} - -AppearanceFlagClothes::~AppearanceFlagClothes() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagClothes) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagClothes::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagClothes::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagClothes::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagClothes) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.slot_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagClothes::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 slot = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_slot(&has_bits); - _impl_.slot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagClothes::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagClothes) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 slot = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_slot(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagClothes) - return target; -} - -size_t AppearanceFlagClothes::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagClothes) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 slot = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_slot()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagClothes::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagClothes::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagClothes::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagClothes::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagClothes) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_slot()) { - _this->_internal_set_slot(from._internal_slot()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagClothes::CopyFrom(const AppearanceFlagClothes& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagClothes) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagClothes::IsInitialized() const { - return true; -} - -void AppearanceFlagClothes::InternalSwap(AppearanceFlagClothes* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.slot_, other->_impl_.slot_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagClothes::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[16]); -} - -// =================================================================== - -class AppearanceFlagDefaultAction::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_action(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagDefaultAction::AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagDefaultAction) -} -AppearanceFlagDefaultAction::AppearanceFlagDefaultAction(const AppearanceFlagDefaultAction& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagDefaultAction* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.action_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.action_ = from._impl_.action_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagDefaultAction) -} - -inline void AppearanceFlagDefaultAction::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.action_){0} - }; -} - -AppearanceFlagDefaultAction::~AppearanceFlagDefaultAction() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagDefaultAction::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagDefaultAction::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagDefaultAction::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.action_ = 0; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagDefaultAction::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - if (PROTOBUF_PREDICT_TRUE(::Canary::protobuf::appearances::PLAYER_ACTION_IsValid(val))) { - _internal_set_action(static_cast<::Canary::protobuf::appearances::PLAYER_ACTION>(val)); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields()); - } - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagDefaultAction::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 1, this->_internal_action(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - return target; -} - -size_t AppearanceFlagDefaultAction::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_action()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagDefaultAction::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagDefaultAction::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagDefaultAction::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagDefaultAction::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_action()) { - _this->_internal_set_action(from._internal_action()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagDefaultAction::CopyFrom(const AppearanceFlagDefaultAction& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagDefaultAction::IsInitialized() const { - return true; -} - -void AppearanceFlagDefaultAction::InternalSwap(AppearanceFlagDefaultAction* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.action_, other->_impl_.action_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagDefaultAction::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[17]); -} - -// =================================================================== - -class AppearanceFlagMarket::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_category(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_trade_as_object_id(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_show_as_object_id(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_minimum_level(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } -}; - -AppearanceFlagMarket::AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagMarket) -} -AppearanceFlagMarket::AppearanceFlagMarket(const AppearanceFlagMarket& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagMarket* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.restrict_to_profession_){from._impl_.restrict_to_profession_} - , decltype(_impl_.trade_as_object_id_){} - , decltype(_impl_.show_as_object_id_){} - , decltype(_impl_.minimum_level_){} - , decltype(_impl_.category_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.trade_as_object_id_, &from._impl_.trade_as_object_id_, - static_cast(reinterpret_cast(&_impl_.category_) - - reinterpret_cast(&_impl_.trade_as_object_id_)) + sizeof(_impl_.category_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagMarket) -} - -inline void AppearanceFlagMarket::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.restrict_to_profession_){arena} - , decltype(_impl_.trade_as_object_id_){0u} - , decltype(_impl_.show_as_object_id_){0u} - , decltype(_impl_.minimum_level_){0u} - , decltype(_impl_.category_){1} - }; -} - -AppearanceFlagMarket::~AppearanceFlagMarket() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagMarket) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagMarket::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.restrict_to_profession_.~RepeatedField(); -} - -void AppearanceFlagMarket::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagMarket::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagMarket) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.restrict_to_profession_.Clear(); - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - ::memset(&_impl_.trade_as_object_id_, 0, static_cast( - reinterpret_cast(&_impl_.minimum_level_) - - reinterpret_cast(&_impl_.trade_as_object_id_)) + sizeof(_impl_.minimum_level_)); - _impl_.category_ = 1; - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagMarket::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - if (PROTOBUF_PREDICT_TRUE(::Canary::protobuf::appearances::ITEM_CATEGORY_IsValid(val))) { - _internal_set_category(static_cast<::Canary::protobuf::appearances::ITEM_CATEGORY>(val)); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields()); - } - } else - goto handle_unusual; - continue; - // optional uint32 trade_as_object_id = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_trade_as_object_id(&has_bits); - _impl_.trade_as_object_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 show_as_object_id = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_show_as_object_id(&has_bits); - _impl_.show_as_object_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - ptr -= 1; - do { - ptr += 1; - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - if (PROTOBUF_PREDICT_TRUE(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(val))) { - _internal_add_restrict_to_profession(static_cast<::Canary::protobuf::appearances::PLAYER_PROFESSION>(val)); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields()); - } - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<40>(ptr)); - } else if (static_cast(tag) == 42) { - ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(_internal_mutable_restrict_to_profession(), ptr, ctx, ::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid, &_internal_metadata_, 5); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 minimum_level = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - _Internal::set_has_minimum_level(&has_bits); - _impl_.minimum_level_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagMarket::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagMarket) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 1, this->_internal_category(), target); - } - - // optional uint32 trade_as_object_id = 2; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_trade_as_object_id(), target); - } - - // optional uint32 show_as_object_id = 3; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_show_as_object_id(), target); - } - - // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; - for (int i = 0, n = this->_internal_restrict_to_profession_size(); i < n; i++) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 5, this->_internal_restrict_to_profession(i), target); - } - - // optional uint32 minimum_level = 6; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_minimum_level(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagMarket) - return target; -} - -size_t AppearanceFlagMarket::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagMarket) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; - { - size_t data_size = 0; - unsigned int count = static_cast(this->_internal_restrict_to_profession_size());for (unsigned int i = 0; i < count; i++) { - data_size += ::_pbi::WireFormatLite::EnumSize( - this->_internal_restrict_to_profession(static_cast(i))); - } - total_size += (1UL * count) + data_size; - } - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - // optional uint32 trade_as_object_id = 2; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_trade_as_object_id()); - } - - // optional uint32 show_as_object_id = 3; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_show_as_object_id()); - } - - // optional uint32 minimum_level = 6; - if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_minimum_level()); - } - - // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; - if (cached_has_bits & 0x00000008u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_category()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagMarket::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagMarket::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagMarket::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagMarket::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagMarket) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.restrict_to_profession_.MergeFrom(from._impl_.restrict_to_profession_); - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000000fu) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.trade_as_object_id_ = from._impl_.trade_as_object_id_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.show_as_object_id_ = from._impl_.show_as_object_id_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.minimum_level_ = from._impl_.minimum_level_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.category_ = from._impl_.category_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagMarket::CopyFrom(const AppearanceFlagMarket& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagMarket) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagMarket::IsInitialized() const { - return true; -} - -void AppearanceFlagMarket::InternalSwap(AppearanceFlagMarket* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.restrict_to_profession_.InternalSwap(&other->_impl_.restrict_to_profession_); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(AppearanceFlagMarket, _impl_.minimum_level_) - + sizeof(AppearanceFlagMarket::_impl_.minimum_level_) - - PROTOBUF_FIELD_OFFSET(AppearanceFlagMarket, _impl_.trade_as_object_id_)>( - reinterpret_cast(&_impl_.trade_as_object_id_), - reinterpret_cast(&other->_impl_.trade_as_object_id_)); - swap(_impl_.category_, other->_impl_.category_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagMarket::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[18]); -} - -// =================================================================== - -class AppearanceFlagNPC::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_name(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_location(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_sale_price(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_buy_price(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_currency_object_type_id(HasBits* has_bits) { - (*has_bits)[0] |= 32u; - } - static void set_has_currency_quest_flag_display_name(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } -}; - -AppearanceFlagNPC::AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagNPC) -} -AppearanceFlagNPC::AppearanceFlagNPC(const AppearanceFlagNPC& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagNPC* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.name_){} - , decltype(_impl_.location_){} - , decltype(_impl_.currency_quest_flag_display_name_){} - , decltype(_impl_.sale_price_){} - , decltype(_impl_.buy_price_){} - , decltype(_impl_.currency_object_type_id_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_name()) { - _this->_impl_.name_.Set(from._internal_name(), - _this->GetArenaForAllocation()); - } - _impl_.location_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.location_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_location()) { - _this->_impl_.location_.Set(from._internal_location(), - _this->GetArenaForAllocation()); - } - _impl_.currency_quest_flag_display_name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_currency_quest_flag_display_name()) { - _this->_impl_.currency_quest_flag_display_name_.Set(from._internal_currency_quest_flag_display_name(), - _this->GetArenaForAllocation()); - } - ::memcpy(&_impl_.sale_price_, &from._impl_.sale_price_, - static_cast(reinterpret_cast(&_impl_.currency_object_type_id_) - - reinterpret_cast(&_impl_.sale_price_)) + sizeof(_impl_.currency_object_type_id_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagNPC) -} - -inline void AppearanceFlagNPC::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.name_){} - , decltype(_impl_.location_){} - , decltype(_impl_.currency_quest_flag_display_name_){} - , decltype(_impl_.sale_price_){0u} - , decltype(_impl_.buy_price_){0u} - , decltype(_impl_.currency_object_type_id_){0u} - }; - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.location_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.location_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.currency_quest_flag_display_name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING -} - -AppearanceFlagNPC::~AppearanceFlagNPC() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagNPC) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagNPC::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.name_.Destroy(); - _impl_.location_.Destroy(); - _impl_.currency_quest_flag_display_name_.Destroy(); -} - -void AppearanceFlagNPC::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagNPC::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagNPC) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - if (cached_has_bits & 0x00000001u) { - _impl_.name_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000002u) { - _impl_.location_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000004u) { - _impl_.currency_quest_flag_display_name_.ClearNonDefaultToEmpty(); - } - } - if (cached_has_bits & 0x00000038u) { - ::memset(&_impl_.sale_price_, 0, static_cast( - reinterpret_cast(&_impl_.currency_object_type_id_) - - reinterpret_cast(&_impl_.sale_price_)) + sizeof(_impl_.currency_object_type_id_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagNPC::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional bytes name = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - auto str = _internal_mutable_name(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bytes location = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - auto str = _internal_mutable_location(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 sale_price = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_sale_price(&has_bits); - _impl_.sale_price_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 buy_price = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - _Internal::set_has_buy_price(&has_bits); - _impl_.buy_price_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 currency_object_type_id = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - _Internal::set_has_currency_object_type_id(&has_bits); - _impl_.currency_object_type_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional bytes currency_quest_flag_display_name = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { - auto str = _internal_mutable_currency_quest_flag_display_name(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagNPC::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagNPC) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional bytes name = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->WriteBytesMaybeAliased( - 1, this->_internal_name(), target); - } - - // optional bytes location = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->WriteBytesMaybeAliased( - 2, this->_internal_location(), target); - } - - // optional uint32 sale_price = 3; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_sale_price(), target); - } - - // optional uint32 buy_price = 4; - if (cached_has_bits & 0x00000010u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_buy_price(), target); - } - - // optional uint32 currency_object_type_id = 5; - if (cached_has_bits & 0x00000020u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_currency_object_type_id(), target); - } - - // optional bytes currency_quest_flag_display_name = 6; - if (cached_has_bits & 0x00000004u) { - target = stream->WriteBytesMaybeAliased( - 6, this->_internal_currency_quest_flag_display_name(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagNPC) - return target; -} - -size_t AppearanceFlagNPC::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagNPC) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000003fu) { - // optional bytes name = 1; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize( - this->_internal_name()); - } - - // optional bytes location = 2; - if (cached_has_bits & 0x00000002u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize( - this->_internal_location()); - } - - // optional bytes currency_quest_flag_display_name = 6; - if (cached_has_bits & 0x00000004u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize( - this->_internal_currency_quest_flag_display_name()); - } - - // optional uint32 sale_price = 3; - if (cached_has_bits & 0x00000008u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_sale_price()); - } - - // optional uint32 buy_price = 4; - if (cached_has_bits & 0x00000010u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_buy_price()); - } - - // optional uint32 currency_object_type_id = 5; - if (cached_has_bits & 0x00000020u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_currency_object_type_id()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagNPC::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagNPC::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagNPC::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagNPC::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagNPC) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000003fu) { - if (cached_has_bits & 0x00000001u) { - _this->_internal_set_name(from._internal_name()); - } - if (cached_has_bits & 0x00000002u) { - _this->_internal_set_location(from._internal_location()); - } - if (cached_has_bits & 0x00000004u) { - _this->_internal_set_currency_quest_flag_display_name(from._internal_currency_quest_flag_display_name()); - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.sale_price_ = from._impl_.sale_price_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.buy_price_ = from._impl_.buy_price_; - } - if (cached_has_bits & 0x00000020u) { - _this->_impl_.currency_object_type_id_ = from._impl_.currency_object_type_id_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagNPC::CopyFrom(const AppearanceFlagNPC& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagNPC) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagNPC::IsInitialized() const { - return true; -} - -void AppearanceFlagNPC::InternalSwap(AppearanceFlagNPC* other) { - using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.name_, lhs_arena, - &other->_impl_.name_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.location_, lhs_arena, - &other->_impl_.location_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.currency_quest_flag_display_name_, lhs_arena, - &other->_impl_.currency_quest_flag_display_name_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(AppearanceFlagNPC, _impl_.currency_object_type_id_) - + sizeof(AppearanceFlagNPC::_impl_.currency_object_type_id_) - - PROTOBUF_FIELD_OFFSET(AppearanceFlagNPC, _impl_.sale_price_)>( - reinterpret_cast(&_impl_.sale_price_), - reinterpret_cast(&other->_impl_.sale_price_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagNPC::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[19]); -} - -// =================================================================== - -class AppearanceFlagAutomap::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_color(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagAutomap::AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagAutomap) -} -AppearanceFlagAutomap::AppearanceFlagAutomap(const AppearanceFlagAutomap& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagAutomap* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.color_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.color_ = from._impl_.color_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagAutomap) -} - -inline void AppearanceFlagAutomap::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.color_){0u} - }; -} - -AppearanceFlagAutomap::~AppearanceFlagAutomap() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagAutomap) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagAutomap::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagAutomap::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagAutomap::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagAutomap) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.color_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagAutomap::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 color = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_color(&has_bits); - _impl_.color_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagAutomap::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagAutomap) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 color = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_color(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagAutomap) - return target; -} - -size_t AppearanceFlagAutomap::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagAutomap) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 color = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_color()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagAutomap::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagAutomap::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagAutomap::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagAutomap::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagAutomap) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_color()) { - _this->_internal_set_color(from._internal_color()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagAutomap::CopyFrom(const AppearanceFlagAutomap& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagAutomap) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagAutomap::IsInitialized() const { - return true; -} - -void AppearanceFlagAutomap::InternalSwap(AppearanceFlagAutomap* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.color_, other->_impl_.color_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagAutomap::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[20]); -} - -// =================================================================== - -class AppearanceFlagHook::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_direction(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagHook::AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagHook) -} -AppearanceFlagHook::AppearanceFlagHook(const AppearanceFlagHook& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagHook* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.direction_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.direction_ = from._impl_.direction_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagHook) -} - -inline void AppearanceFlagHook::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.direction_){1} - }; -} - -AppearanceFlagHook::~AppearanceFlagHook() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagHook) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagHook::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagHook::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagHook::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagHook) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.direction_ = 1; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagHook::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - if (PROTOBUF_PREDICT_TRUE(::Canary::protobuf::appearances::HOOK_TYPE_IsValid(val))) { - _internal_set_direction(static_cast<::Canary::protobuf::appearances::HOOK_TYPE>(val)); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields()); - } - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagHook::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagHook) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 1, this->_internal_direction(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagHook) - return target; -} - -size_t AppearanceFlagHook::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagHook) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_direction()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagHook::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagHook::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagHook::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagHook::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagHook) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_direction()) { - _this->_internal_set_direction(from._internal_direction()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagHook::CopyFrom(const AppearanceFlagHook& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagHook) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagHook::IsInitialized() const { - return true; -} - -void AppearanceFlagHook::InternalSwap(AppearanceFlagHook* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.direction_, other->_impl_.direction_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagHook::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[21]); -} - -// =================================================================== - -class AppearanceFlagLenshelp::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_id(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagLenshelp::AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagLenshelp) -} -AppearanceFlagLenshelp::AppearanceFlagLenshelp(const AppearanceFlagLenshelp& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagLenshelp* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.id_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.id_ = from._impl_.id_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagLenshelp) -} - -inline void AppearanceFlagLenshelp::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.id_){0u} - }; -} - -AppearanceFlagLenshelp::~AppearanceFlagLenshelp() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagLenshelp) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagLenshelp::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagLenshelp::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagLenshelp::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagLenshelp) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.id_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagLenshelp::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 id = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_id(&has_bits); - _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagLenshelp::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagLenshelp) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 id = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_id(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagLenshelp) - return target; -} - -size_t AppearanceFlagLenshelp::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagLenshelp) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 id = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagLenshelp::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagLenshelp::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagLenshelp::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagLenshelp::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagLenshelp) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_id()) { - _this->_internal_set_id(from._internal_id()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagLenshelp::CopyFrom(const AppearanceFlagLenshelp& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagLenshelp) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagLenshelp::IsInitialized() const { - return true; -} - -void AppearanceFlagLenshelp::InternalSwap(AppearanceFlagLenshelp* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.id_, other->_impl_.id_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagLenshelp::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[22]); -} - -// =================================================================== - -class AppearanceFlagChangedToExpire::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_former_object_typeid(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagChangedToExpire::AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) -} -AppearanceFlagChangedToExpire::AppearanceFlagChangedToExpire(const AppearanceFlagChangedToExpire& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagChangedToExpire* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.former_object_typeid_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.former_object_typeid_ = from._impl_.former_object_typeid_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) -} - -inline void AppearanceFlagChangedToExpire::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.former_object_typeid_){0u} - }; -} - -AppearanceFlagChangedToExpire::~AppearanceFlagChangedToExpire() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagChangedToExpire::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagChangedToExpire::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagChangedToExpire::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.former_object_typeid_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagChangedToExpire::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 former_object_typeid = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_former_object_typeid(&has_bits); - _impl_.former_object_typeid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagChangedToExpire::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 former_object_typeid = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_former_object_typeid(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - return target; -} - -size_t AppearanceFlagChangedToExpire::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 former_object_typeid = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_former_object_typeid()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagChangedToExpire::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagChangedToExpire::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagChangedToExpire::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagChangedToExpire::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_former_object_typeid()) { - _this->_internal_set_former_object_typeid(from._internal_former_object_typeid()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagChangedToExpire::CopyFrom(const AppearanceFlagChangedToExpire& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagChangedToExpire::IsInitialized() const { - return true; -} - -void AppearanceFlagChangedToExpire::InternalSwap(AppearanceFlagChangedToExpire* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.former_object_typeid_, other->_impl_.former_object_typeid_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagChangedToExpire::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[23]); -} - -// =================================================================== - -class AppearanceFlagCyclopedia::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_cyclopedia_type(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } -}; - -AppearanceFlagCyclopedia::AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.AppearanceFlagCyclopedia) -} -AppearanceFlagCyclopedia::AppearanceFlagCyclopedia(const AppearanceFlagCyclopedia& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - AppearanceFlagCyclopedia* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.cyclopedia_type_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.cyclopedia_type_ = from._impl_.cyclopedia_type_; - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.AppearanceFlagCyclopedia) -} - -inline void AppearanceFlagCyclopedia::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.cyclopedia_type_){0u} - }; -} - -AppearanceFlagCyclopedia::~AppearanceFlagCyclopedia() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void AppearanceFlagCyclopedia::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void AppearanceFlagCyclopedia::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void AppearanceFlagCyclopedia::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.cyclopedia_type_ = 0u; - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* AppearanceFlagCyclopedia::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 cyclopedia_type = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_cyclopedia_type(&has_bits); - _impl_.cyclopedia_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* AppearanceFlagCyclopedia::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 cyclopedia_type = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_cyclopedia_type(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - return target; -} - -size_t AppearanceFlagCyclopedia::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // optional uint32 cyclopedia_type = 1; - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_cyclopedia_type()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData AppearanceFlagCyclopedia::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - AppearanceFlagCyclopedia::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*AppearanceFlagCyclopedia::GetClassData() const { return &_class_data_; } - - -void AppearanceFlagCyclopedia::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_cyclopedia_type()) { - _this->_internal_set_cyclopedia_type(from._internal_cyclopedia_type()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void AppearanceFlagCyclopedia::CopyFrom(const AppearanceFlagCyclopedia& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool AppearanceFlagCyclopedia::IsInitialized() const { - return true; -} - -void AppearanceFlagCyclopedia::InternalSwap(AppearanceFlagCyclopedia* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - swap(_impl_.cyclopedia_type_, other->_impl_.cyclopedia_type_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata AppearanceFlagCyclopedia::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[24]); -} - -// =================================================================== - -class SpecialMeaningAppearanceIds::_Internal { - public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_gold_coin_id(HasBits* has_bits) { - (*has_bits)[0] |= 1u; - } - static void set_has_platinum_coin_id(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_crystal_coin_id(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_tibia_coin_id(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_stamped_letter_id(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_supply_stash_id(HasBits* has_bits) { - (*has_bits)[0] |= 32u; - } - static void set_has_reward_chest_id(HasBits* has_bits) { - (*has_bits)[0] |= 64u; - } -}; - -SpecialMeaningAppearanceIds::SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) -} -SpecialMeaningAppearanceIds::SpecialMeaningAppearanceIds(const SpecialMeaningAppearanceIds& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - SpecialMeaningAppearanceIds* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){from._impl_._has_bits_} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.gold_coin_id_){} - , decltype(_impl_.platinum_coin_id_){} - , decltype(_impl_.crystal_coin_id_){} - , decltype(_impl_.tibia_coin_id_){} - , decltype(_impl_.stamped_letter_id_){} - , decltype(_impl_.supply_stash_id_){} - , decltype(_impl_.reward_chest_id_){}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.gold_coin_id_, &from._impl_.gold_coin_id_, - static_cast(reinterpret_cast(&_impl_.reward_chest_id_) - - reinterpret_cast(&_impl_.gold_coin_id_)) + sizeof(_impl_.reward_chest_id_)); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) -} - -inline void SpecialMeaningAppearanceIds::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_._has_bits_){} - , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.gold_coin_id_){0u} - , decltype(_impl_.platinum_coin_id_){0u} - , decltype(_impl_.crystal_coin_id_){0u} - , decltype(_impl_.tibia_coin_id_){0u} - , decltype(_impl_.stamped_letter_id_){0u} - , decltype(_impl_.supply_stash_id_){0u} - , decltype(_impl_.reward_chest_id_){0u} - }; -} - -SpecialMeaningAppearanceIds::~SpecialMeaningAppearanceIds() { - // @@protoc_insertion_point(destructor:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void SpecialMeaningAppearanceIds::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); -} - -void SpecialMeaningAppearanceIds::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void SpecialMeaningAppearanceIds::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - ::memset(&_impl_.gold_coin_id_, 0, static_cast( - reinterpret_cast(&_impl_.reward_chest_id_) - - reinterpret_cast(&_impl_.gold_coin_id_)) + sizeof(_impl_.reward_chest_id_)); - } - _impl_._has_bits_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* SpecialMeaningAppearanceIds::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - _Internal::HasBits has_bits{}; - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // optional uint32 gold_coin_id = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _Internal::set_has_gold_coin_id(&has_bits); - _impl_.gold_coin_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 platinum_coin_id = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_platinum_coin_id(&has_bits); - _impl_.platinum_coin_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 crystal_coin_id = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_crystal_coin_id(&has_bits); - _impl_.crystal_coin_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 tibia_coin_id = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - _Internal::set_has_tibia_coin_id(&has_bits); - _impl_.tibia_coin_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 stamped_letter_id = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - _Internal::set_has_stamped_letter_id(&has_bits); - _impl_.stamped_letter_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 supply_stash_id = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - _Internal::set_has_supply_stash_id(&has_bits); - _impl_.supply_stash_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 reward_chest_id = 7; - case 7: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { - _Internal::set_has_reward_chest_id(&has_bits); - _impl_.reward_chest_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - _impl_._has_bits_.Or(has_bits); - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* SpecialMeaningAppearanceIds::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - // optional uint32 gold_coin_id = 1; - if (cached_has_bits & 0x00000001u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_gold_coin_id(), target); - } - - // optional uint32 platinum_coin_id = 2; - if (cached_has_bits & 0x00000002u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_platinum_coin_id(), target); - } - - // optional uint32 crystal_coin_id = 3; - if (cached_has_bits & 0x00000004u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_crystal_coin_id(), target); - } - - // optional uint32 tibia_coin_id = 4; - if (cached_has_bits & 0x00000008u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_tibia_coin_id(), target); - } - - // optional uint32 stamped_letter_id = 5; - if (cached_has_bits & 0x00000010u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_stamped_letter_id(), target); - } - - // optional uint32 supply_stash_id = 6; - if (cached_has_bits & 0x00000020u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_supply_stash_id(), target); - } - - // optional uint32 reward_chest_id = 7; - if (cached_has_bits & 0x00000040u) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(7, this->_internal_reward_chest_id(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - return target; -} - -size_t SpecialMeaningAppearanceIds::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - // optional uint32 gold_coin_id = 1; - if (cached_has_bits & 0x00000001u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_gold_coin_id()); - } - - // optional uint32 platinum_coin_id = 2; - if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_platinum_coin_id()); - } - - // optional uint32 crystal_coin_id = 3; - if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_crystal_coin_id()); - } - - // optional uint32 tibia_coin_id = 4; - if (cached_has_bits & 0x00000008u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_tibia_coin_id()); - } - - // optional uint32 stamped_letter_id = 5; - if (cached_has_bits & 0x00000010u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_stamped_letter_id()); - } - - // optional uint32 supply_stash_id = 6; - if (cached_has_bits & 0x00000020u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_supply_stash_id()); - } - - // optional uint32 reward_chest_id = 7; - if (cached_has_bits & 0x00000040u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_reward_chest_id()); - } - - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SpecialMeaningAppearanceIds::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - SpecialMeaningAppearanceIds::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SpecialMeaningAppearanceIds::GetClassData() const { return &_class_data_; } - - -void SpecialMeaningAppearanceIds::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - if (cached_has_bits & 0x00000001u) { - _this->_impl_.gold_coin_id_ = from._impl_.gold_coin_id_; - } - if (cached_has_bits & 0x00000002u) { - _this->_impl_.platinum_coin_id_ = from._impl_.platinum_coin_id_; - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.crystal_coin_id_ = from._impl_.crystal_coin_id_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.tibia_coin_id_ = from._impl_.tibia_coin_id_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.stamped_letter_id_ = from._impl_.stamped_letter_id_; - } - if (cached_has_bits & 0x00000020u) { - _this->_impl_.supply_stash_id_ = from._impl_.supply_stash_id_; - } - if (cached_has_bits & 0x00000040u) { - _this->_impl_.reward_chest_id_ = from._impl_.reward_chest_id_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void SpecialMeaningAppearanceIds::CopyFrom(const SpecialMeaningAppearanceIds& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool SpecialMeaningAppearanceIds::IsInitialized() const { - return true; -} - -void SpecialMeaningAppearanceIds::InternalSwap(SpecialMeaningAppearanceIds* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(SpecialMeaningAppearanceIds, _impl_.reward_chest_id_) - + sizeof(SpecialMeaningAppearanceIds::_impl_.reward_chest_id_) - - PROTOBUF_FIELD_OFFSET(SpecialMeaningAppearanceIds, _impl_.gold_coin_id_)>( - reinterpret_cast(&_impl_.gold_coin_id_), - reinterpret_cast(&other->_impl_.gold_coin_id_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata SpecialMeaningAppearanceIds::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_appearances_2eproto_getter, &descriptor_table_appearances_2eproto_once, - file_level_metadata_appearances_2eproto[25]); -} - -// @@protoc_insertion_point(namespace_scope) -} // namespace appearances -} // namespace protobuf -} // namespace Canary -PROTOBUF_NAMESPACE_OPEN -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::Coordinate* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::Coordinate >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::Coordinate >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::Appearances* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::Appearances >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::Appearances >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::SpritePhase* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::SpritePhase >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::SpritePhase >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::SpriteAnimation* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::SpriteAnimation >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::SpriteAnimation >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::Box* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::Box >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::Box >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::SpriteInfo* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::SpriteInfo >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::SpriteInfo >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::FrameGroup* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::FrameGroup >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::FrameGroup >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::Appearance* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::Appearance >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::Appearance >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlags* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlags >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlags >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagBank* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagBank >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagBank >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagWrite* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagWrite >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagWrite >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagWriteOnce >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagWriteOnce >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagLight* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagLight >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagLight >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagHeight* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagHeight >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagHeight >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagShift* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagShift >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagShift >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagClothes* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagClothes >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagClothes >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagDefaultAction >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagDefaultAction >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagMarket* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagMarket >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagMarket >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagNPC* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagNPC >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagNPC >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagAutomap* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagAutomap >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagAutomap >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagHook* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagHook >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagHook >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagLenshelp* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagLenshelp >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagLenshelp >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::AppearanceFlagCyclopedia >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::AppearanceFlagCyclopedia >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* -Arena::CreateMaybeMessage< ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds >(arena); -} -PROTOBUF_NAMESPACE_CLOSE - -// @@protoc_insertion_point(global_scope) -#include diff --git a/src/protobuf/appearances.pb.h b/src/protobuf/appearances.pb.h deleted file mode 100644 index 78eb095bbdb..00000000000 --- a/src/protobuf/appearances.pb.h +++ /dev/null @@ -1,12409 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: appearances.proto - -#ifndef GOOGLE_PROTOBUF_INCLUDED_appearances_2eproto -#define GOOGLE_PROTOBUF_INCLUDED_appearances_2eproto - -#include -#include - -#include -#if PROTOBUF_VERSION < 3021000 - #error This file was generated by a newer version of protoc which is - #error incompatible with your Protocol Buffer headers. Please update - #error your headers. -#endif -#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION - #error This file was generated by an older version of protoc which is - #error incompatible with your Protocol Buffer headers. Please - #error regenerate this file with a newer version of protoc. -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include // IWYU pragma: export -#include // IWYU pragma: export -#include -#include -// @@protoc_insertion_point(includes) -#include -#define PROTOBUF_INTERNAL_EXPORT_appearances_2eproto -PROTOBUF_NAMESPACE_OPEN -namespace internal { - class AnyMetadata; -} // namespace internal -PROTOBUF_NAMESPACE_CLOSE - -// Internal implementation detail -- do not use these members. -struct TableStruct_appearances_2eproto { - static const uint32_t offsets[]; -}; -extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_appearances_2eproto; -namespace Canary { - namespace protobuf { - namespace appearances { - class Appearance; - struct AppearanceDefaultTypeInternal; - extern AppearanceDefaultTypeInternal _Appearance_default_instance_; - class AppearanceFlagAutomap; - struct AppearanceFlagAutomapDefaultTypeInternal; - extern AppearanceFlagAutomapDefaultTypeInternal _AppearanceFlagAutomap_default_instance_; - class AppearanceFlagBank; - struct AppearanceFlagBankDefaultTypeInternal; - extern AppearanceFlagBankDefaultTypeInternal _AppearanceFlagBank_default_instance_; - class AppearanceFlagChangedToExpire; - struct AppearanceFlagChangedToExpireDefaultTypeInternal; - extern AppearanceFlagChangedToExpireDefaultTypeInternal _AppearanceFlagChangedToExpire_default_instance_; - class AppearanceFlagClothes; - struct AppearanceFlagClothesDefaultTypeInternal; - extern AppearanceFlagClothesDefaultTypeInternal _AppearanceFlagClothes_default_instance_; - class AppearanceFlagCyclopedia; - struct AppearanceFlagCyclopediaDefaultTypeInternal; - extern AppearanceFlagCyclopediaDefaultTypeInternal _AppearanceFlagCyclopedia_default_instance_; - class AppearanceFlagDefaultAction; - struct AppearanceFlagDefaultActionDefaultTypeInternal; - extern AppearanceFlagDefaultActionDefaultTypeInternal _AppearanceFlagDefaultAction_default_instance_; - class AppearanceFlagHeight; - struct AppearanceFlagHeightDefaultTypeInternal; - extern AppearanceFlagHeightDefaultTypeInternal _AppearanceFlagHeight_default_instance_; - class AppearanceFlagHook; - struct AppearanceFlagHookDefaultTypeInternal; - extern AppearanceFlagHookDefaultTypeInternal _AppearanceFlagHook_default_instance_; - class AppearanceFlagLenshelp; - struct AppearanceFlagLenshelpDefaultTypeInternal; - extern AppearanceFlagLenshelpDefaultTypeInternal _AppearanceFlagLenshelp_default_instance_; - class AppearanceFlagLight; - struct AppearanceFlagLightDefaultTypeInternal; - extern AppearanceFlagLightDefaultTypeInternal _AppearanceFlagLight_default_instance_; - class AppearanceFlagMarket; - struct AppearanceFlagMarketDefaultTypeInternal; - extern AppearanceFlagMarketDefaultTypeInternal _AppearanceFlagMarket_default_instance_; - class AppearanceFlagNPC; - struct AppearanceFlagNPCDefaultTypeInternal; - extern AppearanceFlagNPCDefaultTypeInternal _AppearanceFlagNPC_default_instance_; - class AppearanceFlagShift; - struct AppearanceFlagShiftDefaultTypeInternal; - extern AppearanceFlagShiftDefaultTypeInternal _AppearanceFlagShift_default_instance_; - class AppearanceFlagUpgradeClassification; - struct AppearanceFlagUpgradeClassificationDefaultTypeInternal; - extern AppearanceFlagUpgradeClassificationDefaultTypeInternal _AppearanceFlagUpgradeClassification_default_instance_; - class AppearanceFlagWrite; - struct AppearanceFlagWriteDefaultTypeInternal; - extern AppearanceFlagWriteDefaultTypeInternal _AppearanceFlagWrite_default_instance_; - class AppearanceFlagWriteOnce; - struct AppearanceFlagWriteOnceDefaultTypeInternal; - extern AppearanceFlagWriteOnceDefaultTypeInternal _AppearanceFlagWriteOnce_default_instance_; - class AppearanceFlags; - struct AppearanceFlagsDefaultTypeInternal; - extern AppearanceFlagsDefaultTypeInternal _AppearanceFlags_default_instance_; - class Appearances; - struct AppearancesDefaultTypeInternal; - extern AppearancesDefaultTypeInternal _Appearances_default_instance_; - class Box; - struct BoxDefaultTypeInternal; - extern BoxDefaultTypeInternal _Box_default_instance_; - class Coordinate; - struct CoordinateDefaultTypeInternal; - extern CoordinateDefaultTypeInternal _Coordinate_default_instance_; - class FrameGroup; - struct FrameGroupDefaultTypeInternal; - extern FrameGroupDefaultTypeInternal _FrameGroup_default_instance_; - class SpecialMeaningAppearanceIds; - struct SpecialMeaningAppearanceIdsDefaultTypeInternal; - extern SpecialMeaningAppearanceIdsDefaultTypeInternal _SpecialMeaningAppearanceIds_default_instance_; - class SpriteAnimation; - struct SpriteAnimationDefaultTypeInternal; - extern SpriteAnimationDefaultTypeInternal _SpriteAnimation_default_instance_; - class SpriteInfo; - struct SpriteInfoDefaultTypeInternal; - extern SpriteInfoDefaultTypeInternal _SpriteInfo_default_instance_; - class SpritePhase; - struct SpritePhaseDefaultTypeInternal; - extern SpritePhaseDefaultTypeInternal _SpritePhase_default_instance_; - } // namespace appearances - } // namespace protobuf -} // namespace Canary -PROTOBUF_NAMESPACE_OPEN -template <> -::Canary::protobuf::appearances::Appearance* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Appearance>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagAutomap* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagAutomap>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagBank* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagBank>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagChangedToExpire>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagClothes* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagClothes>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagCyclopedia* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagCyclopedia>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagDefaultAction* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagDefaultAction>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagHeight* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHeight>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagHook* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHook>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagLenshelp* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLenshelp>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagLight* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLight>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagMarket* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagMarket>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagNPC* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagNPC>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagShift* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagShift>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagWrite* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWrite>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlagWriteOnce* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWriteOnce>(Arena*); -template <> -::Canary::protobuf::appearances::AppearanceFlags* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlags>(Arena*); -template <> -::Canary::protobuf::appearances::Appearances* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Appearances>(Arena*); -template <> -::Canary::protobuf::appearances::Box* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Box>(Arena*); -template <> -::Canary::protobuf::appearances::Coordinate* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::Coordinate>(Arena*); -template <> -::Canary::protobuf::appearances::FrameGroup* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::FrameGroup>(Arena*); -template <> -::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpecialMeaningAppearanceIds>(Arena*); -template <> -::Canary::protobuf::appearances::SpriteAnimation* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpriteAnimation>(Arena*); -template <> -::Canary::protobuf::appearances::SpriteInfo* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpriteInfo>(Arena*); -template <> -::Canary::protobuf::appearances::SpritePhase* Arena::CreateMaybeMessage<::Canary::protobuf::appearances::SpritePhase>(Arena*); -PROTOBUF_NAMESPACE_CLOSE -namespace Canary { - namespace protobuf { - namespace appearances { - - enum PLAYER_ACTION : int { - PLAYER_ACTION_NONE = 0, - PLAYER_ACTION_LOOK = 1, - PLAYER_ACTION_USE = 2, - PLAYER_ACTION_OPEN = 3, - PLAYER_ACTION_AUTOWALK_HIGHLIGHT = 4 - }; - bool PLAYER_ACTION_IsValid(int value); - constexpr PLAYER_ACTION PLAYER_ACTION_MIN = PLAYER_ACTION_NONE; - constexpr PLAYER_ACTION PLAYER_ACTION_MAX = PLAYER_ACTION_AUTOWALK_HIGHLIGHT; - constexpr int PLAYER_ACTION_ARRAYSIZE = PLAYER_ACTION_MAX + 1; - - const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_ACTION_descriptor(); - template - inline const std::string &PLAYER_ACTION_Name(T enum_t_value) { - static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function PLAYER_ACTION_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - PLAYER_ACTION_descriptor(), enum_t_value - ); - } - inline bool PLAYER_ACTION_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PLAYER_ACTION* value - ) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - PLAYER_ACTION_descriptor(), name, value - ); - } - enum ITEM_CATEGORY : int { - ITEM_CATEGORY_ARMORS = 1, - ITEM_CATEGORY_AMULETS = 2, - ITEM_CATEGORY_BOOTS = 3, - ITEM_CATEGORY_CONTAINERS = 4, - ITEM_CATEGORY_DECORATION = 5, - ITEM_CATEGORY_FOOD = 6, - ITEM_CATEGORY_HELMETS_HATS = 7, - ITEM_CATEGORY_LEGS = 8, - ITEM_CATEGORY_OTHERS = 9, - ITEM_CATEGORY_POTIONS = 10, - ITEM_CATEGORY_RINGS = 11, - ITEM_CATEGORY_RUNES = 12, - ITEM_CATEGORY_SHIELDS = 13, - ITEM_CATEGORY_TOOLS = 14, - ITEM_CATEGORY_VALUABLES = 15, - ITEM_CATEGORY_AMMUNITION = 16, - ITEM_CATEGORY_AXES = 17, - ITEM_CATEGORY_CLUBS = 18, - ITEM_CATEGORY_DISTANCE_WEAPONS = 19, - ITEM_CATEGORY_SWORDS = 20, - ITEM_CATEGORY_WANDS_RODS = 21, - ITEM_CATEGORY_PREMIUM_SCROLLS = 22, - ITEM_CATEGORY_TIBIA_COINS = 23, - ITEM_CATEGORY_CREATURE_PRODUCTS = 24, - ITEM_CATEGORY_QUIVER = 25 - }; - bool ITEM_CATEGORY_IsValid(int value); - constexpr ITEM_CATEGORY ITEM_CATEGORY_MIN = ITEM_CATEGORY_ARMORS; - constexpr ITEM_CATEGORY ITEM_CATEGORY_MAX = ITEM_CATEGORY_QUIVER; - constexpr int ITEM_CATEGORY_ARRAYSIZE = ITEM_CATEGORY_MAX + 1; - - const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ITEM_CATEGORY_descriptor(); - template - inline const std::string &ITEM_CATEGORY_Name(T enum_t_value) { - static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function ITEM_CATEGORY_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ITEM_CATEGORY_descriptor(), enum_t_value - ); - } - inline bool ITEM_CATEGORY_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ITEM_CATEGORY* value - ) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ITEM_CATEGORY_descriptor(), name, value - ); - } - enum PLAYER_PROFESSION : int { - PLAYER_PROFESSION_ANY = -1, - PLAYER_PROFESSION_NONE = 0, - PLAYER_PROFESSION_KNIGHT = 1, - PLAYER_PROFESSION_PALADIN = 2, - PLAYER_PROFESSION_SORCERER = 3, - PLAYER_PROFESSION_DRUID = 4, - PLAYER_PROFESSION_PROMOTED = 10 - }; - bool PLAYER_PROFESSION_IsValid(int value); - constexpr PLAYER_PROFESSION PLAYER_PROFESSION_MIN = PLAYER_PROFESSION_ANY; - constexpr PLAYER_PROFESSION PLAYER_PROFESSION_MAX = PLAYER_PROFESSION_PROMOTED; - constexpr int PLAYER_PROFESSION_ARRAYSIZE = PLAYER_PROFESSION_MAX + 1; - - const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PLAYER_PROFESSION_descriptor(); - template - inline const std::string &PLAYER_PROFESSION_Name(T enum_t_value) { - static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function PLAYER_PROFESSION_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - PLAYER_PROFESSION_descriptor(), enum_t_value - ); - } - inline bool PLAYER_PROFESSION_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PLAYER_PROFESSION* value - ) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - PLAYER_PROFESSION_descriptor(), name, value - ); - } - enum ANIMATION_LOOP_TYPE : int { - ANIMATION_LOOP_TYPE_PINGPONG = -1, - ANIMATION_LOOP_TYPE_INFINITE = 0, - ANIMATION_LOOP_TYPE_COUNTED = 1 - }; - bool ANIMATION_LOOP_TYPE_IsValid(int value); - constexpr ANIMATION_LOOP_TYPE ANIMATION_LOOP_TYPE_MIN = ANIMATION_LOOP_TYPE_PINGPONG; - constexpr ANIMATION_LOOP_TYPE ANIMATION_LOOP_TYPE_MAX = ANIMATION_LOOP_TYPE_COUNTED; - constexpr int ANIMATION_LOOP_TYPE_ARRAYSIZE = ANIMATION_LOOP_TYPE_MAX + 1; - - const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ANIMATION_LOOP_TYPE_descriptor(); - template - inline const std::string &ANIMATION_LOOP_TYPE_Name(T enum_t_value) { - static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function ANIMATION_LOOP_TYPE_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ANIMATION_LOOP_TYPE_descriptor(), enum_t_value - ); - } - inline bool ANIMATION_LOOP_TYPE_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ANIMATION_LOOP_TYPE* value - ) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ANIMATION_LOOP_TYPE_descriptor(), name, value - ); - } - enum HOOK_TYPE : int { - HOOK_TYPE_SOUTH = 1, - HOOK_TYPE_EAST = 2 - }; - bool HOOK_TYPE_IsValid(int value); - constexpr HOOK_TYPE HOOK_TYPE_MIN = HOOK_TYPE_SOUTH; - constexpr HOOK_TYPE HOOK_TYPE_MAX = HOOK_TYPE_EAST; - constexpr int HOOK_TYPE_ARRAYSIZE = HOOK_TYPE_MAX + 1; - - const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* HOOK_TYPE_descriptor(); - template - inline const std::string &HOOK_TYPE_Name(T enum_t_value) { - static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function HOOK_TYPE_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - HOOK_TYPE_descriptor(), enum_t_value - ); - } - inline bool HOOK_TYPE_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, HOOK_TYPE* value - ) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - HOOK_TYPE_descriptor(), name, value - ); - } - enum FIXED_FRAME_GROUP : int { - FIXED_FRAME_GROUP_OUTFIT_IDLE = 0, - FIXED_FRAME_GROUP_OUTFIT_MOVING = 1, - FIXED_FRAME_GROUP_OBJECT_INITIAL = 2 - }; - bool FIXED_FRAME_GROUP_IsValid(int value); - constexpr FIXED_FRAME_GROUP FIXED_FRAME_GROUP_MIN = FIXED_FRAME_GROUP_OUTFIT_IDLE; - constexpr FIXED_FRAME_GROUP FIXED_FRAME_GROUP_MAX = FIXED_FRAME_GROUP_OBJECT_INITIAL; - constexpr int FIXED_FRAME_GROUP_ARRAYSIZE = FIXED_FRAME_GROUP_MAX + 1; - - const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FIXED_FRAME_GROUP_descriptor(); - template - inline const std::string &FIXED_FRAME_GROUP_Name(T enum_t_value) { - static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function FIXED_FRAME_GROUP_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - FIXED_FRAME_GROUP_descriptor(), enum_t_value - ); - } - inline bool FIXED_FRAME_GROUP_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FIXED_FRAME_GROUP* value - ) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - FIXED_FRAME_GROUP_descriptor(), name, value - ); - } - // =================================================================== - - class Coordinate final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Coordinate) */ { - public: - inline Coordinate() : - Coordinate(nullptr) { } - ~Coordinate() override; - explicit PROTOBUF_CONSTEXPR Coordinate(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Coordinate(const Coordinate &from); - Coordinate(Coordinate &&from) noexcept - : - Coordinate() { - *this = ::std::move(from); - } - - inline Coordinate &operator=(const Coordinate &from) { - CopyFrom(from); - return *this; - } - inline Coordinate &operator=(Coordinate &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Coordinate &default_instance() { - return *internal_default_instance(); - } - static inline const Coordinate* internal_default_instance() { - return reinterpret_cast( - &_Coordinate_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 0; - - friend void swap(Coordinate &a, Coordinate &b) { - a.Swap(&b); - } - inline void Swap(Coordinate* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Coordinate* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Coordinate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Coordinate &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const Coordinate &from) { - Coordinate::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Coordinate* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Coordinate"; - } - - protected: - explicit Coordinate(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kXFieldNumber = 1, - kYFieldNumber = 2, - kZFieldNumber = 3, - }; - // optional uint32 x = 1; - bool has_x() const; - - private: - bool _internal_has_x() const; - - public: - void clear_x(); - uint32_t x() const; - void set_x(uint32_t value); - - private: - uint32_t _internal_x() const; - void _internal_set_x(uint32_t value); - - public: - // optional uint32 y = 2; - bool has_y() const; - - private: - bool _internal_has_y() const; - - public: - void clear_y(); - uint32_t y() const; - void set_y(uint32_t value); - - private: - uint32_t _internal_y() const; - void _internal_set_y(uint32_t value); - - public: - // optional uint32 z = 3; - bool has_z() const; - - private: - bool _internal_has_z() const; - - public: - void clear_z(); - uint32_t z() const; - void set_z(uint32_t value); - - private: - uint32_t _internal_z() const; - void _internal_set_z(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Coordinate) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t x_; - uint32_t y_; - uint32_t z_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class Appearances final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Appearances) */ { - public: - inline Appearances() : - Appearances(nullptr) { } - ~Appearances() override; - explicit PROTOBUF_CONSTEXPR Appearances(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Appearances(const Appearances &from); - Appearances(Appearances &&from) noexcept - : - Appearances() { - *this = ::std::move(from); - } - - inline Appearances &operator=(const Appearances &from) { - CopyFrom(from); - return *this; - } - inline Appearances &operator=(Appearances &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Appearances &default_instance() { - return *internal_default_instance(); - } - static inline const Appearances* internal_default_instance() { - return reinterpret_cast( - &_Appearances_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 1; - - friend void swap(Appearances &a, Appearances &b) { - a.Swap(&b); - } - inline void Swap(Appearances* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Appearances* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Appearances* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Appearances &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const Appearances &from) { - Appearances::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Appearances* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Appearances"; - } - - protected: - explicit Appearances(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kObjectFieldNumber = 1, - kOutfitFieldNumber = 2, - kEffectFieldNumber = 3, - kMissileFieldNumber = 4, - kSpecialMeaningAppearanceIdsFieldNumber = 5, - }; - // repeated .Canary.protobuf.appearances.Appearance object = 1; - int object_size() const; - - private: - int _internal_object_size() const; - - public: - void clear_object(); - ::Canary::protobuf::appearances::Appearance* mutable_object(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - mutable_object(); - - private: - const ::Canary::protobuf::appearances::Appearance &_internal_object(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_object(); - - public: - const ::Canary::protobuf::appearances::Appearance &object(int index) const; - ::Canary::protobuf::appearances::Appearance* add_object(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - object() const; - - // repeated .Canary.protobuf.appearances.Appearance outfit = 2; - int outfit_size() const; - - private: - int _internal_outfit_size() const; - - public: - void clear_outfit(); - ::Canary::protobuf::appearances::Appearance* mutable_outfit(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - mutable_outfit(); - - private: - const ::Canary::protobuf::appearances::Appearance &_internal_outfit(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_outfit(); - - public: - const ::Canary::protobuf::appearances::Appearance &outfit(int index) const; - ::Canary::protobuf::appearances::Appearance* add_outfit(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - outfit() const; - - // repeated .Canary.protobuf.appearances.Appearance effect = 3; - int effect_size() const; - - private: - int _internal_effect_size() const; - - public: - void clear_effect(); - ::Canary::protobuf::appearances::Appearance* mutable_effect(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - mutable_effect(); - - private: - const ::Canary::protobuf::appearances::Appearance &_internal_effect(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_effect(); - - public: - const ::Canary::protobuf::appearances::Appearance &effect(int index) const; - ::Canary::protobuf::appearances::Appearance* add_effect(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - effect() const; - - // repeated .Canary.protobuf.appearances.Appearance missile = 4; - int missile_size() const; - - private: - int _internal_missile_size() const; - - public: - void clear_missile(); - ::Canary::protobuf::appearances::Appearance* mutable_missile(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - mutable_missile(); - - private: - const ::Canary::protobuf::appearances::Appearance &_internal_missile(int index) const; - ::Canary::protobuf::appearances::Appearance* _internal_add_missile(); - - public: - const ::Canary::protobuf::appearances::Appearance &missile(int index) const; - ::Canary::protobuf::appearances::Appearance* add_missile(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - missile() const; - - // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; - bool has_special_meaning_appearance_ids() const; - - private: - bool _internal_has_special_meaning_appearance_ids() const; - - public: - void clear_special_meaning_appearance_ids(); - const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &special_meaning_appearance_ids() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* release_special_meaning_appearance_ids(); - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* mutable_special_meaning_appearance_ids(); - void set_allocated_special_meaning_appearance_ids(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids); - - private: - const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &_internal_special_meaning_appearance_ids() const; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* _internal_mutable_special_meaning_appearance_ids(); - - public: - void unsafe_arena_set_allocated_special_meaning_appearance_ids( - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids - ); - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* unsafe_arena_release_special_meaning_appearance_ids(); - - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Appearances) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> object_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> outfit_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> effect_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> missile_; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class SpritePhase final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpritePhase) */ { - public: - inline SpritePhase() : - SpritePhase(nullptr) { } - ~SpritePhase() override; - explicit PROTOBUF_CONSTEXPR SpritePhase(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpritePhase(const SpritePhase &from); - SpritePhase(SpritePhase &&from) noexcept - : - SpritePhase() { - *this = ::std::move(from); - } - - inline SpritePhase &operator=(const SpritePhase &from) { - CopyFrom(from); - return *this; - } - inline SpritePhase &operator=(SpritePhase &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpritePhase &default_instance() { - return *internal_default_instance(); - } - static inline const SpritePhase* internal_default_instance() { - return reinterpret_cast( - &_SpritePhase_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 2; - - friend void swap(SpritePhase &a, SpritePhase &b) { - a.Swap(&b); - } - inline void Swap(SpritePhase* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpritePhase* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpritePhase* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpritePhase &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const SpritePhase &from) { - SpritePhase::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpritePhase* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpritePhase"; - } - - protected: - explicit SpritePhase(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kDurationMinFieldNumber = 1, - kDurationMaxFieldNumber = 2, - }; - // optional uint32 duration_min = 1; - bool has_duration_min() const; - - private: - bool _internal_has_duration_min() const; - - public: - void clear_duration_min(); - uint32_t duration_min() const; - void set_duration_min(uint32_t value); - - private: - uint32_t _internal_duration_min() const; - void _internal_set_duration_min(uint32_t value); - - public: - // optional uint32 duration_max = 2; - bool has_duration_max() const; - - private: - bool _internal_has_duration_max() const; - - public: - void clear_duration_max(); - uint32_t duration_max() const; - void set_duration_max(uint32_t value); - - private: - uint32_t _internal_duration_max() const; - void _internal_set_duration_max(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpritePhase) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t duration_min_; - uint32_t duration_max_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class SpriteAnimation final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpriteAnimation) */ { - public: - inline SpriteAnimation() : - SpriteAnimation(nullptr) { } - ~SpriteAnimation() override; - explicit PROTOBUF_CONSTEXPR SpriteAnimation(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpriteAnimation(const SpriteAnimation &from); - SpriteAnimation(SpriteAnimation &&from) noexcept - : - SpriteAnimation() { - *this = ::std::move(from); - } - - inline SpriteAnimation &operator=(const SpriteAnimation &from) { - CopyFrom(from); - return *this; - } - inline SpriteAnimation &operator=(SpriteAnimation &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpriteAnimation &default_instance() { - return *internal_default_instance(); - } - static inline const SpriteAnimation* internal_default_instance() { - return reinterpret_cast( - &_SpriteAnimation_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 3; - - friend void swap(SpriteAnimation &a, SpriteAnimation &b) { - a.Swap(&b); - } - inline void Swap(SpriteAnimation* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpriteAnimation* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpriteAnimation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpriteAnimation &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const SpriteAnimation &from) { - SpriteAnimation::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpriteAnimation* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpriteAnimation"; - } - - protected: - explicit SpriteAnimation(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSpritePhaseFieldNumber = 6, - kDefaultStartPhaseFieldNumber = 1, - kSynchronizedFieldNumber = 2, - kRandomStartPhaseFieldNumber = 3, - kLoopCountFieldNumber = 5, - kLoopTypeFieldNumber = 4, - }; - // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; - int sprite_phase_size() const; - - private: - int _internal_sprite_phase_size() const; - - public: - void clear_sprite_phase(); - ::Canary::protobuf::appearances::SpritePhase* mutable_sprite_phase(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase>* - mutable_sprite_phase(); - - private: - const ::Canary::protobuf::appearances::SpritePhase &_internal_sprite_phase(int index) const; - ::Canary::protobuf::appearances::SpritePhase* _internal_add_sprite_phase(); - - public: - const ::Canary::protobuf::appearances::SpritePhase &sprite_phase(int index) const; - ::Canary::protobuf::appearances::SpritePhase* add_sprite_phase(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase> & - sprite_phase() const; - - // optional uint32 default_start_phase = 1; - bool has_default_start_phase() const; - - private: - bool _internal_has_default_start_phase() const; - - public: - void clear_default_start_phase(); - uint32_t default_start_phase() const; - void set_default_start_phase(uint32_t value); - - private: - uint32_t _internal_default_start_phase() const; - void _internal_set_default_start_phase(uint32_t value); - - public: - // optional bool synchronized = 2; - bool has_synchronized() const; - - private: - bool _internal_has_synchronized() const; - - public: - void clear_synchronized(); - bool synchronized() const; - void set_synchronized(bool value); - - private: - bool _internal_synchronized() const; - void _internal_set_synchronized(bool value); - - public: - // optional bool random_start_phase = 3; - bool has_random_start_phase() const; - - private: - bool _internal_has_random_start_phase() const; - - public: - void clear_random_start_phase(); - bool random_start_phase() const; - void set_random_start_phase(bool value); - - private: - bool _internal_random_start_phase() const; - void _internal_set_random_start_phase(bool value); - - public: - // optional uint32 loop_count = 5; - bool has_loop_count() const; - - private: - bool _internal_has_loop_count() const; - - public: - void clear_loop_count(); - uint32_t loop_count() const; - void set_loop_count(uint32_t value); - - private: - uint32_t _internal_loop_count() const; - void _internal_set_loop_count(uint32_t value); - - public: - // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; - bool has_loop_type() const; - - private: - bool _internal_has_loop_type() const; - - public: - void clear_loop_type(); - ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE loop_type() const; - void set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value); - - private: - ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE _internal_loop_type() const; - void _internal_set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpriteAnimation) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase> sprite_phase_; - uint32_t default_start_phase_; - bool synchronized_; - bool random_start_phase_; - uint32_t loop_count_; - int loop_type_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class Box final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Box) */ { - public: - inline Box() : - Box(nullptr) { } - ~Box() override; - explicit PROTOBUF_CONSTEXPR Box(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Box(const Box &from); - Box(Box &&from) noexcept - : - Box() { - *this = ::std::move(from); - } - - inline Box &operator=(const Box &from) { - CopyFrom(from); - return *this; - } - inline Box &operator=(Box &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Box &default_instance() { - return *internal_default_instance(); - } - static inline const Box* internal_default_instance() { - return reinterpret_cast( - &_Box_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 4; - - friend void swap(Box &a, Box &b) { - a.Swap(&b); - } - inline void Swap(Box* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Box* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Box* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Box &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const Box &from) { - Box::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Box* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Box"; - } - - protected: - explicit Box(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kXFieldNumber = 1, - kYFieldNumber = 2, - kWidthFieldNumber = 3, - kHeightFieldNumber = 4, - }; - // optional uint32 x = 1; - bool has_x() const; - - private: - bool _internal_has_x() const; - - public: - void clear_x(); - uint32_t x() const; - void set_x(uint32_t value); - - private: - uint32_t _internal_x() const; - void _internal_set_x(uint32_t value); - - public: - // optional uint32 y = 2; - bool has_y() const; - - private: - bool _internal_has_y() const; - - public: - void clear_y(); - uint32_t y() const; - void set_y(uint32_t value); - - private: - uint32_t _internal_y() const; - void _internal_set_y(uint32_t value); - - public: - // optional uint32 width = 3; - bool has_width() const; - - private: - bool _internal_has_width() const; - - public: - void clear_width(); - uint32_t width() const; - void set_width(uint32_t value); - - private: - uint32_t _internal_width() const; - void _internal_set_width(uint32_t value); - - public: - // optional uint32 height = 4; - bool has_height() const; - - private: - bool _internal_has_height() const; - - public: - void clear_height(); - uint32_t height() const; - void set_height(uint32_t value); - - private: - uint32_t _internal_height() const; - void _internal_set_height(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Box) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t x_; - uint32_t y_; - uint32_t width_; - uint32_t height_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class SpriteInfo final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpriteInfo) */ { - public: - inline SpriteInfo() : - SpriteInfo(nullptr) { } - ~SpriteInfo() override; - explicit PROTOBUF_CONSTEXPR SpriteInfo(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpriteInfo(const SpriteInfo &from); - SpriteInfo(SpriteInfo &&from) noexcept - : - SpriteInfo() { - *this = ::std::move(from); - } - - inline SpriteInfo &operator=(const SpriteInfo &from) { - CopyFrom(from); - return *this; - } - inline SpriteInfo &operator=(SpriteInfo &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpriteInfo &default_instance() { - return *internal_default_instance(); - } - static inline const SpriteInfo* internal_default_instance() { - return reinterpret_cast( - &_SpriteInfo_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 5; - - friend void swap(SpriteInfo &a, SpriteInfo &b) { - a.Swap(&b); - } - inline void Swap(SpriteInfo* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpriteInfo* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpriteInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpriteInfo &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const SpriteInfo &from) { - SpriteInfo::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpriteInfo* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpriteInfo"; - } - - protected: - explicit SpriteInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSpriteIdFieldNumber = 5, - kBoundingBoxPerDirectionFieldNumber = 9, - kAnimationFieldNumber = 6, - kPatternWidthFieldNumber = 1, - kPatternHeightFieldNumber = 2, - kPatternDepthFieldNumber = 3, - kLayersFieldNumber = 4, - kBoundingSquareFieldNumber = 7, - kIsOpaqueFieldNumber = 8, - }; - // repeated uint32 sprite_id = 5; - int sprite_id_size() const; - - private: - int _internal_sprite_id_size() const; - - public: - void clear_sprite_id(); - - private: - uint32_t _internal_sprite_id(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField & - _internal_sprite_id() const; - void _internal_add_sprite_id(uint32_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField* - _internal_mutable_sprite_id(); - - public: - uint32_t sprite_id(int index) const; - void set_sprite_id(int index, uint32_t value); - void add_sprite_id(uint32_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField & - sprite_id() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField* - mutable_sprite_id(); - - // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; - int bounding_box_per_direction_size() const; - - private: - int _internal_bounding_box_per_direction_size() const; - - public: - void clear_bounding_box_per_direction(); - ::Canary::protobuf::appearances::Box* mutable_bounding_box_per_direction(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box>* - mutable_bounding_box_per_direction(); - - private: - const ::Canary::protobuf::appearances::Box &_internal_bounding_box_per_direction(int index) const; - ::Canary::protobuf::appearances::Box* _internal_add_bounding_box_per_direction(); - - public: - const ::Canary::protobuf::appearances::Box &bounding_box_per_direction(int index) const; - ::Canary::protobuf::appearances::Box* add_bounding_box_per_direction(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box> & - bounding_box_per_direction() const; - - // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; - bool has_animation() const; - - private: - bool _internal_has_animation() const; - - public: - void clear_animation(); - const ::Canary::protobuf::appearances::SpriteAnimation &animation() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpriteAnimation* release_animation(); - ::Canary::protobuf::appearances::SpriteAnimation* mutable_animation(); - void set_allocated_animation(::Canary::protobuf::appearances::SpriteAnimation* animation); - - private: - const ::Canary::protobuf::appearances::SpriteAnimation &_internal_animation() const; - ::Canary::protobuf::appearances::SpriteAnimation* _internal_mutable_animation(); - - public: - void unsafe_arena_set_allocated_animation( - ::Canary::protobuf::appearances::SpriteAnimation* animation - ); - ::Canary::protobuf::appearances::SpriteAnimation* unsafe_arena_release_animation(); - - // optional uint32 pattern_width = 1; - bool has_pattern_width() const; - - private: - bool _internal_has_pattern_width() const; - - public: - void clear_pattern_width(); - uint32_t pattern_width() const; - void set_pattern_width(uint32_t value); - - private: - uint32_t _internal_pattern_width() const; - void _internal_set_pattern_width(uint32_t value); - - public: - // optional uint32 pattern_height = 2; - bool has_pattern_height() const; - - private: - bool _internal_has_pattern_height() const; - - public: - void clear_pattern_height(); - uint32_t pattern_height() const; - void set_pattern_height(uint32_t value); - - private: - uint32_t _internal_pattern_height() const; - void _internal_set_pattern_height(uint32_t value); - - public: - // optional uint32 pattern_depth = 3; - bool has_pattern_depth() const; - - private: - bool _internal_has_pattern_depth() const; - - public: - void clear_pattern_depth(); - uint32_t pattern_depth() const; - void set_pattern_depth(uint32_t value); - - private: - uint32_t _internal_pattern_depth() const; - void _internal_set_pattern_depth(uint32_t value); - - public: - // optional uint32 layers = 4; - bool has_layers() const; - - private: - bool _internal_has_layers() const; - - public: - void clear_layers(); - uint32_t layers() const; - void set_layers(uint32_t value); - - private: - uint32_t _internal_layers() const; - void _internal_set_layers(uint32_t value); - - public: - // optional uint32 bounding_square = 7; - bool has_bounding_square() const; - - private: - bool _internal_has_bounding_square() const; - - public: - void clear_bounding_square(); - uint32_t bounding_square() const; - void set_bounding_square(uint32_t value); - - private: - uint32_t _internal_bounding_square() const; - void _internal_set_bounding_square(uint32_t value); - - public: - // optional bool is_opaque = 8; - bool has_is_opaque() const; - - private: - bool _internal_has_is_opaque() const; - - public: - void clear_is_opaque(); - bool is_opaque() const; - void set_is_opaque(bool value); - - private: - bool _internal_is_opaque() const; - void _internal_set_is_opaque(bool value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpriteInfo) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField sprite_id_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box> bounding_box_per_direction_; - ::Canary::protobuf::appearances::SpriteAnimation* animation_; - uint32_t pattern_width_; - uint32_t pattern_height_; - uint32_t pattern_depth_; - uint32_t layers_; - uint32_t bounding_square_; - bool is_opaque_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class FrameGroup final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.FrameGroup) */ { - public: - inline FrameGroup() : - FrameGroup(nullptr) { } - ~FrameGroup() override; - explicit PROTOBUF_CONSTEXPR FrameGroup(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - FrameGroup(const FrameGroup &from); - FrameGroup(FrameGroup &&from) noexcept - : - FrameGroup() { - *this = ::std::move(from); - } - - inline FrameGroup &operator=(const FrameGroup &from) { - CopyFrom(from); - return *this; - } - inline FrameGroup &operator=(FrameGroup &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const FrameGroup &default_instance() { - return *internal_default_instance(); - } - static inline const FrameGroup* internal_default_instance() { - return reinterpret_cast( - &_FrameGroup_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 6; - - friend void swap(FrameGroup &a, FrameGroup &b) { - a.Swap(&b); - } - inline void Swap(FrameGroup* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(FrameGroup* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - FrameGroup* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FrameGroup &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const FrameGroup &from) { - FrameGroup::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FrameGroup* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.FrameGroup"; - } - - protected: - explicit FrameGroup(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSpriteInfoFieldNumber = 3, - kFixedFrameGroupFieldNumber = 1, - kIdFieldNumber = 2, - }; - // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; - bool has_sprite_info() const; - - private: - bool _internal_has_sprite_info() const; - - public: - void clear_sprite_info(); - const ::Canary::protobuf::appearances::SpriteInfo &sprite_info() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::SpriteInfo* release_sprite_info(); - ::Canary::protobuf::appearances::SpriteInfo* mutable_sprite_info(); - void set_allocated_sprite_info(::Canary::protobuf::appearances::SpriteInfo* sprite_info); - - private: - const ::Canary::protobuf::appearances::SpriteInfo &_internal_sprite_info() const; - ::Canary::protobuf::appearances::SpriteInfo* _internal_mutable_sprite_info(); - - public: - void unsafe_arena_set_allocated_sprite_info( - ::Canary::protobuf::appearances::SpriteInfo* sprite_info - ); - ::Canary::protobuf::appearances::SpriteInfo* unsafe_arena_release_sprite_info(); - - // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; - bool has_fixed_frame_group() const; - - private: - bool _internal_has_fixed_frame_group() const; - - public: - void clear_fixed_frame_group(); - ::Canary::protobuf::appearances::FIXED_FRAME_GROUP fixed_frame_group() const; - void set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value); - - private: - ::Canary::protobuf::appearances::FIXED_FRAME_GROUP _internal_fixed_frame_group() const; - void _internal_set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value); - - public: - // optional uint32 id = 2; - bool has_id() const; - - private: - bool _internal_has_id() const; - - public: - void clear_id(); - uint32_t id() const; - void set_id(uint32_t value); - - private: - uint32_t _internal_id() const; - void _internal_set_id(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.FrameGroup) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::Canary::protobuf::appearances::SpriteInfo* sprite_info_; - int fixed_frame_group_; - uint32_t id_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class Appearance final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.Appearance) */ { - public: - inline Appearance() : - Appearance(nullptr) { } - ~Appearance() override; - explicit PROTOBUF_CONSTEXPR Appearance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Appearance(const Appearance &from); - Appearance(Appearance &&from) noexcept - : - Appearance() { - *this = ::std::move(from); - } - - inline Appearance &operator=(const Appearance &from) { - CopyFrom(from); - return *this; - } - inline Appearance &operator=(Appearance &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Appearance &default_instance() { - return *internal_default_instance(); - } - static inline const Appearance* internal_default_instance() { - return reinterpret_cast( - &_Appearance_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 7; - - friend void swap(Appearance &a, Appearance &b) { - a.Swap(&b); - } - inline void Swap(Appearance* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Appearance* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Appearance* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Appearance &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const Appearance &from) { - Appearance::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Appearance* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.Appearance"; - } - - protected: - explicit Appearance(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kFrameGroupFieldNumber = 2, - kNameFieldNumber = 4, - kDescriptionFieldNumber = 5, - kFlagsFieldNumber = 3, - kIdFieldNumber = 1, - }; - // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; - int frame_group_size() const; - - private: - int _internal_frame_group_size() const; - - public: - void clear_frame_group(); - ::Canary::protobuf::appearances::FrameGroup* mutable_frame_group(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup>* - mutable_frame_group(); - - private: - const ::Canary::protobuf::appearances::FrameGroup &_internal_frame_group(int index) const; - ::Canary::protobuf::appearances::FrameGroup* _internal_add_frame_group(); - - public: - const ::Canary::protobuf::appearances::FrameGroup &frame_group(int index) const; - ::Canary::protobuf::appearances::FrameGroup* add_frame_group(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup> & - frame_group() const; - - // optional bytes name = 4; - bool has_name() const; - - private: - bool _internal_has_name() const; - - public: - void clear_name(); - const std::string &name() const; - template - void set_name(ArgT0 &&arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - - private: - const std::string &_internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string &value); - std::string* _internal_mutable_name(); - - public: - // optional bytes description = 5; - bool has_description() const; - - private: - bool _internal_has_description() const; - - public: - void clear_description(); - const std::string &description() const; - template - void set_description(ArgT0 &&arg0, ArgT... args); - std::string* mutable_description(); - PROTOBUF_NODISCARD std::string* release_description(); - void set_allocated_description(std::string* description); - - private: - const std::string &_internal_description() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_description(const std::string &value); - std::string* _internal_mutable_description(); - - public: - // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; - bool has_flags() const; - - private: - bool _internal_has_flags() const; - - public: - void clear_flags(); - const ::Canary::protobuf::appearances::AppearanceFlags &flags() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlags* release_flags(); - ::Canary::protobuf::appearances::AppearanceFlags* mutable_flags(); - void set_allocated_flags(::Canary::protobuf::appearances::AppearanceFlags* flags); - - private: - const ::Canary::protobuf::appearances::AppearanceFlags &_internal_flags() const; - ::Canary::protobuf::appearances::AppearanceFlags* _internal_mutable_flags(); - - public: - void unsafe_arena_set_allocated_flags( - ::Canary::protobuf::appearances::AppearanceFlags* flags - ); - ::Canary::protobuf::appearances::AppearanceFlags* unsafe_arena_release_flags(); - - // optional uint32 id = 1; - bool has_id() const; - - private: - bool _internal_has_id() const; - - public: - void clear_id(); - uint32_t id() const; - void set_id(uint32_t value); - - private: - uint32_t _internal_id() const; - void _internal_set_id(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.Appearance) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup> frame_group_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr description_; - ::Canary::protobuf::appearances::AppearanceFlags* flags_; - uint32_t id_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlags final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlags) */ { - public: - inline AppearanceFlags() : - AppearanceFlags(nullptr) { } - ~AppearanceFlags() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlags(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlags(const AppearanceFlags &from); - AppearanceFlags(AppearanceFlags &&from) noexcept - : - AppearanceFlags() { - *this = ::std::move(from); - } - - inline AppearanceFlags &operator=(const AppearanceFlags &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlags &operator=(AppearanceFlags &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlags &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlags* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlags_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 8; - - friend void swap(AppearanceFlags &a, AppearanceFlags &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlags* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlags* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlags* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlags &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlags &from) { - AppearanceFlags::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlags* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlags"; - } - - protected: - explicit AppearanceFlags(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kNpcsaledataFieldNumber = 40, - kBankFieldNumber = 1, - kWriteFieldNumber = 10, - kWriteOnceFieldNumber = 11, - kHookFieldNumber = 21, - kLightFieldNumber = 23, - kShiftFieldNumber = 26, - kHeightFieldNumber = 27, - kAutomapFieldNumber = 30, - kLenshelpFieldNumber = 31, - kClothesFieldNumber = 34, - kDefaultActionFieldNumber = 35, - kMarketFieldNumber = 36, - kChangedtoexpireFieldNumber = 41, - kCyclopediaitemFieldNumber = 44, - kUpgradeclassificationFieldNumber = 48, - kClipFieldNumber = 2, - kBottomFieldNumber = 3, - kTopFieldNumber = 4, - kContainerFieldNumber = 5, - kCumulativeFieldNumber = 6, - kUsableFieldNumber = 7, - kForceuseFieldNumber = 8, - kMultiuseFieldNumber = 9, - kLiquidpoolFieldNumber = 12, - kUnpassFieldNumber = 13, - kUnmoveFieldNumber = 14, - kUnsightFieldNumber = 15, - kAvoidFieldNumber = 16, - kNoMovementAnimationFieldNumber = 17, - kTakeFieldNumber = 18, - kLiquidcontainerFieldNumber = 19, - kHangFieldNumber = 20, - kRotateFieldNumber = 22, - kDontHideFieldNumber = 24, - kTranslucentFieldNumber = 25, - kLyingObjectFieldNumber = 28, - kAnimateAlwaysFieldNumber = 29, - kFullbankFieldNumber = 32, - kIgnoreLookFieldNumber = 33, - kWrapFieldNumber = 37, - kUnwrapFieldNumber = 38, - kTopeffectFieldNumber = 39, - kCorpseFieldNumber = 42, - kPlayerCorpseFieldNumber = 43, - kAmmoFieldNumber = 45, - kShowOffSocketFieldNumber = 46, - kReportableFieldNumber = 47, - kReverseAddonsEastFieldNumber = 49, - kReverseAddonsWestFieldNumber = 50, - kReverseAddonsSouthFieldNumber = 51, - kReverseAddonsNorthFieldNumber = 52, - kWearoutFieldNumber = 53, - kClockexpireFieldNumber = 54, - kExpireFieldNumber = 55, - kExpirestopFieldNumber = 56, - kWrapkitFieldNumber = 57, - }; - // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; - int npcsaledata_size() const; - - private: - int _internal_npcsaledata_size() const; - - public: - void clear_npcsaledata(); - ::Canary::protobuf::appearances::AppearanceFlagNPC* mutable_npcsaledata(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC>* - mutable_npcsaledata(); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagNPC &_internal_npcsaledata(int index) const; - ::Canary::protobuf::appearances::AppearanceFlagNPC* _internal_add_npcsaledata(); - - public: - const ::Canary::protobuf::appearances::AppearanceFlagNPC &npcsaledata(int index) const; - ::Canary::protobuf::appearances::AppearanceFlagNPC* add_npcsaledata(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC> & - npcsaledata() const; - - // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; - bool has_bank() const; - - private: - bool _internal_has_bank() const; - - public: - void clear_bank(); - const ::Canary::protobuf::appearances::AppearanceFlagBank &bank() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagBank* release_bank(); - ::Canary::protobuf::appearances::AppearanceFlagBank* mutable_bank(); - void set_allocated_bank(::Canary::protobuf::appearances::AppearanceFlagBank* bank); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagBank &_internal_bank() const; - ::Canary::protobuf::appearances::AppearanceFlagBank* _internal_mutable_bank(); - - public: - void unsafe_arena_set_allocated_bank( - ::Canary::protobuf::appearances::AppearanceFlagBank* bank - ); - ::Canary::protobuf::appearances::AppearanceFlagBank* unsafe_arena_release_bank(); - - // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; - bool has_write() const; - - private: - bool _internal_has_write() const; - - public: - void clear_write(); - const ::Canary::protobuf::appearances::AppearanceFlagWrite &write() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagWrite* release_write(); - ::Canary::protobuf::appearances::AppearanceFlagWrite* mutable_write(); - void set_allocated_write(::Canary::protobuf::appearances::AppearanceFlagWrite* write); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagWrite &_internal_write() const; - ::Canary::protobuf::appearances::AppearanceFlagWrite* _internal_mutable_write(); - - public: - void unsafe_arena_set_allocated_write( - ::Canary::protobuf::appearances::AppearanceFlagWrite* write - ); - ::Canary::protobuf::appearances::AppearanceFlagWrite* unsafe_arena_release_write(); - - // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; - bool has_write_once() const; - - private: - bool _internal_has_write_once() const; - - public: - void clear_write_once(); - const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &write_once() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* release_write_once(); - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* mutable_write_once(); - void set_allocated_write_once(::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &_internal_write_once() const; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* _internal_mutable_write_once(); - - public: - void unsafe_arena_set_allocated_write_once( - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once - ); - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* unsafe_arena_release_write_once(); - - // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; - bool has_hook() const; - - private: - bool _internal_has_hook() const; - - public: - void clear_hook(); - const ::Canary::protobuf::appearances::AppearanceFlagHook &hook() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagHook* release_hook(); - ::Canary::protobuf::appearances::AppearanceFlagHook* mutable_hook(); - void set_allocated_hook(::Canary::protobuf::appearances::AppearanceFlagHook* hook); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagHook &_internal_hook() const; - ::Canary::protobuf::appearances::AppearanceFlagHook* _internal_mutable_hook(); - - public: - void unsafe_arena_set_allocated_hook( - ::Canary::protobuf::appearances::AppearanceFlagHook* hook - ); - ::Canary::protobuf::appearances::AppearanceFlagHook* unsafe_arena_release_hook(); - - // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; - bool has_light() const; - - private: - bool _internal_has_light() const; - - public: - void clear_light(); - const ::Canary::protobuf::appearances::AppearanceFlagLight &light() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagLight* release_light(); - ::Canary::protobuf::appearances::AppearanceFlagLight* mutable_light(); - void set_allocated_light(::Canary::protobuf::appearances::AppearanceFlagLight* light); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagLight &_internal_light() const; - ::Canary::protobuf::appearances::AppearanceFlagLight* _internal_mutable_light(); - - public: - void unsafe_arena_set_allocated_light( - ::Canary::protobuf::appearances::AppearanceFlagLight* light - ); - ::Canary::protobuf::appearances::AppearanceFlagLight* unsafe_arena_release_light(); - - // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; - bool has_shift() const; - - private: - bool _internal_has_shift() const; - - public: - void clear_shift(); - const ::Canary::protobuf::appearances::AppearanceFlagShift &shift() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagShift* release_shift(); - ::Canary::protobuf::appearances::AppearanceFlagShift* mutable_shift(); - void set_allocated_shift(::Canary::protobuf::appearances::AppearanceFlagShift* shift); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagShift &_internal_shift() const; - ::Canary::protobuf::appearances::AppearanceFlagShift* _internal_mutable_shift(); - - public: - void unsafe_arena_set_allocated_shift( - ::Canary::protobuf::appearances::AppearanceFlagShift* shift - ); - ::Canary::protobuf::appearances::AppearanceFlagShift* unsafe_arena_release_shift(); - - // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; - bool has_height() const; - - private: - bool _internal_has_height() const; - - public: - void clear_height(); - const ::Canary::protobuf::appearances::AppearanceFlagHeight &height() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagHeight* release_height(); - ::Canary::protobuf::appearances::AppearanceFlagHeight* mutable_height(); - void set_allocated_height(::Canary::protobuf::appearances::AppearanceFlagHeight* height); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagHeight &_internal_height() const; - ::Canary::protobuf::appearances::AppearanceFlagHeight* _internal_mutable_height(); - - public: - void unsafe_arena_set_allocated_height( - ::Canary::protobuf::appearances::AppearanceFlagHeight* height - ); - ::Canary::protobuf::appearances::AppearanceFlagHeight* unsafe_arena_release_height(); - - // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; - bool has_automap() const; - - private: - bool _internal_has_automap() const; - - public: - void clear_automap(); - const ::Canary::protobuf::appearances::AppearanceFlagAutomap &automap() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagAutomap* release_automap(); - ::Canary::protobuf::appearances::AppearanceFlagAutomap* mutable_automap(); - void set_allocated_automap(::Canary::protobuf::appearances::AppearanceFlagAutomap* automap); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagAutomap &_internal_automap() const; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* _internal_mutable_automap(); - - public: - void unsafe_arena_set_allocated_automap( - ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap - ); - ::Canary::protobuf::appearances::AppearanceFlagAutomap* unsafe_arena_release_automap(); - - // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; - bool has_lenshelp() const; - - private: - bool _internal_has_lenshelp() const; - - public: - void clear_lenshelp(); - const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &lenshelp() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagLenshelp* release_lenshelp(); - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* mutable_lenshelp(); - void set_allocated_lenshelp(::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &_internal_lenshelp() const; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* _internal_mutable_lenshelp(); - - public: - void unsafe_arena_set_allocated_lenshelp( - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp - ); - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* unsafe_arena_release_lenshelp(); - - // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; - bool has_clothes() const; - - private: - bool _internal_has_clothes() const; - - public: - void clear_clothes(); - const ::Canary::protobuf::appearances::AppearanceFlagClothes &clothes() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagClothes* release_clothes(); - ::Canary::protobuf::appearances::AppearanceFlagClothes* mutable_clothes(); - void set_allocated_clothes(::Canary::protobuf::appearances::AppearanceFlagClothes* clothes); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagClothes &_internal_clothes() const; - ::Canary::protobuf::appearances::AppearanceFlagClothes* _internal_mutable_clothes(); - - public: - void unsafe_arena_set_allocated_clothes( - ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes - ); - ::Canary::protobuf::appearances::AppearanceFlagClothes* unsafe_arena_release_clothes(); - - // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; - bool has_default_action() const; - - private: - bool _internal_has_default_action() const; - - public: - void clear_default_action(); - const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &default_action() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* release_default_action(); - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* mutable_default_action(); - void set_allocated_default_action(::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &_internal_default_action() const; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* _internal_mutable_default_action(); - - public: - void unsafe_arena_set_allocated_default_action( - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action - ); - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* unsafe_arena_release_default_action(); - - // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; - bool has_market() const; - - private: - bool _internal_has_market() const; - - public: - void clear_market(); - const ::Canary::protobuf::appearances::AppearanceFlagMarket &market() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagMarket* release_market(); - ::Canary::protobuf::appearances::AppearanceFlagMarket* mutable_market(); - void set_allocated_market(::Canary::protobuf::appearances::AppearanceFlagMarket* market); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagMarket &_internal_market() const; - ::Canary::protobuf::appearances::AppearanceFlagMarket* _internal_mutable_market(); - - public: - void unsafe_arena_set_allocated_market( - ::Canary::protobuf::appearances::AppearanceFlagMarket* market - ); - ::Canary::protobuf::appearances::AppearanceFlagMarket* unsafe_arena_release_market(); - - // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; - bool has_changedtoexpire() const; - - private: - bool _internal_has_changedtoexpire() const; - - public: - void clear_changedtoexpire(); - const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &changedtoexpire() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* release_changedtoexpire(); - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* mutable_changedtoexpire(); - void set_allocated_changedtoexpire(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &_internal_changedtoexpire() const; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* _internal_mutable_changedtoexpire(); - - public: - void unsafe_arena_set_allocated_changedtoexpire( - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire - ); - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* unsafe_arena_release_changedtoexpire(); - - // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; - bool has_cyclopediaitem() const; - - private: - bool _internal_has_cyclopediaitem() const; - - public: - void clear_cyclopediaitem(); - const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &cyclopediaitem() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* release_cyclopediaitem(); - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* mutable_cyclopediaitem(); - void set_allocated_cyclopediaitem(::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &_internal_cyclopediaitem() const; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* _internal_mutable_cyclopediaitem(); - - public: - void unsafe_arena_set_allocated_cyclopediaitem( - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem - ); - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* unsafe_arena_release_cyclopediaitem(); - - // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; - bool has_upgradeclassification() const; - - private: - bool _internal_has_upgradeclassification() const; - - public: - void clear_upgradeclassification(); - const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &upgradeclassification() const; - PROTOBUF_NODISCARD ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* release_upgradeclassification(); - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* mutable_upgradeclassification(); - void set_allocated_upgradeclassification(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification); - - private: - const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &_internal_upgradeclassification() const; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* _internal_mutable_upgradeclassification(); - - public: - void unsafe_arena_set_allocated_upgradeclassification( - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification - ); - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* unsafe_arena_release_upgradeclassification(); - - // optional bool clip = 2; - bool has_clip() const; - - private: - bool _internal_has_clip() const; - - public: - void clear_clip(); - bool clip() const; - void set_clip(bool value); - - private: - bool _internal_clip() const; - void _internal_set_clip(bool value); - - public: - // optional bool bottom = 3; - bool has_bottom() const; - - private: - bool _internal_has_bottom() const; - - public: - void clear_bottom(); - bool bottom() const; - void set_bottom(bool value); - - private: - bool _internal_bottom() const; - void _internal_set_bottom(bool value); - - public: - // optional bool top = 4; - bool has_top() const; - - private: - bool _internal_has_top() const; - - public: - void clear_top(); - bool top() const; - void set_top(bool value); - - private: - bool _internal_top() const; - void _internal_set_top(bool value); - - public: - // optional bool container = 5; - bool has_container() const; - - private: - bool _internal_has_container() const; - - public: - void clear_container(); - bool container() const; - void set_container(bool value); - - private: - bool _internal_container() const; - void _internal_set_container(bool value); - - public: - // optional bool cumulative = 6; - bool has_cumulative() const; - - private: - bool _internal_has_cumulative() const; - - public: - void clear_cumulative(); - bool cumulative() const; - void set_cumulative(bool value); - - private: - bool _internal_cumulative() const; - void _internal_set_cumulative(bool value); - - public: - // optional bool usable = 7; - bool has_usable() const; - - private: - bool _internal_has_usable() const; - - public: - void clear_usable(); - bool usable() const; - void set_usable(bool value); - - private: - bool _internal_usable() const; - void _internal_set_usable(bool value); - - public: - // optional bool forceuse = 8; - bool has_forceuse() const; - - private: - bool _internal_has_forceuse() const; - - public: - void clear_forceuse(); - bool forceuse() const; - void set_forceuse(bool value); - - private: - bool _internal_forceuse() const; - void _internal_set_forceuse(bool value); - - public: - // optional bool multiuse = 9; - bool has_multiuse() const; - - private: - bool _internal_has_multiuse() const; - - public: - void clear_multiuse(); - bool multiuse() const; - void set_multiuse(bool value); - - private: - bool _internal_multiuse() const; - void _internal_set_multiuse(bool value); - - public: - // optional bool liquidpool = 12; - bool has_liquidpool() const; - - private: - bool _internal_has_liquidpool() const; - - public: - void clear_liquidpool(); - bool liquidpool() const; - void set_liquidpool(bool value); - - private: - bool _internal_liquidpool() const; - void _internal_set_liquidpool(bool value); - - public: - // optional bool unpass = 13; - bool has_unpass() const; - - private: - bool _internal_has_unpass() const; - - public: - void clear_unpass(); - bool unpass() const; - void set_unpass(bool value); - - private: - bool _internal_unpass() const; - void _internal_set_unpass(bool value); - - public: - // optional bool unmove = 14; - bool has_unmove() const; - - private: - bool _internal_has_unmove() const; - - public: - void clear_unmove(); - bool unmove() const; - void set_unmove(bool value); - - private: - bool _internal_unmove() const; - void _internal_set_unmove(bool value); - - public: - // optional bool unsight = 15; - bool has_unsight() const; - - private: - bool _internal_has_unsight() const; - - public: - void clear_unsight(); - bool unsight() const; - void set_unsight(bool value); - - private: - bool _internal_unsight() const; - void _internal_set_unsight(bool value); - - public: - // optional bool avoid = 16; - bool has_avoid() const; - - private: - bool _internal_has_avoid() const; - - public: - void clear_avoid(); - bool avoid() const; - void set_avoid(bool value); - - private: - bool _internal_avoid() const; - void _internal_set_avoid(bool value); - - public: - // optional bool no_movement_animation = 17; - bool has_no_movement_animation() const; - - private: - bool _internal_has_no_movement_animation() const; - - public: - void clear_no_movement_animation(); - bool no_movement_animation() const; - void set_no_movement_animation(bool value); - - private: - bool _internal_no_movement_animation() const; - void _internal_set_no_movement_animation(bool value); - - public: - // optional bool take = 18; - bool has_take() const; - - private: - bool _internal_has_take() const; - - public: - void clear_take(); - bool take() const; - void set_take(bool value); - - private: - bool _internal_take() const; - void _internal_set_take(bool value); - - public: - // optional bool liquidcontainer = 19; - bool has_liquidcontainer() const; - - private: - bool _internal_has_liquidcontainer() const; - - public: - void clear_liquidcontainer(); - bool liquidcontainer() const; - void set_liquidcontainer(bool value); - - private: - bool _internal_liquidcontainer() const; - void _internal_set_liquidcontainer(bool value); - - public: - // optional bool hang = 20; - bool has_hang() const; - - private: - bool _internal_has_hang() const; - - public: - void clear_hang(); - bool hang() const; - void set_hang(bool value); - - private: - bool _internal_hang() const; - void _internal_set_hang(bool value); - - public: - // optional bool rotate = 22; - bool has_rotate() const; - - private: - bool _internal_has_rotate() const; - - public: - void clear_rotate(); - bool rotate() const; - void set_rotate(bool value); - - private: - bool _internal_rotate() const; - void _internal_set_rotate(bool value); - - public: - // optional bool dont_hide = 24; - bool has_dont_hide() const; - - private: - bool _internal_has_dont_hide() const; - - public: - void clear_dont_hide(); - bool dont_hide() const; - void set_dont_hide(bool value); - - private: - bool _internal_dont_hide() const; - void _internal_set_dont_hide(bool value); - - public: - // optional bool translucent = 25; - bool has_translucent() const; - - private: - bool _internal_has_translucent() const; - - public: - void clear_translucent(); - bool translucent() const; - void set_translucent(bool value); - - private: - bool _internal_translucent() const; - void _internal_set_translucent(bool value); - - public: - // optional bool lying_object = 28; - bool has_lying_object() const; - - private: - bool _internal_has_lying_object() const; - - public: - void clear_lying_object(); - bool lying_object() const; - void set_lying_object(bool value); - - private: - bool _internal_lying_object() const; - void _internal_set_lying_object(bool value); - - public: - // optional bool animate_always = 29; - bool has_animate_always() const; - - private: - bool _internal_has_animate_always() const; - - public: - void clear_animate_always(); - bool animate_always() const; - void set_animate_always(bool value); - - private: - bool _internal_animate_always() const; - void _internal_set_animate_always(bool value); - - public: - // optional bool fullbank = 32; - bool has_fullbank() const; - - private: - bool _internal_has_fullbank() const; - - public: - void clear_fullbank(); - bool fullbank() const; - void set_fullbank(bool value); - - private: - bool _internal_fullbank() const; - void _internal_set_fullbank(bool value); - - public: - // optional bool ignore_look = 33; - bool has_ignore_look() const; - - private: - bool _internal_has_ignore_look() const; - - public: - void clear_ignore_look(); - bool ignore_look() const; - void set_ignore_look(bool value); - - private: - bool _internal_ignore_look() const; - void _internal_set_ignore_look(bool value); - - public: - // optional bool wrap = 37; - bool has_wrap() const; - - private: - bool _internal_has_wrap() const; - - public: - void clear_wrap(); - bool wrap() const; - void set_wrap(bool value); - - private: - bool _internal_wrap() const; - void _internal_set_wrap(bool value); - - public: - // optional bool unwrap = 38; - bool has_unwrap() const; - - private: - bool _internal_has_unwrap() const; - - public: - void clear_unwrap(); - bool unwrap() const; - void set_unwrap(bool value); - - private: - bool _internal_unwrap() const; - void _internal_set_unwrap(bool value); - - public: - // optional bool topeffect = 39; - bool has_topeffect() const; - - private: - bool _internal_has_topeffect() const; - - public: - void clear_topeffect(); - bool topeffect() const; - void set_topeffect(bool value); - - private: - bool _internal_topeffect() const; - void _internal_set_topeffect(bool value); - - public: - // optional bool corpse = 42; - bool has_corpse() const; - - private: - bool _internal_has_corpse() const; - - public: - void clear_corpse(); - bool corpse() const; - void set_corpse(bool value); - - private: - bool _internal_corpse() const; - void _internal_set_corpse(bool value); - - public: - // optional bool player_corpse = 43; - bool has_player_corpse() const; - - private: - bool _internal_has_player_corpse() const; - - public: - void clear_player_corpse(); - bool player_corpse() const; - void set_player_corpse(bool value); - - private: - bool _internal_player_corpse() const; - void _internal_set_player_corpse(bool value); - - public: - // optional bool ammo = 45; - bool has_ammo() const; - - private: - bool _internal_has_ammo() const; - - public: - void clear_ammo(); - bool ammo() const; - void set_ammo(bool value); - - private: - bool _internal_ammo() const; - void _internal_set_ammo(bool value); - - public: - // optional bool show_off_socket = 46; - bool has_show_off_socket() const; - - private: - bool _internal_has_show_off_socket() const; - - public: - void clear_show_off_socket(); - bool show_off_socket() const; - void set_show_off_socket(bool value); - - private: - bool _internal_show_off_socket() const; - void _internal_set_show_off_socket(bool value); - - public: - // optional bool reportable = 47; - bool has_reportable() const; - - private: - bool _internal_has_reportable() const; - - public: - void clear_reportable(); - bool reportable() const; - void set_reportable(bool value); - - private: - bool _internal_reportable() const; - void _internal_set_reportable(bool value); - - public: - // optional bool reverse_addons_east = 49; - bool has_reverse_addons_east() const; - - private: - bool _internal_has_reverse_addons_east() const; - - public: - void clear_reverse_addons_east(); - bool reverse_addons_east() const; - void set_reverse_addons_east(bool value); - - private: - bool _internal_reverse_addons_east() const; - void _internal_set_reverse_addons_east(bool value); - - public: - // optional bool reverse_addons_west = 50; - bool has_reverse_addons_west() const; - - private: - bool _internal_has_reverse_addons_west() const; - - public: - void clear_reverse_addons_west(); - bool reverse_addons_west() const; - void set_reverse_addons_west(bool value); - - private: - bool _internal_reverse_addons_west() const; - void _internal_set_reverse_addons_west(bool value); - - public: - // optional bool reverse_addons_south = 51; - bool has_reverse_addons_south() const; - - private: - bool _internal_has_reverse_addons_south() const; - - public: - void clear_reverse_addons_south(); - bool reverse_addons_south() const; - void set_reverse_addons_south(bool value); - - private: - bool _internal_reverse_addons_south() const; - void _internal_set_reverse_addons_south(bool value); - - public: - // optional bool reverse_addons_north = 52; - bool has_reverse_addons_north() const; - - private: - bool _internal_has_reverse_addons_north() const; - - public: - void clear_reverse_addons_north(); - bool reverse_addons_north() const; - void set_reverse_addons_north(bool value); - - private: - bool _internal_reverse_addons_north() const; - void _internal_set_reverse_addons_north(bool value); - - public: - // optional bool wearout = 53; - bool has_wearout() const; - - private: - bool _internal_has_wearout() const; - - public: - void clear_wearout(); - bool wearout() const; - void set_wearout(bool value); - - private: - bool _internal_wearout() const; - void _internal_set_wearout(bool value); - - public: - // optional bool clockexpire = 54; - bool has_clockexpire() const; - - private: - bool _internal_has_clockexpire() const; - - public: - void clear_clockexpire(); - bool clockexpire() const; - void set_clockexpire(bool value); - - private: - bool _internal_clockexpire() const; - void _internal_set_clockexpire(bool value); - - public: - // optional bool expire = 55; - bool has_expire() const; - - private: - bool _internal_has_expire() const; - - public: - void clear_expire(); - bool expire() const; - void set_expire(bool value); - - private: - bool _internal_expire() const; - void _internal_set_expire(bool value); - - public: - // optional bool expirestop = 56; - bool has_expirestop() const; - - private: - bool _internal_has_expirestop() const; - - public: - void clear_expirestop(); - bool expirestop() const; - void set_expirestop(bool value); - - private: - bool _internal_expirestop() const; - void _internal_set_expirestop(bool value); - - public: - // optional bool wrapkit = 57; - bool has_wrapkit() const; - - private: - bool _internal_has_wrapkit() const; - - public: - void clear_wrapkit(); - bool wrapkit() const; - void set_wrapkit(bool value); - - private: - bool _internal_wrapkit() const; - void _internal_set_wrapkit(bool value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlags) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC> npcsaledata_; - ::Canary::protobuf::appearances::AppearanceFlagBank* bank_; - ::Canary::protobuf::appearances::AppearanceFlagWrite* write_; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once_; - ::Canary::protobuf::appearances::AppearanceFlagHook* hook_; - ::Canary::protobuf::appearances::AppearanceFlagLight* light_; - ::Canary::protobuf::appearances::AppearanceFlagShift* shift_; - ::Canary::protobuf::appearances::AppearanceFlagHeight* height_; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap_; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp_; - ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes_; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action_; - ::Canary::protobuf::appearances::AppearanceFlagMarket* market_; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire_; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem_; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification_; - bool clip_; - bool bottom_; - bool top_; - bool container_; - bool cumulative_; - bool usable_; - bool forceuse_; - bool multiuse_; - bool liquidpool_; - bool unpass_; - bool unmove_; - bool unsight_; - bool avoid_; - bool no_movement_animation_; - bool take_; - bool liquidcontainer_; - bool hang_; - bool rotate_; - bool dont_hide_; - bool translucent_; - bool lying_object_; - bool animate_always_; - bool fullbank_; - bool ignore_look_; - bool wrap_; - bool unwrap_; - bool topeffect_; - bool corpse_; - bool player_corpse_; - bool ammo_; - bool show_off_socket_; - bool reportable_; - bool reverse_addons_east_; - bool reverse_addons_west_; - bool reverse_addons_south_; - bool reverse_addons_north_; - bool wearout_; - bool clockexpire_; - bool expire_; - bool expirestop_; - bool wrapkit_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagUpgradeClassification final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) */ { - public: - inline AppearanceFlagUpgradeClassification() : - AppearanceFlagUpgradeClassification(nullptr) { } - ~AppearanceFlagUpgradeClassification() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagUpgradeClassification(const AppearanceFlagUpgradeClassification &from); - AppearanceFlagUpgradeClassification(AppearanceFlagUpgradeClassification &&from) noexcept - : - AppearanceFlagUpgradeClassification() { - *this = ::std::move(from); - } - - inline AppearanceFlagUpgradeClassification &operator=(const AppearanceFlagUpgradeClassification &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagUpgradeClassification &operator=(AppearanceFlagUpgradeClassification &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagUpgradeClassification &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagUpgradeClassification* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagUpgradeClassification_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 9; - - friend void swap(AppearanceFlagUpgradeClassification &a, AppearanceFlagUpgradeClassification &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagUpgradeClassification* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagUpgradeClassification* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagUpgradeClassification* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagUpgradeClassification &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagUpgradeClassification &from) { - AppearanceFlagUpgradeClassification::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagUpgradeClassification* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagUpgradeClassification"; - } - - protected: - explicit AppearanceFlagUpgradeClassification(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kUpgradeClassificationFieldNumber = 1, - }; - // optional uint32 upgrade_classification = 1; - bool has_upgrade_classification() const; - - private: - bool _internal_has_upgrade_classification() const; - - public: - void clear_upgrade_classification(); - uint32_t upgrade_classification() const; - void set_upgrade_classification(uint32_t value); - - private: - uint32_t _internal_upgrade_classification() const; - void _internal_set_upgrade_classification(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t upgrade_classification_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagBank final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagBank) */ { - public: - inline AppearanceFlagBank() : - AppearanceFlagBank(nullptr) { } - ~AppearanceFlagBank() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagBank(const AppearanceFlagBank &from); - AppearanceFlagBank(AppearanceFlagBank &&from) noexcept - : - AppearanceFlagBank() { - *this = ::std::move(from); - } - - inline AppearanceFlagBank &operator=(const AppearanceFlagBank &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagBank &operator=(AppearanceFlagBank &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagBank &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagBank* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagBank_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 10; - - friend void swap(AppearanceFlagBank &a, AppearanceFlagBank &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagBank* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagBank* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagBank* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagBank &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagBank &from) { - AppearanceFlagBank::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagBank* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagBank"; - } - - protected: - explicit AppearanceFlagBank(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kWaypointsFieldNumber = 1, - }; - // optional uint32 waypoints = 1; - bool has_waypoints() const; - - private: - bool _internal_has_waypoints() const; - - public: - void clear_waypoints(); - uint32_t waypoints() const; - void set_waypoints(uint32_t value); - - private: - uint32_t _internal_waypoints() const; - void _internal_set_waypoints(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagBank) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t waypoints_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagWrite final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagWrite) */ { - public: - inline AppearanceFlagWrite() : - AppearanceFlagWrite(nullptr) { } - ~AppearanceFlagWrite() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagWrite(const AppearanceFlagWrite &from); - AppearanceFlagWrite(AppearanceFlagWrite &&from) noexcept - : - AppearanceFlagWrite() { - *this = ::std::move(from); - } - - inline AppearanceFlagWrite &operator=(const AppearanceFlagWrite &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagWrite &operator=(AppearanceFlagWrite &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagWrite &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagWrite* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagWrite_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 11; - - friend void swap(AppearanceFlagWrite &a, AppearanceFlagWrite &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagWrite* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagWrite* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagWrite* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagWrite &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagWrite &from) { - AppearanceFlagWrite::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagWrite* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagWrite"; - } - - protected: - explicit AppearanceFlagWrite(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kMaxTextLengthFieldNumber = 1, - }; - // optional uint32 max_text_length = 1; - bool has_max_text_length() const; - - private: - bool _internal_has_max_text_length() const; - - public: - void clear_max_text_length(); - uint32_t max_text_length() const; - void set_max_text_length(uint32_t value); - - private: - uint32_t _internal_max_text_length() const; - void _internal_set_max_text_length(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagWrite) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t max_text_length_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagWriteOnce final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagWriteOnce) */ { - public: - inline AppearanceFlagWriteOnce() : - AppearanceFlagWriteOnce(nullptr) { } - ~AppearanceFlagWriteOnce() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagWriteOnce(const AppearanceFlagWriteOnce &from); - AppearanceFlagWriteOnce(AppearanceFlagWriteOnce &&from) noexcept - : - AppearanceFlagWriteOnce() { - *this = ::std::move(from); - } - - inline AppearanceFlagWriteOnce &operator=(const AppearanceFlagWriteOnce &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagWriteOnce &operator=(AppearanceFlagWriteOnce &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagWriteOnce &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagWriteOnce* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagWriteOnce_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 12; - - friend void swap(AppearanceFlagWriteOnce &a, AppearanceFlagWriteOnce &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagWriteOnce* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagWriteOnce* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagWriteOnce* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagWriteOnce &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagWriteOnce &from) { - AppearanceFlagWriteOnce::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagWriteOnce* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagWriteOnce"; - } - - protected: - explicit AppearanceFlagWriteOnce(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kMaxTextLengthOnceFieldNumber = 1, - }; - // optional uint32 max_text_length_once = 1; - bool has_max_text_length_once() const; - - private: - bool _internal_has_max_text_length_once() const; - - public: - void clear_max_text_length_once(); - uint32_t max_text_length_once() const; - void set_max_text_length_once(uint32_t value); - - private: - uint32_t _internal_max_text_length_once() const; - void _internal_set_max_text_length_once(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagWriteOnce) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t max_text_length_once_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagLight final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagLight) */ { - public: - inline AppearanceFlagLight() : - AppearanceFlagLight(nullptr) { } - ~AppearanceFlagLight() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagLight(const AppearanceFlagLight &from); - AppearanceFlagLight(AppearanceFlagLight &&from) noexcept - : - AppearanceFlagLight() { - *this = ::std::move(from); - } - - inline AppearanceFlagLight &operator=(const AppearanceFlagLight &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagLight &operator=(AppearanceFlagLight &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagLight &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagLight* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagLight_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 13; - - friend void swap(AppearanceFlagLight &a, AppearanceFlagLight &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagLight* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagLight* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagLight* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagLight &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagLight &from) { - AppearanceFlagLight::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagLight* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagLight"; - } - - protected: - explicit AppearanceFlagLight(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kBrightnessFieldNumber = 1, - kColorFieldNumber = 2, - }; - // optional uint32 brightness = 1; - bool has_brightness() const; - - private: - bool _internal_has_brightness() const; - - public: - void clear_brightness(); - uint32_t brightness() const; - void set_brightness(uint32_t value); - - private: - uint32_t _internal_brightness() const; - void _internal_set_brightness(uint32_t value); - - public: - // optional uint32 color = 2; - bool has_color() const; - - private: - bool _internal_has_color() const; - - public: - void clear_color(); - uint32_t color() const; - void set_color(uint32_t value); - - private: - uint32_t _internal_color() const; - void _internal_set_color(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagLight) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t brightness_; - uint32_t color_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagHeight final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagHeight) */ { - public: - inline AppearanceFlagHeight() : - AppearanceFlagHeight(nullptr) { } - ~AppearanceFlagHeight() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagHeight(const AppearanceFlagHeight &from); - AppearanceFlagHeight(AppearanceFlagHeight &&from) noexcept - : - AppearanceFlagHeight() { - *this = ::std::move(from); - } - - inline AppearanceFlagHeight &operator=(const AppearanceFlagHeight &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagHeight &operator=(AppearanceFlagHeight &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagHeight &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagHeight* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagHeight_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 14; - - friend void swap(AppearanceFlagHeight &a, AppearanceFlagHeight &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagHeight* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagHeight* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagHeight* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagHeight &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagHeight &from) { - AppearanceFlagHeight::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagHeight* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagHeight"; - } - - protected: - explicit AppearanceFlagHeight(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kElevationFieldNumber = 1, - }; - // optional uint32 elevation = 1; - bool has_elevation() const; - - private: - bool _internal_has_elevation() const; - - public: - void clear_elevation(); - uint32_t elevation() const; - void set_elevation(uint32_t value); - - private: - uint32_t _internal_elevation() const; - void _internal_set_elevation(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagHeight) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t elevation_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagShift final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagShift) */ { - public: - inline AppearanceFlagShift() : - AppearanceFlagShift(nullptr) { } - ~AppearanceFlagShift() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagShift(const AppearanceFlagShift &from); - AppearanceFlagShift(AppearanceFlagShift &&from) noexcept - : - AppearanceFlagShift() { - *this = ::std::move(from); - } - - inline AppearanceFlagShift &operator=(const AppearanceFlagShift &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagShift &operator=(AppearanceFlagShift &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagShift &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagShift* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagShift_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 15; - - friend void swap(AppearanceFlagShift &a, AppearanceFlagShift &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagShift* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagShift* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagShift* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagShift &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagShift &from) { - AppearanceFlagShift::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagShift* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagShift"; - } - - protected: - explicit AppearanceFlagShift(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kXFieldNumber = 1, - kYFieldNumber = 2, - }; - // optional uint32 x = 1; - bool has_x() const; - - private: - bool _internal_has_x() const; - - public: - void clear_x(); - uint32_t x() const; - void set_x(uint32_t value); - - private: - uint32_t _internal_x() const; - void _internal_set_x(uint32_t value); - - public: - // optional uint32 y = 2; - bool has_y() const; - - private: - bool _internal_has_y() const; - - public: - void clear_y(); - uint32_t y() const; - void set_y(uint32_t value); - - private: - uint32_t _internal_y() const; - void _internal_set_y(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagShift) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t x_; - uint32_t y_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagClothes final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagClothes) */ { - public: - inline AppearanceFlagClothes() : - AppearanceFlagClothes(nullptr) { } - ~AppearanceFlagClothes() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagClothes(const AppearanceFlagClothes &from); - AppearanceFlagClothes(AppearanceFlagClothes &&from) noexcept - : - AppearanceFlagClothes() { - *this = ::std::move(from); - } - - inline AppearanceFlagClothes &operator=(const AppearanceFlagClothes &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagClothes &operator=(AppearanceFlagClothes &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagClothes &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagClothes* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagClothes_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 16; - - friend void swap(AppearanceFlagClothes &a, AppearanceFlagClothes &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagClothes* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagClothes* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagClothes* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagClothes &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagClothes &from) { - AppearanceFlagClothes::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagClothes* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagClothes"; - } - - protected: - explicit AppearanceFlagClothes(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSlotFieldNumber = 1, - }; - // optional uint32 slot = 1; - bool has_slot() const; - - private: - bool _internal_has_slot() const; - - public: - void clear_slot(); - uint32_t slot() const; - void set_slot(uint32_t value); - - private: - uint32_t _internal_slot() const; - void _internal_set_slot(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagClothes) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t slot_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagDefaultAction final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagDefaultAction) */ { - public: - inline AppearanceFlagDefaultAction() : - AppearanceFlagDefaultAction(nullptr) { } - ~AppearanceFlagDefaultAction() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagDefaultAction(const AppearanceFlagDefaultAction &from); - AppearanceFlagDefaultAction(AppearanceFlagDefaultAction &&from) noexcept - : - AppearanceFlagDefaultAction() { - *this = ::std::move(from); - } - - inline AppearanceFlagDefaultAction &operator=(const AppearanceFlagDefaultAction &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagDefaultAction &operator=(AppearanceFlagDefaultAction &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagDefaultAction &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagDefaultAction* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagDefaultAction_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 17; - - friend void swap(AppearanceFlagDefaultAction &a, AppearanceFlagDefaultAction &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagDefaultAction* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagDefaultAction* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagDefaultAction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagDefaultAction &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagDefaultAction &from) { - AppearanceFlagDefaultAction::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagDefaultAction* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagDefaultAction"; - } - - protected: - explicit AppearanceFlagDefaultAction(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kActionFieldNumber = 1, - }; - // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; - bool has_action() const; - - private: - bool _internal_has_action() const; - - public: - void clear_action(); - ::Canary::protobuf::appearances::PLAYER_ACTION action() const; - void set_action(::Canary::protobuf::appearances::PLAYER_ACTION value); - - private: - ::Canary::protobuf::appearances::PLAYER_ACTION _internal_action() const; - void _internal_set_action(::Canary::protobuf::appearances::PLAYER_ACTION value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagDefaultAction) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - int action_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagMarket final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagMarket) */ { - public: - inline AppearanceFlagMarket() : - AppearanceFlagMarket(nullptr) { } - ~AppearanceFlagMarket() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagMarket(const AppearanceFlagMarket &from); - AppearanceFlagMarket(AppearanceFlagMarket &&from) noexcept - : - AppearanceFlagMarket() { - *this = ::std::move(from); - } - - inline AppearanceFlagMarket &operator=(const AppearanceFlagMarket &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagMarket &operator=(AppearanceFlagMarket &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagMarket &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagMarket* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagMarket_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 18; - - friend void swap(AppearanceFlagMarket &a, AppearanceFlagMarket &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagMarket* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagMarket* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagMarket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagMarket &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagMarket &from) { - AppearanceFlagMarket::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagMarket* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagMarket"; - } - - protected: - explicit AppearanceFlagMarket(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kRestrictToProfessionFieldNumber = 5, - kTradeAsObjectIdFieldNumber = 2, - kShowAsObjectIdFieldNumber = 3, - kMinimumLevelFieldNumber = 6, - kCategoryFieldNumber = 1, - }; - // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; - int restrict_to_profession_size() const; - - private: - int _internal_restrict_to_profession_size() const; - - public: - void clear_restrict_to_profession(); - - private: - ::Canary::protobuf::appearances::PLAYER_PROFESSION _internal_restrict_to_profession(int index) const; - void _internal_add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField* _internal_mutable_restrict_to_profession(); - - public: - ::Canary::protobuf::appearances::PLAYER_PROFESSION restrict_to_profession(int index) const; - void set_restrict_to_profession(int index, ::Canary::protobuf::appearances::PLAYER_PROFESSION value); - void add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField &restrict_to_profession() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField* mutable_restrict_to_profession(); - - // optional uint32 trade_as_object_id = 2; - bool has_trade_as_object_id() const; - - private: - bool _internal_has_trade_as_object_id() const; - - public: - void clear_trade_as_object_id(); - uint32_t trade_as_object_id() const; - void set_trade_as_object_id(uint32_t value); - - private: - uint32_t _internal_trade_as_object_id() const; - void _internal_set_trade_as_object_id(uint32_t value); - - public: - // optional uint32 show_as_object_id = 3; - bool has_show_as_object_id() const; - - private: - bool _internal_has_show_as_object_id() const; - - public: - void clear_show_as_object_id(); - uint32_t show_as_object_id() const; - void set_show_as_object_id(uint32_t value); - - private: - uint32_t _internal_show_as_object_id() const; - void _internal_set_show_as_object_id(uint32_t value); - - public: - // optional uint32 minimum_level = 6; - bool has_minimum_level() const; - - private: - bool _internal_has_minimum_level() const; - - public: - void clear_minimum_level(); - uint32_t minimum_level() const; - void set_minimum_level(uint32_t value); - - private: - uint32_t _internal_minimum_level() const; - void _internal_set_minimum_level(uint32_t value); - - public: - // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; - bool has_category() const; - - private: - bool _internal_has_category() const; - - public: - void clear_category(); - ::Canary::protobuf::appearances::ITEM_CATEGORY category() const; - void set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value); - - private: - ::Canary::protobuf::appearances::ITEM_CATEGORY _internal_category() const; - void _internal_set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagMarket) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField restrict_to_profession_; - uint32_t trade_as_object_id_; - uint32_t show_as_object_id_; - uint32_t minimum_level_; - int category_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagNPC final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagNPC) */ { - public: - inline AppearanceFlagNPC() : - AppearanceFlagNPC(nullptr) { } - ~AppearanceFlagNPC() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagNPC(const AppearanceFlagNPC &from); - AppearanceFlagNPC(AppearanceFlagNPC &&from) noexcept - : - AppearanceFlagNPC() { - *this = ::std::move(from); - } - - inline AppearanceFlagNPC &operator=(const AppearanceFlagNPC &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagNPC &operator=(AppearanceFlagNPC &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagNPC &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagNPC* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagNPC_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 19; - - friend void swap(AppearanceFlagNPC &a, AppearanceFlagNPC &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagNPC* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagNPC* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagNPC* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagNPC &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagNPC &from) { - AppearanceFlagNPC::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagNPC* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagNPC"; - } - - protected: - explicit AppearanceFlagNPC(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kNameFieldNumber = 1, - kLocationFieldNumber = 2, - kCurrencyQuestFlagDisplayNameFieldNumber = 6, - kSalePriceFieldNumber = 3, - kBuyPriceFieldNumber = 4, - kCurrencyObjectTypeIdFieldNumber = 5, - }; - // optional bytes name = 1; - bool has_name() const; - - private: - bool _internal_has_name() const; - - public: - void clear_name(); - const std::string &name() const; - template - void set_name(ArgT0 &&arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - - private: - const std::string &_internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string &value); - std::string* _internal_mutable_name(); - - public: - // optional bytes location = 2; - bool has_location() const; - - private: - bool _internal_has_location() const; - - public: - void clear_location(); - const std::string &location() const; - template - void set_location(ArgT0 &&arg0, ArgT... args); - std::string* mutable_location(); - PROTOBUF_NODISCARD std::string* release_location(); - void set_allocated_location(std::string* location); - - private: - const std::string &_internal_location() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_location(const std::string &value); - std::string* _internal_mutable_location(); - - public: - // optional bytes currency_quest_flag_display_name = 6; - bool has_currency_quest_flag_display_name() const; - - private: - bool _internal_has_currency_quest_flag_display_name() const; - - public: - void clear_currency_quest_flag_display_name(); - const std::string ¤cy_quest_flag_display_name() const; - template - void set_currency_quest_flag_display_name(ArgT0 &&arg0, ArgT... args); - std::string* mutable_currency_quest_flag_display_name(); - PROTOBUF_NODISCARD std::string* release_currency_quest_flag_display_name(); - void set_allocated_currency_quest_flag_display_name(std::string* currency_quest_flag_display_name); - - private: - const std::string &_internal_currency_quest_flag_display_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_currency_quest_flag_display_name(const std::string &value); - std::string* _internal_mutable_currency_quest_flag_display_name(); - - public: - // optional uint32 sale_price = 3; - bool has_sale_price() const; - - private: - bool _internal_has_sale_price() const; - - public: - void clear_sale_price(); - uint32_t sale_price() const; - void set_sale_price(uint32_t value); - - private: - uint32_t _internal_sale_price() const; - void _internal_set_sale_price(uint32_t value); - - public: - // optional uint32 buy_price = 4; - bool has_buy_price() const; - - private: - bool _internal_has_buy_price() const; - - public: - void clear_buy_price(); - uint32_t buy_price() const; - void set_buy_price(uint32_t value); - - private: - uint32_t _internal_buy_price() const; - void _internal_set_buy_price(uint32_t value); - - public: - // optional uint32 currency_object_type_id = 5; - bool has_currency_object_type_id() const; - - private: - bool _internal_has_currency_object_type_id() const; - - public: - void clear_currency_object_type_id(); - uint32_t currency_object_type_id() const; - void set_currency_object_type_id(uint32_t value); - - private: - uint32_t _internal_currency_object_type_id() const; - void _internal_set_currency_object_type_id(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagNPC) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr location_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr currency_quest_flag_display_name_; - uint32_t sale_price_; - uint32_t buy_price_; - uint32_t currency_object_type_id_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagAutomap final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagAutomap) */ { - public: - inline AppearanceFlagAutomap() : - AppearanceFlagAutomap(nullptr) { } - ~AppearanceFlagAutomap() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagAutomap(const AppearanceFlagAutomap &from); - AppearanceFlagAutomap(AppearanceFlagAutomap &&from) noexcept - : - AppearanceFlagAutomap() { - *this = ::std::move(from); - } - - inline AppearanceFlagAutomap &operator=(const AppearanceFlagAutomap &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagAutomap &operator=(AppearanceFlagAutomap &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagAutomap &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagAutomap* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagAutomap_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 20; - - friend void swap(AppearanceFlagAutomap &a, AppearanceFlagAutomap &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagAutomap* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagAutomap* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagAutomap* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagAutomap &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagAutomap &from) { - AppearanceFlagAutomap::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagAutomap* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagAutomap"; - } - - protected: - explicit AppearanceFlagAutomap(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kColorFieldNumber = 1, - }; - // optional uint32 color = 1; - bool has_color() const; - - private: - bool _internal_has_color() const; - - public: - void clear_color(); - uint32_t color() const; - void set_color(uint32_t value); - - private: - uint32_t _internal_color() const; - void _internal_set_color(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagAutomap) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t color_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagHook final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagHook) */ { - public: - inline AppearanceFlagHook() : - AppearanceFlagHook(nullptr) { } - ~AppearanceFlagHook() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagHook(const AppearanceFlagHook &from); - AppearanceFlagHook(AppearanceFlagHook &&from) noexcept - : - AppearanceFlagHook() { - *this = ::std::move(from); - } - - inline AppearanceFlagHook &operator=(const AppearanceFlagHook &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagHook &operator=(AppearanceFlagHook &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagHook &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagHook* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagHook_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 21; - - friend void swap(AppearanceFlagHook &a, AppearanceFlagHook &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagHook* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagHook* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagHook* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagHook &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagHook &from) { - AppearanceFlagHook::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagHook* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagHook"; - } - - protected: - explicit AppearanceFlagHook(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kDirectionFieldNumber = 1, - }; - // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; - bool has_direction() const; - - private: - bool _internal_has_direction() const; - - public: - void clear_direction(); - ::Canary::protobuf::appearances::HOOK_TYPE direction() const; - void set_direction(::Canary::protobuf::appearances::HOOK_TYPE value); - - private: - ::Canary::protobuf::appearances::HOOK_TYPE _internal_direction() const; - void _internal_set_direction(::Canary::protobuf::appearances::HOOK_TYPE value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagHook) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - int direction_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagLenshelp final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagLenshelp) */ { - public: - inline AppearanceFlagLenshelp() : - AppearanceFlagLenshelp(nullptr) { } - ~AppearanceFlagLenshelp() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagLenshelp(const AppearanceFlagLenshelp &from); - AppearanceFlagLenshelp(AppearanceFlagLenshelp &&from) noexcept - : - AppearanceFlagLenshelp() { - *this = ::std::move(from); - } - - inline AppearanceFlagLenshelp &operator=(const AppearanceFlagLenshelp &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagLenshelp &operator=(AppearanceFlagLenshelp &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagLenshelp &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagLenshelp* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagLenshelp_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 22; - - friend void swap(AppearanceFlagLenshelp &a, AppearanceFlagLenshelp &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagLenshelp* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagLenshelp* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagLenshelp* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagLenshelp &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagLenshelp &from) { - AppearanceFlagLenshelp::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagLenshelp* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagLenshelp"; - } - - protected: - explicit AppearanceFlagLenshelp(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kIdFieldNumber = 1, - }; - // optional uint32 id = 1; - bool has_id() const; - - private: - bool _internal_has_id() const; - - public: - void clear_id(); - uint32_t id() const; - void set_id(uint32_t value); - - private: - uint32_t _internal_id() const; - void _internal_set_id(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagLenshelp) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t id_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagChangedToExpire final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) */ { - public: - inline AppearanceFlagChangedToExpire() : - AppearanceFlagChangedToExpire(nullptr) { } - ~AppearanceFlagChangedToExpire() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagChangedToExpire(const AppearanceFlagChangedToExpire &from); - AppearanceFlagChangedToExpire(AppearanceFlagChangedToExpire &&from) noexcept - : - AppearanceFlagChangedToExpire() { - *this = ::std::move(from); - } - - inline AppearanceFlagChangedToExpire &operator=(const AppearanceFlagChangedToExpire &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagChangedToExpire &operator=(AppearanceFlagChangedToExpire &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagChangedToExpire &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagChangedToExpire* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagChangedToExpire_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 23; - - friend void swap(AppearanceFlagChangedToExpire &a, AppearanceFlagChangedToExpire &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagChangedToExpire* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagChangedToExpire* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagChangedToExpire* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagChangedToExpire &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagChangedToExpire &from) { - AppearanceFlagChangedToExpire::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagChangedToExpire* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagChangedToExpire"; - } - - protected: - explicit AppearanceFlagChangedToExpire(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kFormerObjectTypeidFieldNumber = 1, - }; - // optional uint32 former_object_typeid = 1; - bool has_former_object_typeid() const; - - private: - bool _internal_has_former_object_typeid() const; - - public: - void clear_former_object_typeid(); - uint32_t former_object_typeid() const; - void set_former_object_typeid(uint32_t value); - - private: - uint32_t _internal_former_object_typeid() const; - void _internal_set_former_object_typeid(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagChangedToExpire) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t former_object_typeid_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class AppearanceFlagCyclopedia final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.AppearanceFlagCyclopedia) */ { - public: - inline AppearanceFlagCyclopedia() : - AppearanceFlagCyclopedia(nullptr) { } - ~AppearanceFlagCyclopedia() override; - explicit PROTOBUF_CONSTEXPR AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AppearanceFlagCyclopedia(const AppearanceFlagCyclopedia &from); - AppearanceFlagCyclopedia(AppearanceFlagCyclopedia &&from) noexcept - : - AppearanceFlagCyclopedia() { - *this = ::std::move(from); - } - - inline AppearanceFlagCyclopedia &operator=(const AppearanceFlagCyclopedia &from) { - CopyFrom(from); - return *this; - } - inline AppearanceFlagCyclopedia &operator=(AppearanceFlagCyclopedia &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AppearanceFlagCyclopedia &default_instance() { - return *internal_default_instance(); - } - static inline const AppearanceFlagCyclopedia* internal_default_instance() { - return reinterpret_cast( - &_AppearanceFlagCyclopedia_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 24; - - friend void swap(AppearanceFlagCyclopedia &a, AppearanceFlagCyclopedia &b) { - a.Swap(&b); - } - inline void Swap(AppearanceFlagCyclopedia* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AppearanceFlagCyclopedia* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AppearanceFlagCyclopedia* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AppearanceFlagCyclopedia &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const AppearanceFlagCyclopedia &from) { - AppearanceFlagCyclopedia::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AppearanceFlagCyclopedia* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.AppearanceFlagCyclopedia"; - } - - protected: - explicit AppearanceFlagCyclopedia(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kCyclopediaTypeFieldNumber = 1, - }; - // optional uint32 cyclopedia_type = 1; - bool has_cyclopedia_type() const; - - private: - bool _internal_has_cyclopedia_type() const; - - public: - void clear_cyclopedia_type(); - uint32_t cyclopedia_type() const; - void set_cyclopedia_type(uint32_t value); - - private: - uint32_t _internal_cyclopedia_type() const; - void _internal_set_cyclopedia_type(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.AppearanceFlagCyclopedia) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t cyclopedia_type_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // ------------------------------------------------------------------- - - class SpecialMeaningAppearanceIds final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) */ { - public: - inline SpecialMeaningAppearanceIds() : - SpecialMeaningAppearanceIds(nullptr) { } - ~SpecialMeaningAppearanceIds() override; - explicit PROTOBUF_CONSTEXPR SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - SpecialMeaningAppearanceIds(const SpecialMeaningAppearanceIds &from); - SpecialMeaningAppearanceIds(SpecialMeaningAppearanceIds &&from) noexcept - : - SpecialMeaningAppearanceIds() { - *this = ::std::move(from); - } - - inline SpecialMeaningAppearanceIds &operator=(const SpecialMeaningAppearanceIds &from) { - CopyFrom(from); - return *this; - } - inline SpecialMeaningAppearanceIds &operator=(SpecialMeaningAppearanceIds &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet &unknown_fields() const { - return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); - } - inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { - return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SpecialMeaningAppearanceIds &default_instance() { - return *internal_default_instance(); - } - static inline const SpecialMeaningAppearanceIds* internal_default_instance() { - return reinterpret_cast( - &_SpecialMeaningAppearanceIds_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 25; - - friend void swap(SpecialMeaningAppearanceIds &a, SpecialMeaningAppearanceIds &b) { - a.Swap(&b); - } - inline void Swap(SpecialMeaningAppearanceIds* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SpecialMeaningAppearanceIds* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - SpecialMeaningAppearanceIds* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SpecialMeaningAppearanceIds &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const SpecialMeaningAppearanceIds &from) { - SpecialMeaningAppearanceIds::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SpecialMeaningAppearanceIds* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.appearances.SpecialMeaningAppearanceIds"; - } - - protected: - explicit SpecialMeaningAppearanceIds(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kGoldCoinIdFieldNumber = 1, - kPlatinumCoinIdFieldNumber = 2, - kCrystalCoinIdFieldNumber = 3, - kTibiaCoinIdFieldNumber = 4, - kStampedLetterIdFieldNumber = 5, - kSupplyStashIdFieldNumber = 6, - kRewardChestIdFieldNumber = 7, - }; - // optional uint32 gold_coin_id = 1; - bool has_gold_coin_id() const; - - private: - bool _internal_has_gold_coin_id() const; - - public: - void clear_gold_coin_id(); - uint32_t gold_coin_id() const; - void set_gold_coin_id(uint32_t value); - - private: - uint32_t _internal_gold_coin_id() const; - void _internal_set_gold_coin_id(uint32_t value); - - public: - // optional uint32 platinum_coin_id = 2; - bool has_platinum_coin_id() const; - - private: - bool _internal_has_platinum_coin_id() const; - - public: - void clear_platinum_coin_id(); - uint32_t platinum_coin_id() const; - void set_platinum_coin_id(uint32_t value); - - private: - uint32_t _internal_platinum_coin_id() const; - void _internal_set_platinum_coin_id(uint32_t value); - - public: - // optional uint32 crystal_coin_id = 3; - bool has_crystal_coin_id() const; - - private: - bool _internal_has_crystal_coin_id() const; - - public: - void clear_crystal_coin_id(); - uint32_t crystal_coin_id() const; - void set_crystal_coin_id(uint32_t value); - - private: - uint32_t _internal_crystal_coin_id() const; - void _internal_set_crystal_coin_id(uint32_t value); - - public: - // optional uint32 tibia_coin_id = 4; - bool has_tibia_coin_id() const; - - private: - bool _internal_has_tibia_coin_id() const; - - public: - void clear_tibia_coin_id(); - uint32_t tibia_coin_id() const; - void set_tibia_coin_id(uint32_t value); - - private: - uint32_t _internal_tibia_coin_id() const; - void _internal_set_tibia_coin_id(uint32_t value); - - public: - // optional uint32 stamped_letter_id = 5; - bool has_stamped_letter_id() const; - - private: - bool _internal_has_stamped_letter_id() const; - - public: - void clear_stamped_letter_id(); - uint32_t stamped_letter_id() const; - void set_stamped_letter_id(uint32_t value); - - private: - uint32_t _internal_stamped_letter_id() const; - void _internal_set_stamped_letter_id(uint32_t value); - - public: - // optional uint32 supply_stash_id = 6; - bool has_supply_stash_id() const; - - private: - bool _internal_has_supply_stash_id() const; - - public: - void clear_supply_stash_id(); - uint32_t supply_stash_id() const; - void set_supply_stash_id(uint32_t value); - - private: - uint32_t _internal_supply_stash_id() const; - void _internal_set_supply_stash_id(uint32_t value); - - public: - // optional uint32 reward_chest_id = 7; - bool has_reward_chest_id() const; - - private: - bool _internal_has_reward_chest_id() const; - - public: - void clear_reward_chest_id(); - uint32_t reward_chest_id() const; - void set_reward_chest_id(uint32_t value); - - private: - uint32_t _internal_reward_chest_id() const; - void _internal_set_reward_chest_id(uint32_t value); - - public: - // @@protoc_insertion_point(class_scope:Canary.protobuf.appearances.SpecialMeaningAppearanceIds) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t gold_coin_id_; - uint32_t platinum_coin_id_; - uint32_t crystal_coin_id_; - uint32_t tibia_coin_id_; - uint32_t stamped_letter_id_; - uint32_t supply_stash_id_; - uint32_t reward_chest_id_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_appearances_2eproto; - }; - // =================================================================== - - // =================================================================== - -#ifdef __GNUC__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wstrict-aliasing" -#endif // __GNUC__ - // Coordinate - - // optional uint32 x = 1; - inline bool Coordinate::_internal_has_x() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool Coordinate::has_x() const { - return _internal_has_x(); - } - inline void Coordinate::clear_x() { - _impl_.x_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t Coordinate::_internal_x() const { - return _impl_.x_; - } - inline uint32_t Coordinate::x() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.x) - return _internal_x(); - } - inline void Coordinate::_internal_set_x(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.x_ = value; - } - inline void Coordinate::set_x(uint32_t value) { - _internal_set_x(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.x) - } - - // optional uint32 y = 2; - inline bool Coordinate::_internal_has_y() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool Coordinate::has_y() const { - return _internal_has_y(); - } - inline void Coordinate::clear_y() { - _impl_.y_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t Coordinate::_internal_y() const { - return _impl_.y_; - } - inline uint32_t Coordinate::y() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.y) - return _internal_y(); - } - inline void Coordinate::_internal_set_y(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.y_ = value; - } - inline void Coordinate::set_y(uint32_t value) { - _internal_set_y(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.y) - } - - // optional uint32 z = 3; - inline bool Coordinate::_internal_has_z() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool Coordinate::has_z() const { - return _internal_has_z(); - } - inline void Coordinate::clear_z() { - _impl_.z_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline uint32_t Coordinate::_internal_z() const { - return _impl_.z_; - } - inline uint32_t Coordinate::z() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Coordinate.z) - return _internal_z(); - } - inline void Coordinate::_internal_set_z(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.z_ = value; - } - inline void Coordinate::set_z(uint32_t value) { - _internal_set_z(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Coordinate.z) - } - - // ------------------------------------------------------------------- - - // Appearances - - // repeated .Canary.protobuf.appearances.Appearance object = 1; - inline int Appearances::_internal_object_size() const { - return _impl_.object_.size(); - } - inline int Appearances::object_size() const { - return _internal_object_size(); - } - inline void Appearances::clear_object() { - _impl_.object_.Clear(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_object(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.object) - return _impl_.object_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - Appearances::mutable_object() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.object) - return &_impl_.object_; - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_object(int index) const { - return _impl_.object_.Get(index); - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::object(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.object) - return _internal_object(index); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_object() { - return _impl_.object_.Add(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::add_object() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_object(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.object) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - Appearances::object() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.object) - return _impl_.object_; - } - - // repeated .Canary.protobuf.appearances.Appearance outfit = 2; - inline int Appearances::_internal_outfit_size() const { - return _impl_.outfit_.size(); - } - inline int Appearances::outfit_size() const { - return _internal_outfit_size(); - } - inline void Appearances::clear_outfit() { - _impl_.outfit_.Clear(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_outfit(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.outfit) - return _impl_.outfit_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - Appearances::mutable_outfit() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.outfit) - return &_impl_.outfit_; - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_outfit(int index) const { - return _impl_.outfit_.Get(index); - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::outfit(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.outfit) - return _internal_outfit(index); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_outfit() { - return _impl_.outfit_.Add(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::add_outfit() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_outfit(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.outfit) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - Appearances::outfit() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.outfit) - return _impl_.outfit_; - } - - // repeated .Canary.protobuf.appearances.Appearance effect = 3; - inline int Appearances::_internal_effect_size() const { - return _impl_.effect_.size(); - } - inline int Appearances::effect_size() const { - return _internal_effect_size(); - } - inline void Appearances::clear_effect() { - _impl_.effect_.Clear(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_effect(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.effect) - return _impl_.effect_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - Appearances::mutable_effect() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.effect) - return &_impl_.effect_; - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_effect(int index) const { - return _impl_.effect_.Get(index); - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::effect(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.effect) - return _internal_effect(index); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_effect() { - return _impl_.effect_.Add(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::add_effect() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_effect(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.effect) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - Appearances::effect() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.effect) - return _impl_.effect_; - } - - // repeated .Canary.protobuf.appearances.Appearance missile = 4; - inline int Appearances::_internal_missile_size() const { - return _impl_.missile_.size(); - } - inline int Appearances::missile_size() const { - return _internal_missile_size(); - } - inline void Appearances::clear_missile() { - _impl_.missile_.Clear(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::mutable_missile(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.missile) - return _impl_.missile_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance>* - Appearances::mutable_missile() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearances.missile) - return &_impl_.missile_; - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::_internal_missile(int index) const { - return _impl_.missile_.Get(index); - } - inline const ::Canary::protobuf::appearances::Appearance &Appearances::missile(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.missile) - return _internal_missile(index); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::_internal_add_missile() { - return _impl_.missile_.Add(); - } - inline ::Canary::protobuf::appearances::Appearance* Appearances::add_missile() { - ::Canary::protobuf::appearances::Appearance* _add = _internal_add_missile(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearances.missile) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Appearance> & - Appearances::missile() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearances.missile) - return _impl_.missile_; - } - - // optional .Canary.protobuf.appearances.SpecialMeaningAppearanceIds special_meaning_appearance_ids = 5; - inline bool Appearances::_internal_has_special_meaning_appearance_ids() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.special_meaning_appearance_ids_ != nullptr); - return value; - } - inline bool Appearances::has_special_meaning_appearance_ids() const { - return _internal_has_special_meaning_appearance_ids(); - } - inline void Appearances::clear_special_meaning_appearance_ids() { - if (_impl_.special_meaning_appearance_ids_ != nullptr) { - _impl_.special_meaning_appearance_ids_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &Appearances::_internal_special_meaning_appearance_ids() const { - const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* p = _impl_.special_meaning_appearance_ids_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_SpecialMeaningAppearanceIds_default_instance_); - } - inline const ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds &Appearances::special_meaning_appearance_ids() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - return _internal_special_meaning_appearance_ids(); - } - inline void Appearances::unsafe_arena_set_allocated_special_meaning_appearance_ids( - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.special_meaning_appearance_ids_); - } - _impl_.special_meaning_appearance_ids_ = special_meaning_appearance_ids; - if (special_meaning_appearance_ids) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - } - inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::release_special_meaning_appearance_ids() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* temp = _impl_.special_meaning_appearance_ids_; - _impl_.special_meaning_appearance_ids_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::unsafe_arena_release_special_meaning_appearance_ids() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* temp = _impl_.special_meaning_appearance_ids_; - _impl_.special_meaning_appearance_ids_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::_internal_mutable_special_meaning_appearance_ids() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.special_meaning_appearance_ids_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpecialMeaningAppearanceIds>(GetArenaForAllocation()); - _impl_.special_meaning_appearance_ids_ = p; - } - return _impl_.special_meaning_appearance_ids_; - } - inline ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* Appearances::mutable_special_meaning_appearance_ids() { - ::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* _msg = _internal_mutable_special_meaning_appearance_ids(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - return _msg; - } - inline void Appearances::set_allocated_special_meaning_appearance_ids(::Canary::protobuf::appearances::SpecialMeaningAppearanceIds* special_meaning_appearance_ids) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.special_meaning_appearance_ids_; - } - if (special_meaning_appearance_ids) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(special_meaning_appearance_ids); - if (message_arena != submessage_arena) { - special_meaning_appearance_ids = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, special_meaning_appearance_ids, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.special_meaning_appearance_ids_ = special_meaning_appearance_ids; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearances.special_meaning_appearance_ids) - } - - // ------------------------------------------------------------------- - - // SpritePhase - - // optional uint32 duration_min = 1; - inline bool SpritePhase::_internal_has_duration_min() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool SpritePhase::has_duration_min() const { - return _internal_has_duration_min(); - } - inline void SpritePhase::clear_duration_min() { - _impl_.duration_min_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t SpritePhase::_internal_duration_min() const { - return _impl_.duration_min_; - } - inline uint32_t SpritePhase::duration_min() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpritePhase.duration_min) - return _internal_duration_min(); - } - inline void SpritePhase::_internal_set_duration_min(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.duration_min_ = value; - } - inline void SpritePhase::set_duration_min(uint32_t value) { - _internal_set_duration_min(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpritePhase.duration_min) - } - - // optional uint32 duration_max = 2; - inline bool SpritePhase::_internal_has_duration_max() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool SpritePhase::has_duration_max() const { - return _internal_has_duration_max(); - } - inline void SpritePhase::clear_duration_max() { - _impl_.duration_max_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t SpritePhase::_internal_duration_max() const { - return _impl_.duration_max_; - } - inline uint32_t SpritePhase::duration_max() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpritePhase.duration_max) - return _internal_duration_max(); - } - inline void SpritePhase::_internal_set_duration_max(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.duration_max_ = value; - } - inline void SpritePhase::set_duration_max(uint32_t value) { - _internal_set_duration_max(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpritePhase.duration_max) - } - - // ------------------------------------------------------------------- - - // SpriteAnimation - - // optional uint32 default_start_phase = 1; - inline bool SpriteAnimation::_internal_has_default_start_phase() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool SpriteAnimation::has_default_start_phase() const { - return _internal_has_default_start_phase(); - } - inline void SpriteAnimation::clear_default_start_phase() { - _impl_.default_start_phase_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t SpriteAnimation::_internal_default_start_phase() const { - return _impl_.default_start_phase_; - } - inline uint32_t SpriteAnimation::default_start_phase() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.default_start_phase) - return _internal_default_start_phase(); - } - inline void SpriteAnimation::_internal_set_default_start_phase(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.default_start_phase_ = value; - } - inline void SpriteAnimation::set_default_start_phase(uint32_t value) { - _internal_set_default_start_phase(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.default_start_phase) - } - - // optional bool synchronized = 2; - inline bool SpriteAnimation::_internal_has_synchronized() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool SpriteAnimation::has_synchronized() const { - return _internal_has_synchronized(); - } - inline void SpriteAnimation::clear_synchronized() { - _impl_.synchronized_ = false; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline bool SpriteAnimation::_internal_synchronized() const { - return _impl_.synchronized_; - } - inline bool SpriteAnimation::synchronized() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.synchronized) - return _internal_synchronized(); - } - inline void SpriteAnimation::_internal_set_synchronized(bool value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.synchronized_ = value; - } - inline void SpriteAnimation::set_synchronized(bool value) { - _internal_set_synchronized(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.synchronized) - } - - // optional bool random_start_phase = 3; - inline bool SpriteAnimation::_internal_has_random_start_phase() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool SpriteAnimation::has_random_start_phase() const { - return _internal_has_random_start_phase(); - } - inline void SpriteAnimation::clear_random_start_phase() { - _impl_.random_start_phase_ = false; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline bool SpriteAnimation::_internal_random_start_phase() const { - return _impl_.random_start_phase_; - } - inline bool SpriteAnimation::random_start_phase() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.random_start_phase) - return _internal_random_start_phase(); - } - inline void SpriteAnimation::_internal_set_random_start_phase(bool value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.random_start_phase_ = value; - } - inline void SpriteAnimation::set_random_start_phase(bool value) { - _internal_set_random_start_phase(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.random_start_phase) - } - - // optional .Canary.protobuf.appearances.ANIMATION_LOOP_TYPE loop_type = 4; - inline bool SpriteAnimation::_internal_has_loop_type() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; - } - inline bool SpriteAnimation::has_loop_type() const { - return _internal_has_loop_type(); - } - inline void SpriteAnimation::clear_loop_type() { - _impl_.loop_type_ = -1; - _impl_._has_bits_[0] &= ~0x00000010u; - } - inline ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE SpriteAnimation::_internal_loop_type() const { - return static_cast<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE>(_impl_.loop_type_); - } - inline ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE SpriteAnimation::loop_type() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.loop_type) - return _internal_loop_type(); - } - inline void SpriteAnimation::_internal_set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value) { - assert(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.loop_type_ = value; - } - inline void SpriteAnimation::set_loop_type(::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE value) { - _internal_set_loop_type(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.loop_type) - } - - // optional uint32 loop_count = 5; - inline bool SpriteAnimation::_internal_has_loop_count() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool SpriteAnimation::has_loop_count() const { - return _internal_has_loop_count(); - } - inline void SpriteAnimation::clear_loop_count() { - _impl_.loop_count_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline uint32_t SpriteAnimation::_internal_loop_count() const { - return _impl_.loop_count_; - } - inline uint32_t SpriteAnimation::loop_count() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.loop_count) - return _internal_loop_count(); - } - inline void SpriteAnimation::_internal_set_loop_count(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.loop_count_ = value; - } - inline void SpriteAnimation::set_loop_count(uint32_t value) { - _internal_set_loop_count(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteAnimation.loop_count) - } - - // repeated .Canary.protobuf.appearances.SpritePhase sprite_phase = 6; - inline int SpriteAnimation::_internal_sprite_phase_size() const { - return _impl_.sprite_phase_.size(); - } - inline int SpriteAnimation::sprite_phase_size() const { - return _internal_sprite_phase_size(); - } - inline void SpriteAnimation::clear_sprite_phase() { - _impl_.sprite_phase_.Clear(); - } - inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::mutable_sprite_phase(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _impl_.sprite_phase_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase>* - SpriteAnimation::mutable_sprite_phase() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return &_impl_.sprite_phase_; - } - inline const ::Canary::protobuf::appearances::SpritePhase &SpriteAnimation::_internal_sprite_phase(int index) const { - return _impl_.sprite_phase_.Get(index); - } - inline const ::Canary::protobuf::appearances::SpritePhase &SpriteAnimation::sprite_phase(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _internal_sprite_phase(index); - } - inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::_internal_add_sprite_phase() { - return _impl_.sprite_phase_.Add(); - } - inline ::Canary::protobuf::appearances::SpritePhase* SpriteAnimation::add_sprite_phase() { - ::Canary::protobuf::appearances::SpritePhase* _add = _internal_add_sprite_phase(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::SpritePhase> & - SpriteAnimation::sprite_phase() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteAnimation.sprite_phase) - return _impl_.sprite_phase_; - } - - // ------------------------------------------------------------------- - - // Box - - // optional uint32 x = 1; - inline bool Box::_internal_has_x() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool Box::has_x() const { - return _internal_has_x(); - } - inline void Box::clear_x() { - _impl_.x_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t Box::_internal_x() const { - return _impl_.x_; - } - inline uint32_t Box::x() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.x) - return _internal_x(); - } - inline void Box::_internal_set_x(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.x_ = value; - } - inline void Box::set_x(uint32_t value) { - _internal_set_x(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.x) - } - - // optional uint32 y = 2; - inline bool Box::_internal_has_y() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool Box::has_y() const { - return _internal_has_y(); - } - inline void Box::clear_y() { - _impl_.y_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t Box::_internal_y() const { - return _impl_.y_; - } - inline uint32_t Box::y() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.y) - return _internal_y(); - } - inline void Box::_internal_set_y(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.y_ = value; - } - inline void Box::set_y(uint32_t value) { - _internal_set_y(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.y) - } - - // optional uint32 width = 3; - inline bool Box::_internal_has_width() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool Box::has_width() const { - return _internal_has_width(); - } - inline void Box::clear_width() { - _impl_.width_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline uint32_t Box::_internal_width() const { - return _impl_.width_; - } - inline uint32_t Box::width() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.width) - return _internal_width(); - } - inline void Box::_internal_set_width(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.width_ = value; - } - inline void Box::set_width(uint32_t value) { - _internal_set_width(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.width) - } - - // optional uint32 height = 4; - inline bool Box::_internal_has_height() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool Box::has_height() const { - return _internal_has_height(); - } - inline void Box::clear_height() { - _impl_.height_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline uint32_t Box::_internal_height() const { - return _impl_.height_; - } - inline uint32_t Box::height() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Box.height) - return _internal_height(); - } - inline void Box::_internal_set_height(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.height_ = value; - } - inline void Box::set_height(uint32_t value) { - _internal_set_height(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Box.height) - } - - // ------------------------------------------------------------------- - - // SpriteInfo - - // optional uint32 pattern_width = 1; - inline bool SpriteInfo::_internal_has_pattern_width() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool SpriteInfo::has_pattern_width() const { - return _internal_has_pattern_width(); - } - inline void SpriteInfo::clear_pattern_width() { - _impl_.pattern_width_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t SpriteInfo::_internal_pattern_width() const { - return _impl_.pattern_width_; - } - inline uint32_t SpriteInfo::pattern_width() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_width) - return _internal_pattern_width(); - } - inline void SpriteInfo::_internal_set_pattern_width(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.pattern_width_ = value; - } - inline void SpriteInfo::set_pattern_width(uint32_t value) { - _internal_set_pattern_width(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_width) - } - - // optional uint32 pattern_height = 2; - inline bool SpriteInfo::_internal_has_pattern_height() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool SpriteInfo::has_pattern_height() const { - return _internal_has_pattern_height(); - } - inline void SpriteInfo::clear_pattern_height() { - _impl_.pattern_height_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline uint32_t SpriteInfo::_internal_pattern_height() const { - return _impl_.pattern_height_; - } - inline uint32_t SpriteInfo::pattern_height() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_height) - return _internal_pattern_height(); - } - inline void SpriteInfo::_internal_set_pattern_height(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.pattern_height_ = value; - } - inline void SpriteInfo::set_pattern_height(uint32_t value) { - _internal_set_pattern_height(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_height) - } - - // optional uint32 pattern_depth = 3; - inline bool SpriteInfo::_internal_has_pattern_depth() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool SpriteInfo::has_pattern_depth() const { - return _internal_has_pattern_depth(); - } - inline void SpriteInfo::clear_pattern_depth() { - _impl_.pattern_depth_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline uint32_t SpriteInfo::_internal_pattern_depth() const { - return _impl_.pattern_depth_; - } - inline uint32_t SpriteInfo::pattern_depth() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.pattern_depth) - return _internal_pattern_depth(); - } - inline void SpriteInfo::_internal_set_pattern_depth(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.pattern_depth_ = value; - } - inline void SpriteInfo::set_pattern_depth(uint32_t value) { - _internal_set_pattern_depth(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.pattern_depth) - } - - // optional uint32 layers = 4; - inline bool SpriteInfo::_internal_has_layers() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; - } - inline bool SpriteInfo::has_layers() const { - return _internal_has_layers(); - } - inline void SpriteInfo::clear_layers() { - _impl_.layers_ = 0u; - _impl_._has_bits_[0] &= ~0x00000010u; - } - inline uint32_t SpriteInfo::_internal_layers() const { - return _impl_.layers_; - } - inline uint32_t SpriteInfo::layers() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.layers) - return _internal_layers(); - } - inline void SpriteInfo::_internal_set_layers(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.layers_ = value; - } - inline void SpriteInfo::set_layers(uint32_t value) { - _internal_set_layers(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.layers) - } - - // repeated uint32 sprite_id = 5; - inline int SpriteInfo::_internal_sprite_id_size() const { - return _impl_.sprite_id_.size(); - } - inline int SpriteInfo::sprite_id_size() const { - return _internal_sprite_id_size(); - } - inline void SpriteInfo::clear_sprite_id() { - _impl_.sprite_id_.Clear(); - } - inline uint32_t SpriteInfo::_internal_sprite_id(int index) const { - return _impl_.sprite_id_.Get(index); - } - inline uint32_t SpriteInfo::sprite_id(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.sprite_id) - return _internal_sprite_id(index); - } - inline void SpriteInfo::set_sprite_id(int index, uint32_t value) { - _impl_.sprite_id_.Set(index, value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.sprite_id) - } - inline void SpriteInfo::_internal_add_sprite_id(uint32_t value) { - _impl_.sprite_id_.Add(value); - } - inline void SpriteInfo::add_sprite_id(uint32_t value) { - _internal_add_sprite_id(value); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteInfo.sprite_id) - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField & - SpriteInfo::_internal_sprite_id() const { - return _impl_.sprite_id_; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField & - SpriteInfo::sprite_id() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteInfo.sprite_id) - return _internal_sprite_id(); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* - SpriteInfo::_internal_mutable_sprite_id() { - return &_impl_.sprite_id_; - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* - SpriteInfo::mutable_sprite_id() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteInfo.sprite_id) - return _internal_mutable_sprite_id(); - } - - // optional uint32 bounding_square = 7; - inline bool SpriteInfo::_internal_has_bounding_square() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - return value; - } - inline bool SpriteInfo::has_bounding_square() const { - return _internal_has_bounding_square(); - } - inline void SpriteInfo::clear_bounding_square() { - _impl_.bounding_square_ = 0u; - _impl_._has_bits_[0] &= ~0x00000020u; - } - inline uint32_t SpriteInfo::_internal_bounding_square() const { - return _impl_.bounding_square_; - } - inline uint32_t SpriteInfo::bounding_square() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.bounding_square) - return _internal_bounding_square(); - } - inline void SpriteInfo::_internal_set_bounding_square(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000020u; - _impl_.bounding_square_ = value; - } - inline void SpriteInfo::set_bounding_square(uint32_t value) { - _internal_set_bounding_square(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.bounding_square) - } - - // optional .Canary.protobuf.appearances.SpriteAnimation animation = 6; - inline bool SpriteInfo::_internal_has_animation() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.animation_ != nullptr); - return value; - } - inline bool SpriteInfo::has_animation() const { - return _internal_has_animation(); - } - inline void SpriteInfo::clear_animation() { - if (_impl_.animation_ != nullptr) { - _impl_.animation_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline const ::Canary::protobuf::appearances::SpriteAnimation &SpriteInfo::_internal_animation() const { - const ::Canary::protobuf::appearances::SpriteAnimation* p = _impl_.animation_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_SpriteAnimation_default_instance_); - } - inline const ::Canary::protobuf::appearances::SpriteAnimation &SpriteInfo::animation() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.animation) - return _internal_animation(); - } - inline void SpriteInfo::unsafe_arena_set_allocated_animation( - ::Canary::protobuf::appearances::SpriteAnimation* animation - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.animation_); - } - _impl_.animation_ = animation; - if (animation) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.SpriteInfo.animation) - } - inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::release_animation() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteAnimation* temp = _impl_.animation_; - _impl_.animation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::unsafe_arena_release_animation() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.SpriteInfo.animation) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteAnimation* temp = _impl_.animation_; - _impl_.animation_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::_internal_mutable_animation() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.animation_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpriteAnimation>(GetArenaForAllocation()); - _impl_.animation_ = p; - } - return _impl_.animation_; - } - inline ::Canary::protobuf::appearances::SpriteAnimation* SpriteInfo::mutable_animation() { - ::Canary::protobuf::appearances::SpriteAnimation* _msg = _internal_mutable_animation(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteInfo.animation) - return _msg; - } - inline void SpriteInfo::set_allocated_animation(::Canary::protobuf::appearances::SpriteAnimation* animation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.animation_; - } - if (animation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(animation); - if (message_arena != submessage_arena) { - animation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, animation, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.animation_ = animation; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.SpriteInfo.animation) - } - - // optional bool is_opaque = 8; - inline bool SpriteInfo::_internal_has_is_opaque() const { - bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; - return value; - } - inline bool SpriteInfo::has_is_opaque() const { - return _internal_has_is_opaque(); - } - inline void SpriteInfo::clear_is_opaque() { - _impl_.is_opaque_ = false; - _impl_._has_bits_[0] &= ~0x00000040u; - } - inline bool SpriteInfo::_internal_is_opaque() const { - return _impl_.is_opaque_; - } - inline bool SpriteInfo::is_opaque() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.is_opaque) - return _internal_is_opaque(); - } - inline void SpriteInfo::_internal_set_is_opaque(bool value) { - _impl_._has_bits_[0] |= 0x00000040u; - _impl_.is_opaque_ = value; - } - inline void SpriteInfo::set_is_opaque(bool value) { - _internal_set_is_opaque(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpriteInfo.is_opaque) - } - - // repeated .Canary.protobuf.appearances.Box bounding_box_per_direction = 9; - inline int SpriteInfo::_internal_bounding_box_per_direction_size() const { - return _impl_.bounding_box_per_direction_.size(); - } - inline int SpriteInfo::bounding_box_per_direction_size() const { - return _internal_bounding_box_per_direction_size(); - } - inline void SpriteInfo::clear_bounding_box_per_direction() { - _impl_.bounding_box_per_direction_.Clear(); - } - inline ::Canary::protobuf::appearances::Box* SpriteInfo::mutable_bounding_box_per_direction(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _impl_.bounding_box_per_direction_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box>* - SpriteInfo::mutable_bounding_box_per_direction() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return &_impl_.bounding_box_per_direction_; - } - inline const ::Canary::protobuf::appearances::Box &SpriteInfo::_internal_bounding_box_per_direction(int index) const { - return _impl_.bounding_box_per_direction_.Get(index); - } - inline const ::Canary::protobuf::appearances::Box &SpriteInfo::bounding_box_per_direction(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _internal_bounding_box_per_direction(index); - } - inline ::Canary::protobuf::appearances::Box* SpriteInfo::_internal_add_bounding_box_per_direction() { - return _impl_.bounding_box_per_direction_.Add(); - } - inline ::Canary::protobuf::appearances::Box* SpriteInfo::add_bounding_box_per_direction() { - ::Canary::protobuf::appearances::Box* _add = _internal_add_bounding_box_per_direction(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::Box> & - SpriteInfo::bounding_box_per_direction() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.SpriteInfo.bounding_box_per_direction) - return _impl_.bounding_box_per_direction_; - } - - // ------------------------------------------------------------------- - - // FrameGroup - - // optional .Canary.protobuf.appearances.FIXED_FRAME_GROUP fixed_frame_group = 1; - inline bool FrameGroup::_internal_has_fixed_frame_group() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool FrameGroup::has_fixed_frame_group() const { - return _internal_has_fixed_frame_group(); - } - inline void FrameGroup::clear_fixed_frame_group() { - _impl_.fixed_frame_group_ = 0; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline ::Canary::protobuf::appearances::FIXED_FRAME_GROUP FrameGroup::_internal_fixed_frame_group() const { - return static_cast<::Canary::protobuf::appearances::FIXED_FRAME_GROUP>(_impl_.fixed_frame_group_); - } - inline ::Canary::protobuf::appearances::FIXED_FRAME_GROUP FrameGroup::fixed_frame_group() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.fixed_frame_group) - return _internal_fixed_frame_group(); - } - inline void FrameGroup::_internal_set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value) { - assert(::Canary::protobuf::appearances::FIXED_FRAME_GROUP_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.fixed_frame_group_ = value; - } - inline void FrameGroup::set_fixed_frame_group(::Canary::protobuf::appearances::FIXED_FRAME_GROUP value) { - _internal_set_fixed_frame_group(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.FrameGroup.fixed_frame_group) - } - - // optional uint32 id = 2; - inline bool FrameGroup::_internal_has_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool FrameGroup::has_id() const { - return _internal_has_id(); - } - inline void FrameGroup::clear_id() { - _impl_.id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline uint32_t FrameGroup::_internal_id() const { - return _impl_.id_; - } - inline uint32_t FrameGroup::id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.id) - return _internal_id(); - } - inline void FrameGroup::_internal_set_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.id_ = value; - } - inline void FrameGroup::set_id(uint32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.FrameGroup.id) - } - - // optional .Canary.protobuf.appearances.SpriteInfo sprite_info = 3; - inline bool FrameGroup::_internal_has_sprite_info() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.sprite_info_ != nullptr); - return value; - } - inline bool FrameGroup::has_sprite_info() const { - return _internal_has_sprite_info(); - } - inline void FrameGroup::clear_sprite_info() { - if (_impl_.sprite_info_ != nullptr) { - _impl_.sprite_info_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline const ::Canary::protobuf::appearances::SpriteInfo &FrameGroup::_internal_sprite_info() const { - const ::Canary::protobuf::appearances::SpriteInfo* p = _impl_.sprite_info_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_SpriteInfo_default_instance_); - } - inline const ::Canary::protobuf::appearances::SpriteInfo &FrameGroup::sprite_info() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.FrameGroup.sprite_info) - return _internal_sprite_info(); - } - inline void FrameGroup::unsafe_arena_set_allocated_sprite_info( - ::Canary::protobuf::appearances::SpriteInfo* sprite_info - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sprite_info_); - } - _impl_.sprite_info_ = sprite_info; - if (sprite_info) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.FrameGroup.sprite_info) - } - inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::release_sprite_info() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteInfo* temp = _impl_.sprite_info_; - _impl_.sprite_info_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::unsafe_arena_release_sprite_info() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.FrameGroup.sprite_info) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::SpriteInfo* temp = _impl_.sprite_info_; - _impl_.sprite_info_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::_internal_mutable_sprite_info() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.sprite_info_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::SpriteInfo>(GetArenaForAllocation()); - _impl_.sprite_info_ = p; - } - return _impl_.sprite_info_; - } - inline ::Canary::protobuf::appearances::SpriteInfo* FrameGroup::mutable_sprite_info() { - ::Canary::protobuf::appearances::SpriteInfo* _msg = _internal_mutable_sprite_info(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.FrameGroup.sprite_info) - return _msg; - } - inline void FrameGroup::set_allocated_sprite_info(::Canary::protobuf::appearances::SpriteInfo* sprite_info) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.sprite_info_; - } - if (sprite_info) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sprite_info); - if (message_arena != submessage_arena) { - sprite_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, sprite_info, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.sprite_info_ = sprite_info; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.FrameGroup.sprite_info) - } - - // ------------------------------------------------------------------- - - // Appearance - - // optional uint32 id = 1; - inline bool Appearance::_internal_has_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool Appearance::has_id() const { - return _internal_has_id(); - } - inline void Appearance::clear_id() { - _impl_.id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline uint32_t Appearance::_internal_id() const { - return _impl_.id_; - } - inline uint32_t Appearance::id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.id) - return _internal_id(); - } - inline void Appearance::_internal_set_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.id_ = value; - } - inline void Appearance::set_id(uint32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.id) - } - - // repeated .Canary.protobuf.appearances.FrameGroup frame_group = 2; - inline int Appearance::_internal_frame_group_size() const { - return _impl_.frame_group_.size(); - } - inline int Appearance::frame_group_size() const { - return _internal_frame_group_size(); - } - inline void Appearance::clear_frame_group() { - _impl_.frame_group_.Clear(); - } - inline ::Canary::protobuf::appearances::FrameGroup* Appearance::mutable_frame_group(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.frame_group) - return _impl_.frame_group_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup>* - Appearance::mutable_frame_group() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.Appearance.frame_group) - return &_impl_.frame_group_; - } - inline const ::Canary::protobuf::appearances::FrameGroup &Appearance::_internal_frame_group(int index) const { - return _impl_.frame_group_.Get(index); - } - inline const ::Canary::protobuf::appearances::FrameGroup &Appearance::frame_group(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.frame_group) - return _internal_frame_group(index); - } - inline ::Canary::protobuf::appearances::FrameGroup* Appearance::_internal_add_frame_group() { - return _impl_.frame_group_.Add(); - } - inline ::Canary::protobuf::appearances::FrameGroup* Appearance::add_frame_group() { - ::Canary::protobuf::appearances::FrameGroup* _add = _internal_add_frame_group(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.Appearance.frame_group) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::FrameGroup> & - Appearance::frame_group() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.Appearance.frame_group) - return _impl_.frame_group_; - } - - // optional .Canary.protobuf.appearances.AppearanceFlags flags = 3; - inline bool Appearance::_internal_has_flags() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - PROTOBUF_ASSUME(!value || _impl_.flags_ != nullptr); - return value; - } - inline bool Appearance::has_flags() const { - return _internal_has_flags(); - } - inline void Appearance::clear_flags() { - if (_impl_.flags_ != nullptr) { - _impl_.flags_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlags &Appearance::_internal_flags() const { - const ::Canary::protobuf::appearances::AppearanceFlags* p = _impl_.flags_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlags_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlags &Appearance::flags() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.flags) - return _internal_flags(); - } - inline void Appearance::unsafe_arena_set_allocated_flags( - ::Canary::protobuf::appearances::AppearanceFlags* flags - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.flags_); - } - _impl_.flags_ = flags; - if (flags) { - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.Appearance.flags) - } - inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::release_flags() { - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlags* temp = _impl_.flags_; - _impl_.flags_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::unsafe_arena_release_flags() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.flags) - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlags* temp = _impl_.flags_; - _impl_.flags_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::_internal_mutable_flags() { - _impl_._has_bits_[0] |= 0x00000004u; - if (_impl_.flags_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlags>(GetArenaForAllocation()); - _impl_.flags_ = p; - } - return _impl_.flags_; - } - inline ::Canary::protobuf::appearances::AppearanceFlags* Appearance::mutable_flags() { - ::Canary::protobuf::appearances::AppearanceFlags* _msg = _internal_mutable_flags(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.flags) - return _msg; - } - inline void Appearance::set_allocated_flags(::Canary::protobuf::appearances::AppearanceFlags* flags) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.flags_; - } - if (flags) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(flags); - if (message_arena != submessage_arena) { - flags = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, flags, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - _impl_.flags_ = flags; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.flags) - } - - // optional bytes name = 4; - inline bool Appearance::_internal_has_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool Appearance::has_name() const { - return _internal_has_name(); - } - inline void Appearance::clear_name() { - _impl_.name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline const std::string &Appearance::name() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.name) - return _internal_name(); - } - template - inline PROTOBUF_ALWAYS_INLINE void Appearance::set_name(ArgT0 &&arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.name) - } - inline std::string* Appearance::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.name) - return _s; - } - inline const std::string &Appearance::_internal_name() const { - return _impl_.name_.Get(); - } - inline void Appearance::_internal_set_name(const std::string &value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.Set(value, GetArenaForAllocation()); - } - inline std::string* Appearance::_internal_mutable_name() { - _impl_._has_bits_[0] |= 0x00000001u; - return _impl_.name_.Mutable(GetArenaForAllocation()); - } - inline std::string* Appearance::release_name() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.name) - if (!_internal_has_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000001u; - auto* p = _impl_.name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; - } - inline void Appearance::set_allocated_name(std::string* name) { - if (name != nullptr) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.name) - } - - // optional bytes description = 5; - inline bool Appearance::_internal_has_description() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool Appearance::has_description() const { - return _internal_has_description(); - } - inline void Appearance::clear_description() { - _impl_.description_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline const std::string &Appearance::description() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.Appearance.description) - return _internal_description(); - } - template - inline PROTOBUF_ALWAYS_INLINE void Appearance::set_description(ArgT0 &&arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.description_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.Appearance.description) - } - inline std::string* Appearance::mutable_description() { - std::string* _s = _internal_mutable_description(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.Appearance.description) - return _s; - } - inline const std::string &Appearance::_internal_description() const { - return _impl_.description_.Get(); - } - inline void Appearance::_internal_set_description(const std::string &value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.description_.Set(value, GetArenaForAllocation()); - } - inline std::string* Appearance::_internal_mutable_description() { - _impl_._has_bits_[0] |= 0x00000002u; - return _impl_.description_.Mutable(GetArenaForAllocation()); - } - inline std::string* Appearance::release_description() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.Appearance.description) - if (!_internal_has_description()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000002u; - auto* p = _impl_.description_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.description_.IsDefault()) { - _impl_.description_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; - } - inline void Appearance::set_allocated_description(std::string* description) { - if (description != nullptr) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.description_.SetAllocated(description, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.description_.IsDefault()) { - _impl_.description_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.Appearance.description) - } - - // ------------------------------------------------------------------- - - // AppearanceFlags - - // optional .Canary.protobuf.appearances.AppearanceFlagBank bank = 1; - inline bool AppearanceFlags::_internal_has_bank() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - PROTOBUF_ASSUME(!value || _impl_.bank_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_bank() const { - return _internal_has_bank(); - } - inline void AppearanceFlags::clear_bank() { - if (_impl_.bank_ != nullptr) { - _impl_.bank_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagBank &AppearanceFlags::_internal_bank() const { - const ::Canary::protobuf::appearances::AppearanceFlagBank* p = _impl_.bank_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagBank_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagBank &AppearanceFlags::bank() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.bank) - return _internal_bank(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_bank( - ::Canary::protobuf::appearances::AppearanceFlagBank* bank - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.bank_); - } - _impl_.bank_ = bank; - if (bank) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.bank) - } - inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::release_bank() { - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::AppearanceFlagBank* temp = _impl_.bank_; - _impl_.bank_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::unsafe_arena_release_bank() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.bank) - _impl_._has_bits_[0] &= ~0x00000001u; - ::Canary::protobuf::appearances::AppearanceFlagBank* temp = _impl_.bank_; - _impl_.bank_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::_internal_mutable_bank() { - _impl_._has_bits_[0] |= 0x00000001u; - if (_impl_.bank_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagBank>(GetArenaForAllocation()); - _impl_.bank_ = p; - } - return _impl_.bank_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagBank* AppearanceFlags::mutable_bank() { - ::Canary::protobuf::appearances::AppearanceFlagBank* _msg = _internal_mutable_bank(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.bank) - return _msg; - } - inline void AppearanceFlags::set_allocated_bank(::Canary::protobuf::appearances::AppearanceFlagBank* bank) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.bank_; - } - if (bank) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(bank); - if (message_arena != submessage_arena) { - bank = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, bank, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.bank_ = bank; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.bank) - } - - // optional bool clip = 2; - inline bool AppearanceFlags::_internal_has_clip() const { - bool value = (_impl_._has_bits_[0] & 0x00008000u) != 0; - return value; - } - inline bool AppearanceFlags::has_clip() const { - return _internal_has_clip(); - } - inline void AppearanceFlags::clear_clip() { - _impl_.clip_ = false; - _impl_._has_bits_[0] &= ~0x00008000u; - } - inline bool AppearanceFlags::_internal_clip() const { - return _impl_.clip_; - } - inline bool AppearanceFlags::clip() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clip) - return _internal_clip(); - } - inline void AppearanceFlags::_internal_set_clip(bool value) { - _impl_._has_bits_[0] |= 0x00008000u; - _impl_.clip_ = value; - } - inline void AppearanceFlags::set_clip(bool value) { - _internal_set_clip(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.clip) - } - - // optional bool bottom = 3; - inline bool AppearanceFlags::_internal_has_bottom() const { - bool value = (_impl_._has_bits_[0] & 0x00010000u) != 0; - return value; - } - inline bool AppearanceFlags::has_bottom() const { - return _internal_has_bottom(); - } - inline void AppearanceFlags::clear_bottom() { - _impl_.bottom_ = false; - _impl_._has_bits_[0] &= ~0x00010000u; - } - inline bool AppearanceFlags::_internal_bottom() const { - return _impl_.bottom_; - } - inline bool AppearanceFlags::bottom() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.bottom) - return _internal_bottom(); - } - inline void AppearanceFlags::_internal_set_bottom(bool value) { - _impl_._has_bits_[0] |= 0x00010000u; - _impl_.bottom_ = value; - } - inline void AppearanceFlags::set_bottom(bool value) { - _internal_set_bottom(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.bottom) - } - - // optional bool top = 4; - inline bool AppearanceFlags::_internal_has_top() const { - bool value = (_impl_._has_bits_[0] & 0x00020000u) != 0; - return value; - } - inline bool AppearanceFlags::has_top() const { - return _internal_has_top(); - } - inline void AppearanceFlags::clear_top() { - _impl_.top_ = false; - _impl_._has_bits_[0] &= ~0x00020000u; - } - inline bool AppearanceFlags::_internal_top() const { - return _impl_.top_; - } - inline bool AppearanceFlags::top() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.top) - return _internal_top(); - } - inline void AppearanceFlags::_internal_set_top(bool value) { - _impl_._has_bits_[0] |= 0x00020000u; - _impl_.top_ = value; - } - inline void AppearanceFlags::set_top(bool value) { - _internal_set_top(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.top) - } - - // optional bool container = 5; - inline bool AppearanceFlags::_internal_has_container() const { - bool value = (_impl_._has_bits_[0] & 0x00040000u) != 0; - return value; - } - inline bool AppearanceFlags::has_container() const { - return _internal_has_container(); - } - inline void AppearanceFlags::clear_container() { - _impl_.container_ = false; - _impl_._has_bits_[0] &= ~0x00040000u; - } - inline bool AppearanceFlags::_internal_container() const { - return _impl_.container_; - } - inline bool AppearanceFlags::container() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.container) - return _internal_container(); - } - inline void AppearanceFlags::_internal_set_container(bool value) { - _impl_._has_bits_[0] |= 0x00040000u; - _impl_.container_ = value; - } - inline void AppearanceFlags::set_container(bool value) { - _internal_set_container(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.container) - } - - // optional bool cumulative = 6; - inline bool AppearanceFlags::_internal_has_cumulative() const { - bool value = (_impl_._has_bits_[0] & 0x00080000u) != 0; - return value; - } - inline bool AppearanceFlags::has_cumulative() const { - return _internal_has_cumulative(); - } - inline void AppearanceFlags::clear_cumulative() { - _impl_.cumulative_ = false; - _impl_._has_bits_[0] &= ~0x00080000u; - } - inline bool AppearanceFlags::_internal_cumulative() const { - return _impl_.cumulative_; - } - inline bool AppearanceFlags::cumulative() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.cumulative) - return _internal_cumulative(); - } - inline void AppearanceFlags::_internal_set_cumulative(bool value) { - _impl_._has_bits_[0] |= 0x00080000u; - _impl_.cumulative_ = value; - } - inline void AppearanceFlags::set_cumulative(bool value) { - _internal_set_cumulative(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.cumulative) - } - - // optional bool usable = 7; - inline bool AppearanceFlags::_internal_has_usable() const { - bool value = (_impl_._has_bits_[0] & 0x00100000u) != 0; - return value; - } - inline bool AppearanceFlags::has_usable() const { - return _internal_has_usable(); - } - inline void AppearanceFlags::clear_usable() { - _impl_.usable_ = false; - _impl_._has_bits_[0] &= ~0x00100000u; - } - inline bool AppearanceFlags::_internal_usable() const { - return _impl_.usable_; - } - inline bool AppearanceFlags::usable() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.usable) - return _internal_usable(); - } - inline void AppearanceFlags::_internal_set_usable(bool value) { - _impl_._has_bits_[0] |= 0x00100000u; - _impl_.usable_ = value; - } - inline void AppearanceFlags::set_usable(bool value) { - _internal_set_usable(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.usable) - } - - // optional bool forceuse = 8; - inline bool AppearanceFlags::_internal_has_forceuse() const { - bool value = (_impl_._has_bits_[0] & 0x00200000u) != 0; - return value; - } - inline bool AppearanceFlags::has_forceuse() const { - return _internal_has_forceuse(); - } - inline void AppearanceFlags::clear_forceuse() { - _impl_.forceuse_ = false; - _impl_._has_bits_[0] &= ~0x00200000u; - } - inline bool AppearanceFlags::_internal_forceuse() const { - return _impl_.forceuse_; - } - inline bool AppearanceFlags::forceuse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.forceuse) - return _internal_forceuse(); - } - inline void AppearanceFlags::_internal_set_forceuse(bool value) { - _impl_._has_bits_[0] |= 0x00200000u; - _impl_.forceuse_ = value; - } - inline void AppearanceFlags::set_forceuse(bool value) { - _internal_set_forceuse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.forceuse) - } - - // optional bool multiuse = 9; - inline bool AppearanceFlags::_internal_has_multiuse() const { - bool value = (_impl_._has_bits_[0] & 0x00400000u) != 0; - return value; - } - inline bool AppearanceFlags::has_multiuse() const { - return _internal_has_multiuse(); - } - inline void AppearanceFlags::clear_multiuse() { - _impl_.multiuse_ = false; - _impl_._has_bits_[0] &= ~0x00400000u; - } - inline bool AppearanceFlags::_internal_multiuse() const { - return _impl_.multiuse_; - } - inline bool AppearanceFlags::multiuse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.multiuse) - return _internal_multiuse(); - } - inline void AppearanceFlags::_internal_set_multiuse(bool value) { - _impl_._has_bits_[0] |= 0x00400000u; - _impl_.multiuse_ = value; - } - inline void AppearanceFlags::set_multiuse(bool value) { - _internal_set_multiuse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.multiuse) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagWrite write = 10; - inline bool AppearanceFlags::_internal_has_write() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - PROTOBUF_ASSUME(!value || _impl_.write_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_write() const { - return _internal_has_write(); - } - inline void AppearanceFlags::clear_write() { - if (_impl_.write_ != nullptr) { - _impl_.write_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagWrite &AppearanceFlags::_internal_write() const { - const ::Canary::protobuf::appearances::AppearanceFlagWrite* p = _impl_.write_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagWrite_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagWrite &AppearanceFlags::write() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.write) - return _internal_write(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_write( - ::Canary::protobuf::appearances::AppearanceFlagWrite* write - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.write_); - } - _impl_.write_ = write; - if (write) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write) - } - inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::release_write() { - _impl_._has_bits_[0] &= ~0x00000002u; - ::Canary::protobuf::appearances::AppearanceFlagWrite* temp = _impl_.write_; - _impl_.write_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::unsafe_arena_release_write() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.write) - _impl_._has_bits_[0] &= ~0x00000002u; - ::Canary::protobuf::appearances::AppearanceFlagWrite* temp = _impl_.write_; - _impl_.write_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::_internal_mutable_write() { - _impl_._has_bits_[0] |= 0x00000002u; - if (_impl_.write_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWrite>(GetArenaForAllocation()); - _impl_.write_ = p; - } - return _impl_.write_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagWrite* AppearanceFlags::mutable_write() { - ::Canary::protobuf::appearances::AppearanceFlagWrite* _msg = _internal_mutable_write(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.write) - return _msg; - } - inline void AppearanceFlags::set_allocated_write(::Canary::protobuf::appearances::AppearanceFlagWrite* write) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.write_; - } - if (write) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(write); - if (message_arena != submessage_arena) { - write = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, write, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.write_ = write; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagWriteOnce write_once = 11; - inline bool AppearanceFlags::_internal_has_write_once() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - PROTOBUF_ASSUME(!value || _impl_.write_once_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_write_once() const { - return _internal_has_write_once(); - } - inline void AppearanceFlags::clear_write_once() { - if (_impl_.write_once_ != nullptr) { - _impl_.write_once_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &AppearanceFlags::_internal_write_once() const { - const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* p = _impl_.write_once_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagWriteOnce_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagWriteOnce &AppearanceFlags::write_once() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.write_once) - return _internal_write_once(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_write_once( - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.write_once_); - } - _impl_.write_once_ = write_once; - if (write_once) { - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write_once) - } - inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::release_write_once() { - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* temp = _impl_.write_once_; - _impl_.write_once_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::unsafe_arena_release_write_once() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.write_once) - _impl_._has_bits_[0] &= ~0x00000004u; - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* temp = _impl_.write_once_; - _impl_.write_once_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::_internal_mutable_write_once() { - _impl_._has_bits_[0] |= 0x00000004u; - if (_impl_.write_once_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagWriteOnce>(GetArenaForAllocation()); - _impl_.write_once_ = p; - } - return _impl_.write_once_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* AppearanceFlags::mutable_write_once() { - ::Canary::protobuf::appearances::AppearanceFlagWriteOnce* _msg = _internal_mutable_write_once(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.write_once) - return _msg; - } - inline void AppearanceFlags::set_allocated_write_once(::Canary::protobuf::appearances::AppearanceFlagWriteOnce* write_once) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.write_once_; - } - if (write_once) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(write_once); - if (message_arena != submessage_arena) { - write_once = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, write_once, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - _impl_.write_once_ = write_once; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.write_once) - } - - // optional bool liquidpool = 12; - inline bool AppearanceFlags::_internal_has_liquidpool() const { - bool value = (_impl_._has_bits_[0] & 0x00800000u) != 0; - return value; - } - inline bool AppearanceFlags::has_liquidpool() const { - return _internal_has_liquidpool(); - } - inline void AppearanceFlags::clear_liquidpool() { - _impl_.liquidpool_ = false; - _impl_._has_bits_[0] &= ~0x00800000u; - } - inline bool AppearanceFlags::_internal_liquidpool() const { - return _impl_.liquidpool_; - } - inline bool AppearanceFlags::liquidpool() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.liquidpool) - return _internal_liquidpool(); - } - inline void AppearanceFlags::_internal_set_liquidpool(bool value) { - _impl_._has_bits_[0] |= 0x00800000u; - _impl_.liquidpool_ = value; - } - inline void AppearanceFlags::set_liquidpool(bool value) { - _internal_set_liquidpool(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.liquidpool) - } - - // optional bool unpass = 13; - inline bool AppearanceFlags::_internal_has_unpass() const { - bool value = (_impl_._has_bits_[0] & 0x01000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_unpass() const { - return _internal_has_unpass(); - } - inline void AppearanceFlags::clear_unpass() { - _impl_.unpass_ = false; - _impl_._has_bits_[0] &= ~0x01000000u; - } - inline bool AppearanceFlags::_internal_unpass() const { - return _impl_.unpass_; - } - inline bool AppearanceFlags::unpass() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unpass) - return _internal_unpass(); - } - inline void AppearanceFlags::_internal_set_unpass(bool value) { - _impl_._has_bits_[0] |= 0x01000000u; - _impl_.unpass_ = value; - } - inline void AppearanceFlags::set_unpass(bool value) { - _internal_set_unpass(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unpass) - } - - // optional bool unmove = 14; - inline bool AppearanceFlags::_internal_has_unmove() const { - bool value = (_impl_._has_bits_[0] & 0x02000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_unmove() const { - return _internal_has_unmove(); - } - inline void AppearanceFlags::clear_unmove() { - _impl_.unmove_ = false; - _impl_._has_bits_[0] &= ~0x02000000u; - } - inline bool AppearanceFlags::_internal_unmove() const { - return _impl_.unmove_; - } - inline bool AppearanceFlags::unmove() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unmove) - return _internal_unmove(); - } - inline void AppearanceFlags::_internal_set_unmove(bool value) { - _impl_._has_bits_[0] |= 0x02000000u; - _impl_.unmove_ = value; - } - inline void AppearanceFlags::set_unmove(bool value) { - _internal_set_unmove(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unmove) - } - - // optional bool unsight = 15; - inline bool AppearanceFlags::_internal_has_unsight() const { - bool value = (_impl_._has_bits_[0] & 0x04000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_unsight() const { - return _internal_has_unsight(); - } - inline void AppearanceFlags::clear_unsight() { - _impl_.unsight_ = false; - _impl_._has_bits_[0] &= ~0x04000000u; - } - inline bool AppearanceFlags::_internal_unsight() const { - return _impl_.unsight_; - } - inline bool AppearanceFlags::unsight() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unsight) - return _internal_unsight(); - } - inline void AppearanceFlags::_internal_set_unsight(bool value) { - _impl_._has_bits_[0] |= 0x04000000u; - _impl_.unsight_ = value; - } - inline void AppearanceFlags::set_unsight(bool value) { - _internal_set_unsight(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unsight) - } - - // optional bool avoid = 16; - inline bool AppearanceFlags::_internal_has_avoid() const { - bool value = (_impl_._has_bits_[0] & 0x08000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_avoid() const { - return _internal_has_avoid(); - } - inline void AppearanceFlags::clear_avoid() { - _impl_.avoid_ = false; - _impl_._has_bits_[0] &= ~0x08000000u; - } - inline bool AppearanceFlags::_internal_avoid() const { - return _impl_.avoid_; - } - inline bool AppearanceFlags::avoid() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.avoid) - return _internal_avoid(); - } - inline void AppearanceFlags::_internal_set_avoid(bool value) { - _impl_._has_bits_[0] |= 0x08000000u; - _impl_.avoid_ = value; - } - inline void AppearanceFlags::set_avoid(bool value) { - _internal_set_avoid(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.avoid) - } - - // optional bool no_movement_animation = 17; - inline bool AppearanceFlags::_internal_has_no_movement_animation() const { - bool value = (_impl_._has_bits_[0] & 0x10000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_no_movement_animation() const { - return _internal_has_no_movement_animation(); - } - inline void AppearanceFlags::clear_no_movement_animation() { - _impl_.no_movement_animation_ = false; - _impl_._has_bits_[0] &= ~0x10000000u; - } - inline bool AppearanceFlags::_internal_no_movement_animation() const { - return _impl_.no_movement_animation_; - } - inline bool AppearanceFlags::no_movement_animation() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.no_movement_animation) - return _internal_no_movement_animation(); - } - inline void AppearanceFlags::_internal_set_no_movement_animation(bool value) { - _impl_._has_bits_[0] |= 0x10000000u; - _impl_.no_movement_animation_ = value; - } - inline void AppearanceFlags::set_no_movement_animation(bool value) { - _internal_set_no_movement_animation(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.no_movement_animation) - } - - // optional bool take = 18; - inline bool AppearanceFlags::_internal_has_take() const { - bool value = (_impl_._has_bits_[0] & 0x20000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_take() const { - return _internal_has_take(); - } - inline void AppearanceFlags::clear_take() { - _impl_.take_ = false; - _impl_._has_bits_[0] &= ~0x20000000u; - } - inline bool AppearanceFlags::_internal_take() const { - return _impl_.take_; - } - inline bool AppearanceFlags::take() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.take) - return _internal_take(); - } - inline void AppearanceFlags::_internal_set_take(bool value) { - _impl_._has_bits_[0] |= 0x20000000u; - _impl_.take_ = value; - } - inline void AppearanceFlags::set_take(bool value) { - _internal_set_take(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.take) - } - - // optional bool liquidcontainer = 19; - inline bool AppearanceFlags::_internal_has_liquidcontainer() const { - bool value = (_impl_._has_bits_[0] & 0x40000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_liquidcontainer() const { - return _internal_has_liquidcontainer(); - } - inline void AppearanceFlags::clear_liquidcontainer() { - _impl_.liquidcontainer_ = false; - _impl_._has_bits_[0] &= ~0x40000000u; - } - inline bool AppearanceFlags::_internal_liquidcontainer() const { - return _impl_.liquidcontainer_; - } - inline bool AppearanceFlags::liquidcontainer() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.liquidcontainer) - return _internal_liquidcontainer(); - } - inline void AppearanceFlags::_internal_set_liquidcontainer(bool value) { - _impl_._has_bits_[0] |= 0x40000000u; - _impl_.liquidcontainer_ = value; - } - inline void AppearanceFlags::set_liquidcontainer(bool value) { - _internal_set_liquidcontainer(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.liquidcontainer) - } - - // optional bool hang = 20; - inline bool AppearanceFlags::_internal_has_hang() const { - bool value = (_impl_._has_bits_[0] & 0x80000000u) != 0; - return value; - } - inline bool AppearanceFlags::has_hang() const { - return _internal_has_hang(); - } - inline void AppearanceFlags::clear_hang() { - _impl_.hang_ = false; - _impl_._has_bits_[0] &= ~0x80000000u; - } - inline bool AppearanceFlags::_internal_hang() const { - return _impl_.hang_; - } - inline bool AppearanceFlags::hang() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.hang) - return _internal_hang(); - } - inline void AppearanceFlags::_internal_set_hang(bool value) { - _impl_._has_bits_[0] |= 0x80000000u; - _impl_.hang_ = value; - } - inline void AppearanceFlags::set_hang(bool value) { - _internal_set_hang(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.hang) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagHook hook = 21; - inline bool AppearanceFlags::_internal_has_hook() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - PROTOBUF_ASSUME(!value || _impl_.hook_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_hook() const { - return _internal_has_hook(); - } - inline void AppearanceFlags::clear_hook() { - if (_impl_.hook_ != nullptr) { - _impl_.hook_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagHook &AppearanceFlags::_internal_hook() const { - const ::Canary::protobuf::appearances::AppearanceFlagHook* p = _impl_.hook_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagHook_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagHook &AppearanceFlags::hook() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.hook) - return _internal_hook(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_hook( - ::Canary::protobuf::appearances::AppearanceFlagHook* hook - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.hook_); - } - _impl_.hook_ = hook; - if (hook) { - _impl_._has_bits_[0] |= 0x00000008u; - } else { - _impl_._has_bits_[0] &= ~0x00000008u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.hook) - } - inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::release_hook() { - _impl_._has_bits_[0] &= ~0x00000008u; - ::Canary::protobuf::appearances::AppearanceFlagHook* temp = _impl_.hook_; - _impl_.hook_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::unsafe_arena_release_hook() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.hook) - _impl_._has_bits_[0] &= ~0x00000008u; - ::Canary::protobuf::appearances::AppearanceFlagHook* temp = _impl_.hook_; - _impl_.hook_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::_internal_mutable_hook() { - _impl_._has_bits_[0] |= 0x00000008u; - if (_impl_.hook_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHook>(GetArenaForAllocation()); - _impl_.hook_ = p; - } - return _impl_.hook_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagHook* AppearanceFlags::mutable_hook() { - ::Canary::protobuf::appearances::AppearanceFlagHook* _msg = _internal_mutable_hook(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.hook) - return _msg; - } - inline void AppearanceFlags::set_allocated_hook(::Canary::protobuf::appearances::AppearanceFlagHook* hook) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.hook_; - } - if (hook) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(hook); - if (message_arena != submessage_arena) { - hook = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, hook, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000008u; - } else { - _impl_._has_bits_[0] &= ~0x00000008u; - } - _impl_.hook_ = hook; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.hook) - } - - // optional bool rotate = 22; - inline bool AppearanceFlags::_internal_has_rotate() const { - bool value = (_impl_._has_bits_[1] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlags::has_rotate() const { - return _internal_has_rotate(); - } - inline void AppearanceFlags::clear_rotate() { - _impl_.rotate_ = false; - _impl_._has_bits_[1] &= ~0x00000001u; - } - inline bool AppearanceFlags::_internal_rotate() const { - return _impl_.rotate_; - } - inline bool AppearanceFlags::rotate() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.rotate) - return _internal_rotate(); - } - inline void AppearanceFlags::_internal_set_rotate(bool value) { - _impl_._has_bits_[1] |= 0x00000001u; - _impl_.rotate_ = value; - } - inline void AppearanceFlags::set_rotate(bool value) { - _internal_set_rotate(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.rotate) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagLight light = 23; - inline bool AppearanceFlags::_internal_has_light() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - PROTOBUF_ASSUME(!value || _impl_.light_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_light() const { - return _internal_has_light(); - } - inline void AppearanceFlags::clear_light() { - if (_impl_.light_ != nullptr) { - _impl_.light_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000010u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagLight &AppearanceFlags::_internal_light() const { - const ::Canary::protobuf::appearances::AppearanceFlagLight* p = _impl_.light_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagLight_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagLight &AppearanceFlags::light() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.light) - return _internal_light(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_light( - ::Canary::protobuf::appearances::AppearanceFlagLight* light - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.light_); - } - _impl_.light_ = light; - if (light) { - _impl_._has_bits_[0] |= 0x00000010u; - } else { - _impl_._has_bits_[0] &= ~0x00000010u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.light) - } - inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::release_light() { - _impl_._has_bits_[0] &= ~0x00000010u; - ::Canary::protobuf::appearances::AppearanceFlagLight* temp = _impl_.light_; - _impl_.light_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::unsafe_arena_release_light() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.light) - _impl_._has_bits_[0] &= ~0x00000010u; - ::Canary::protobuf::appearances::AppearanceFlagLight* temp = _impl_.light_; - _impl_.light_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::_internal_mutable_light() { - _impl_._has_bits_[0] |= 0x00000010u; - if (_impl_.light_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLight>(GetArenaForAllocation()); - _impl_.light_ = p; - } - return _impl_.light_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagLight* AppearanceFlags::mutable_light() { - ::Canary::protobuf::appearances::AppearanceFlagLight* _msg = _internal_mutable_light(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.light) - return _msg; - } - inline void AppearanceFlags::set_allocated_light(::Canary::protobuf::appearances::AppearanceFlagLight* light) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.light_; - } - if (light) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(light); - if (message_arena != submessage_arena) { - light = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, light, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000010u; - } else { - _impl_._has_bits_[0] &= ~0x00000010u; - } - _impl_.light_ = light; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.light) - } - - // optional bool dont_hide = 24; - inline bool AppearanceFlags::_internal_has_dont_hide() const { - bool value = (_impl_._has_bits_[1] & 0x00000002u) != 0; - return value; - } - inline bool AppearanceFlags::has_dont_hide() const { - return _internal_has_dont_hide(); - } - inline void AppearanceFlags::clear_dont_hide() { - _impl_.dont_hide_ = false; - _impl_._has_bits_[1] &= ~0x00000002u; - } - inline bool AppearanceFlags::_internal_dont_hide() const { - return _impl_.dont_hide_; - } - inline bool AppearanceFlags::dont_hide() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.dont_hide) - return _internal_dont_hide(); - } - inline void AppearanceFlags::_internal_set_dont_hide(bool value) { - _impl_._has_bits_[1] |= 0x00000002u; - _impl_.dont_hide_ = value; - } - inline void AppearanceFlags::set_dont_hide(bool value) { - _internal_set_dont_hide(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.dont_hide) - } - - // optional bool translucent = 25; - inline bool AppearanceFlags::_internal_has_translucent() const { - bool value = (_impl_._has_bits_[1] & 0x00000004u) != 0; - return value; - } - inline bool AppearanceFlags::has_translucent() const { - return _internal_has_translucent(); - } - inline void AppearanceFlags::clear_translucent() { - _impl_.translucent_ = false; - _impl_._has_bits_[1] &= ~0x00000004u; - } - inline bool AppearanceFlags::_internal_translucent() const { - return _impl_.translucent_; - } - inline bool AppearanceFlags::translucent() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.translucent) - return _internal_translucent(); - } - inline void AppearanceFlags::_internal_set_translucent(bool value) { - _impl_._has_bits_[1] |= 0x00000004u; - _impl_.translucent_ = value; - } - inline void AppearanceFlags::set_translucent(bool value) { - _internal_set_translucent(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.translucent) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagShift shift = 26; - inline bool AppearanceFlags::_internal_has_shift() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - PROTOBUF_ASSUME(!value || _impl_.shift_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_shift() const { - return _internal_has_shift(); - } - inline void AppearanceFlags::clear_shift() { - if (_impl_.shift_ != nullptr) { - _impl_.shift_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000020u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagShift &AppearanceFlags::_internal_shift() const { - const ::Canary::protobuf::appearances::AppearanceFlagShift* p = _impl_.shift_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagShift_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagShift &AppearanceFlags::shift() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.shift) - return _internal_shift(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_shift( - ::Canary::protobuf::appearances::AppearanceFlagShift* shift - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.shift_); - } - _impl_.shift_ = shift; - if (shift) { - _impl_._has_bits_[0] |= 0x00000020u; - } else { - _impl_._has_bits_[0] &= ~0x00000020u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.shift) - } - inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::release_shift() { - _impl_._has_bits_[0] &= ~0x00000020u; - ::Canary::protobuf::appearances::AppearanceFlagShift* temp = _impl_.shift_; - _impl_.shift_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::unsafe_arena_release_shift() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.shift) - _impl_._has_bits_[0] &= ~0x00000020u; - ::Canary::protobuf::appearances::AppearanceFlagShift* temp = _impl_.shift_; - _impl_.shift_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::_internal_mutable_shift() { - _impl_._has_bits_[0] |= 0x00000020u; - if (_impl_.shift_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagShift>(GetArenaForAllocation()); - _impl_.shift_ = p; - } - return _impl_.shift_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagShift* AppearanceFlags::mutable_shift() { - ::Canary::protobuf::appearances::AppearanceFlagShift* _msg = _internal_mutable_shift(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.shift) - return _msg; - } - inline void AppearanceFlags::set_allocated_shift(::Canary::protobuf::appearances::AppearanceFlagShift* shift) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.shift_; - } - if (shift) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(shift); - if (message_arena != submessage_arena) { - shift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, shift, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000020u; - } else { - _impl_._has_bits_[0] &= ~0x00000020u; - } - _impl_.shift_ = shift; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.shift) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagHeight height = 27; - inline bool AppearanceFlags::_internal_has_height() const { - bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; - PROTOBUF_ASSUME(!value || _impl_.height_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_height() const { - return _internal_has_height(); - } - inline void AppearanceFlags::clear_height() { - if (_impl_.height_ != nullptr) { - _impl_.height_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000040u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagHeight &AppearanceFlags::_internal_height() const { - const ::Canary::protobuf::appearances::AppearanceFlagHeight* p = _impl_.height_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagHeight_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagHeight &AppearanceFlags::height() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.height) - return _internal_height(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_height( - ::Canary::protobuf::appearances::AppearanceFlagHeight* height - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.height_); - } - _impl_.height_ = height; - if (height) { - _impl_._has_bits_[0] |= 0x00000040u; - } else { - _impl_._has_bits_[0] &= ~0x00000040u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.height) - } - inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::release_height() { - _impl_._has_bits_[0] &= ~0x00000040u; - ::Canary::protobuf::appearances::AppearanceFlagHeight* temp = _impl_.height_; - _impl_.height_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::unsafe_arena_release_height() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.height) - _impl_._has_bits_[0] &= ~0x00000040u; - ::Canary::protobuf::appearances::AppearanceFlagHeight* temp = _impl_.height_; - _impl_.height_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::_internal_mutable_height() { - _impl_._has_bits_[0] |= 0x00000040u; - if (_impl_.height_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagHeight>(GetArenaForAllocation()); - _impl_.height_ = p; - } - return _impl_.height_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagHeight* AppearanceFlags::mutable_height() { - ::Canary::protobuf::appearances::AppearanceFlagHeight* _msg = _internal_mutable_height(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.height) - return _msg; - } - inline void AppearanceFlags::set_allocated_height(::Canary::protobuf::appearances::AppearanceFlagHeight* height) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.height_; - } - if (height) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(height); - if (message_arena != submessage_arena) { - height = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, height, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000040u; - } else { - _impl_._has_bits_[0] &= ~0x00000040u; - } - _impl_.height_ = height; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.height) - } - - // optional bool lying_object = 28; - inline bool AppearanceFlags::_internal_has_lying_object() const { - bool value = (_impl_._has_bits_[1] & 0x00000008u) != 0; - return value; - } - inline bool AppearanceFlags::has_lying_object() const { - return _internal_has_lying_object(); - } - inline void AppearanceFlags::clear_lying_object() { - _impl_.lying_object_ = false; - _impl_._has_bits_[1] &= ~0x00000008u; - } - inline bool AppearanceFlags::_internal_lying_object() const { - return _impl_.lying_object_; - } - inline bool AppearanceFlags::lying_object() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.lying_object) - return _internal_lying_object(); - } - inline void AppearanceFlags::_internal_set_lying_object(bool value) { - _impl_._has_bits_[1] |= 0x00000008u; - _impl_.lying_object_ = value; - } - inline void AppearanceFlags::set_lying_object(bool value) { - _internal_set_lying_object(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.lying_object) - } - - // optional bool animate_always = 29; - inline bool AppearanceFlags::_internal_has_animate_always() const { - bool value = (_impl_._has_bits_[1] & 0x00000010u) != 0; - return value; - } - inline bool AppearanceFlags::has_animate_always() const { - return _internal_has_animate_always(); - } - inline void AppearanceFlags::clear_animate_always() { - _impl_.animate_always_ = false; - _impl_._has_bits_[1] &= ~0x00000010u; - } - inline bool AppearanceFlags::_internal_animate_always() const { - return _impl_.animate_always_; - } - inline bool AppearanceFlags::animate_always() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.animate_always) - return _internal_animate_always(); - } - inline void AppearanceFlags::_internal_set_animate_always(bool value) { - _impl_._has_bits_[1] |= 0x00000010u; - _impl_.animate_always_ = value; - } - inline void AppearanceFlags::set_animate_always(bool value) { - _internal_set_animate_always(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.animate_always) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagAutomap automap = 30; - inline bool AppearanceFlags::_internal_has_automap() const { - bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0; - PROTOBUF_ASSUME(!value || _impl_.automap_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_automap() const { - return _internal_has_automap(); - } - inline void AppearanceFlags::clear_automap() { - if (_impl_.automap_ != nullptr) { - _impl_.automap_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000080u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagAutomap &AppearanceFlags::_internal_automap() const { - const ::Canary::protobuf::appearances::AppearanceFlagAutomap* p = _impl_.automap_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagAutomap_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagAutomap &AppearanceFlags::automap() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.automap) - return _internal_automap(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_automap( - ::Canary::protobuf::appearances::AppearanceFlagAutomap* automap - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.automap_); - } - _impl_.automap_ = automap; - if (automap) { - _impl_._has_bits_[0] |= 0x00000080u; - } else { - _impl_._has_bits_[0] &= ~0x00000080u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.automap) - } - inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::release_automap() { - _impl_._has_bits_[0] &= ~0x00000080u; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* temp = _impl_.automap_; - _impl_.automap_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::unsafe_arena_release_automap() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.automap) - _impl_._has_bits_[0] &= ~0x00000080u; - ::Canary::protobuf::appearances::AppearanceFlagAutomap* temp = _impl_.automap_; - _impl_.automap_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::_internal_mutable_automap() { - _impl_._has_bits_[0] |= 0x00000080u; - if (_impl_.automap_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagAutomap>(GetArenaForAllocation()); - _impl_.automap_ = p; - } - return _impl_.automap_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagAutomap* AppearanceFlags::mutable_automap() { - ::Canary::protobuf::appearances::AppearanceFlagAutomap* _msg = _internal_mutable_automap(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.automap) - return _msg; - } - inline void AppearanceFlags::set_allocated_automap(::Canary::protobuf::appearances::AppearanceFlagAutomap* automap) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.automap_; - } - if (automap) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(automap); - if (message_arena != submessage_arena) { - automap = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, automap, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000080u; - } else { - _impl_._has_bits_[0] &= ~0x00000080u; - } - _impl_.automap_ = automap; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.automap) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagLenshelp lenshelp = 31; - inline bool AppearanceFlags::_internal_has_lenshelp() const { - bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0; - PROTOBUF_ASSUME(!value || _impl_.lenshelp_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_lenshelp() const { - return _internal_has_lenshelp(); - } - inline void AppearanceFlags::clear_lenshelp() { - if (_impl_.lenshelp_ != nullptr) { - _impl_.lenshelp_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000100u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &AppearanceFlags::_internal_lenshelp() const { - const ::Canary::protobuf::appearances::AppearanceFlagLenshelp* p = _impl_.lenshelp_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagLenshelp_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagLenshelp &AppearanceFlags::lenshelp() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - return _internal_lenshelp(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_lenshelp( - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.lenshelp_); - } - _impl_.lenshelp_ = lenshelp; - if (lenshelp) { - _impl_._has_bits_[0] |= 0x00000100u; - } else { - _impl_._has_bits_[0] &= ~0x00000100u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - } - inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::release_lenshelp() { - _impl_._has_bits_[0] &= ~0x00000100u; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* temp = _impl_.lenshelp_; - _impl_.lenshelp_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::unsafe_arena_release_lenshelp() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - _impl_._has_bits_[0] &= ~0x00000100u; - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* temp = _impl_.lenshelp_; - _impl_.lenshelp_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::_internal_mutable_lenshelp() { - _impl_._has_bits_[0] |= 0x00000100u; - if (_impl_.lenshelp_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagLenshelp>(GetArenaForAllocation()); - _impl_.lenshelp_ = p; - } - return _impl_.lenshelp_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagLenshelp* AppearanceFlags::mutable_lenshelp() { - ::Canary::protobuf::appearances::AppearanceFlagLenshelp* _msg = _internal_mutable_lenshelp(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - return _msg; - } - inline void AppearanceFlags::set_allocated_lenshelp(::Canary::protobuf::appearances::AppearanceFlagLenshelp* lenshelp) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.lenshelp_; - } - if (lenshelp) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(lenshelp); - if (message_arena != submessage_arena) { - lenshelp = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, lenshelp, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000100u; - } else { - _impl_._has_bits_[0] &= ~0x00000100u; - } - _impl_.lenshelp_ = lenshelp; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.lenshelp) - } - - // optional bool fullbank = 32; - inline bool AppearanceFlags::_internal_has_fullbank() const { - bool value = (_impl_._has_bits_[1] & 0x00000020u) != 0; - return value; - } - inline bool AppearanceFlags::has_fullbank() const { - return _internal_has_fullbank(); - } - inline void AppearanceFlags::clear_fullbank() { - _impl_.fullbank_ = false; - _impl_._has_bits_[1] &= ~0x00000020u; - } - inline bool AppearanceFlags::_internal_fullbank() const { - return _impl_.fullbank_; - } - inline bool AppearanceFlags::fullbank() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.fullbank) - return _internal_fullbank(); - } - inline void AppearanceFlags::_internal_set_fullbank(bool value) { - _impl_._has_bits_[1] |= 0x00000020u; - _impl_.fullbank_ = value; - } - inline void AppearanceFlags::set_fullbank(bool value) { - _internal_set_fullbank(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.fullbank) - } - - // optional bool ignore_look = 33; - inline bool AppearanceFlags::_internal_has_ignore_look() const { - bool value = (_impl_._has_bits_[1] & 0x00000040u) != 0; - return value; - } - inline bool AppearanceFlags::has_ignore_look() const { - return _internal_has_ignore_look(); - } - inline void AppearanceFlags::clear_ignore_look() { - _impl_.ignore_look_ = false; - _impl_._has_bits_[1] &= ~0x00000040u; - } - inline bool AppearanceFlags::_internal_ignore_look() const { - return _impl_.ignore_look_; - } - inline bool AppearanceFlags::ignore_look() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.ignore_look) - return _internal_ignore_look(); - } - inline void AppearanceFlags::_internal_set_ignore_look(bool value) { - _impl_._has_bits_[1] |= 0x00000040u; - _impl_.ignore_look_ = value; - } - inline void AppearanceFlags::set_ignore_look(bool value) { - _internal_set_ignore_look(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.ignore_look) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagClothes clothes = 34; - inline bool AppearanceFlags::_internal_has_clothes() const { - bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0; - PROTOBUF_ASSUME(!value || _impl_.clothes_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_clothes() const { - return _internal_has_clothes(); - } - inline void AppearanceFlags::clear_clothes() { - if (_impl_.clothes_ != nullptr) { - _impl_.clothes_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000200u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagClothes &AppearanceFlags::_internal_clothes() const { - const ::Canary::protobuf::appearances::AppearanceFlagClothes* p = _impl_.clothes_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagClothes_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagClothes &AppearanceFlags::clothes() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clothes) - return _internal_clothes(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_clothes( - ::Canary::protobuf::appearances::AppearanceFlagClothes* clothes - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.clothes_); - } - _impl_.clothes_ = clothes; - if (clothes) { - _impl_._has_bits_[0] |= 0x00000200u; - } else { - _impl_._has_bits_[0] &= ~0x00000200u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.clothes) - } - inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::release_clothes() { - _impl_._has_bits_[0] &= ~0x00000200u; - ::Canary::protobuf::appearances::AppearanceFlagClothes* temp = _impl_.clothes_; - _impl_.clothes_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::unsafe_arena_release_clothes() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.clothes) - _impl_._has_bits_[0] &= ~0x00000200u; - ::Canary::protobuf::appearances::AppearanceFlagClothes* temp = _impl_.clothes_; - _impl_.clothes_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::_internal_mutable_clothes() { - _impl_._has_bits_[0] |= 0x00000200u; - if (_impl_.clothes_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagClothes>(GetArenaForAllocation()); - _impl_.clothes_ = p; - } - return _impl_.clothes_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagClothes* AppearanceFlags::mutable_clothes() { - ::Canary::protobuf::appearances::AppearanceFlagClothes* _msg = _internal_mutable_clothes(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.clothes) - return _msg; - } - inline void AppearanceFlags::set_allocated_clothes(::Canary::protobuf::appearances::AppearanceFlagClothes* clothes) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.clothes_; - } - if (clothes) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(clothes); - if (message_arena != submessage_arena) { - clothes = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, clothes, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000200u; - } else { - _impl_._has_bits_[0] &= ~0x00000200u; - } - _impl_.clothes_ = clothes; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.clothes) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagDefaultAction default_action = 35; - inline bool AppearanceFlags::_internal_has_default_action() const { - bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0; - PROTOBUF_ASSUME(!value || _impl_.default_action_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_default_action() const { - return _internal_has_default_action(); - } - inline void AppearanceFlags::clear_default_action() { - if (_impl_.default_action_ != nullptr) { - _impl_.default_action_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000400u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &AppearanceFlags::_internal_default_action() const { - const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* p = _impl_.default_action_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagDefaultAction_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagDefaultAction &AppearanceFlags::default_action() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.default_action) - return _internal_default_action(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_default_action( - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.default_action_); - } - _impl_.default_action_ = default_action; - if (default_action) { - _impl_._has_bits_[0] |= 0x00000400u; - } else { - _impl_._has_bits_[0] &= ~0x00000400u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.default_action) - } - inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::release_default_action() { - _impl_._has_bits_[0] &= ~0x00000400u; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* temp = _impl_.default_action_; - _impl_.default_action_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::unsafe_arena_release_default_action() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.default_action) - _impl_._has_bits_[0] &= ~0x00000400u; - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* temp = _impl_.default_action_; - _impl_.default_action_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::_internal_mutable_default_action() { - _impl_._has_bits_[0] |= 0x00000400u; - if (_impl_.default_action_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagDefaultAction>(GetArenaForAllocation()); - _impl_.default_action_ = p; - } - return _impl_.default_action_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* AppearanceFlags::mutable_default_action() { - ::Canary::protobuf::appearances::AppearanceFlagDefaultAction* _msg = _internal_mutable_default_action(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.default_action) - return _msg; - } - inline void AppearanceFlags::set_allocated_default_action(::Canary::protobuf::appearances::AppearanceFlagDefaultAction* default_action) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.default_action_; - } - if (default_action) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(default_action); - if (message_arena != submessage_arena) { - default_action = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, default_action, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000400u; - } else { - _impl_._has_bits_[0] &= ~0x00000400u; - } - _impl_.default_action_ = default_action; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.default_action) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagMarket market = 36; - inline bool AppearanceFlags::_internal_has_market() const { - bool value = (_impl_._has_bits_[0] & 0x00000800u) != 0; - PROTOBUF_ASSUME(!value || _impl_.market_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_market() const { - return _internal_has_market(); - } - inline void AppearanceFlags::clear_market() { - if (_impl_.market_ != nullptr) { - _impl_.market_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00000800u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagMarket &AppearanceFlags::_internal_market() const { - const ::Canary::protobuf::appearances::AppearanceFlagMarket* p = _impl_.market_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagMarket_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagMarket &AppearanceFlags::market() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.market) - return _internal_market(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_market( - ::Canary::protobuf::appearances::AppearanceFlagMarket* market - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.market_); - } - _impl_.market_ = market; - if (market) { - _impl_._has_bits_[0] |= 0x00000800u; - } else { - _impl_._has_bits_[0] &= ~0x00000800u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.market) - } - inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::release_market() { - _impl_._has_bits_[0] &= ~0x00000800u; - ::Canary::protobuf::appearances::AppearanceFlagMarket* temp = _impl_.market_; - _impl_.market_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::unsafe_arena_release_market() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.market) - _impl_._has_bits_[0] &= ~0x00000800u; - ::Canary::protobuf::appearances::AppearanceFlagMarket* temp = _impl_.market_; - _impl_.market_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::_internal_mutable_market() { - _impl_._has_bits_[0] |= 0x00000800u; - if (_impl_.market_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagMarket>(GetArenaForAllocation()); - _impl_.market_ = p; - } - return _impl_.market_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagMarket* AppearanceFlags::mutable_market() { - ::Canary::protobuf::appearances::AppearanceFlagMarket* _msg = _internal_mutable_market(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.market) - return _msg; - } - inline void AppearanceFlags::set_allocated_market(::Canary::protobuf::appearances::AppearanceFlagMarket* market) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.market_; - } - if (market) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(market); - if (message_arena != submessage_arena) { - market = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, market, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00000800u; - } else { - _impl_._has_bits_[0] &= ~0x00000800u; - } - _impl_.market_ = market; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.market) - } - - // optional bool wrap = 37; - inline bool AppearanceFlags::_internal_has_wrap() const { - bool value = (_impl_._has_bits_[1] & 0x00000080u) != 0; - return value; - } - inline bool AppearanceFlags::has_wrap() const { - return _internal_has_wrap(); - } - inline void AppearanceFlags::clear_wrap() { - _impl_.wrap_ = false; - _impl_._has_bits_[1] &= ~0x00000080u; - } - inline bool AppearanceFlags::_internal_wrap() const { - return _impl_.wrap_; - } - inline bool AppearanceFlags::wrap() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wrap) - return _internal_wrap(); - } - inline void AppearanceFlags::_internal_set_wrap(bool value) { - _impl_._has_bits_[1] |= 0x00000080u; - _impl_.wrap_ = value; - } - inline void AppearanceFlags::set_wrap(bool value) { - _internal_set_wrap(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wrap) - } - - // optional bool unwrap = 38; - inline bool AppearanceFlags::_internal_has_unwrap() const { - bool value = (_impl_._has_bits_[1] & 0x00000100u) != 0; - return value; - } - inline bool AppearanceFlags::has_unwrap() const { - return _internal_has_unwrap(); - } - inline void AppearanceFlags::clear_unwrap() { - _impl_.unwrap_ = false; - _impl_._has_bits_[1] &= ~0x00000100u; - } - inline bool AppearanceFlags::_internal_unwrap() const { - return _impl_.unwrap_; - } - inline bool AppearanceFlags::unwrap() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.unwrap) - return _internal_unwrap(); - } - inline void AppearanceFlags::_internal_set_unwrap(bool value) { - _impl_._has_bits_[1] |= 0x00000100u; - _impl_.unwrap_ = value; - } - inline void AppearanceFlags::set_unwrap(bool value) { - _internal_set_unwrap(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.unwrap) - } - - // optional bool topeffect = 39; - inline bool AppearanceFlags::_internal_has_topeffect() const { - bool value = (_impl_._has_bits_[1] & 0x00000200u) != 0; - return value; - } - inline bool AppearanceFlags::has_topeffect() const { - return _internal_has_topeffect(); - } - inline void AppearanceFlags::clear_topeffect() { - _impl_.topeffect_ = false; - _impl_._has_bits_[1] &= ~0x00000200u; - } - inline bool AppearanceFlags::_internal_topeffect() const { - return _impl_.topeffect_; - } - inline bool AppearanceFlags::topeffect() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.topeffect) - return _internal_topeffect(); - } - inline void AppearanceFlags::_internal_set_topeffect(bool value) { - _impl_._has_bits_[1] |= 0x00000200u; - _impl_.topeffect_ = value; - } - inline void AppearanceFlags::set_topeffect(bool value) { - _internal_set_topeffect(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.topeffect) - } - - // repeated .Canary.protobuf.appearances.AppearanceFlagNPC npcsaledata = 40; - inline int AppearanceFlags::_internal_npcsaledata_size() const { - return _impl_.npcsaledata_.size(); - } - inline int AppearanceFlags::npcsaledata_size() const { - return _internal_npcsaledata_size(); - } - inline void AppearanceFlags::clear_npcsaledata() { - _impl_.npcsaledata_.Clear(); - } - inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::mutable_npcsaledata(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _impl_.npcsaledata_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC>* - AppearanceFlags::mutable_npcsaledata() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return &_impl_.npcsaledata_; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagNPC &AppearanceFlags::_internal_npcsaledata(int index) const { - return _impl_.npcsaledata_.Get(index); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagNPC &AppearanceFlags::npcsaledata(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _internal_npcsaledata(index); - } - inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::_internal_add_npcsaledata() { - return _impl_.npcsaledata_.Add(); - } - inline ::Canary::protobuf::appearances::AppearanceFlagNPC* AppearanceFlags::add_npcsaledata() { - ::Canary::protobuf::appearances::AppearanceFlagNPC* _add = _internal_add_npcsaledata(); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::appearances::AppearanceFlagNPC> & - AppearanceFlags::npcsaledata() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.AppearanceFlags.npcsaledata) - return _impl_.npcsaledata_; - } - - // optional .Canary.protobuf.appearances.AppearanceFlagChangedToExpire changedtoexpire = 41; - inline bool AppearanceFlags::_internal_has_changedtoexpire() const { - bool value = (_impl_._has_bits_[0] & 0x00001000u) != 0; - PROTOBUF_ASSUME(!value || _impl_.changedtoexpire_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_changedtoexpire() const { - return _internal_has_changedtoexpire(); - } - inline void AppearanceFlags::clear_changedtoexpire() { - if (_impl_.changedtoexpire_ != nullptr) { - _impl_.changedtoexpire_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00001000u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &AppearanceFlags::_internal_changedtoexpire() const { - const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* p = _impl_.changedtoexpire_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagChangedToExpire_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire &AppearanceFlags::changedtoexpire() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - return _internal_changedtoexpire(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_changedtoexpire( - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.changedtoexpire_); - } - _impl_.changedtoexpire_ = changedtoexpire; - if (changedtoexpire) { - _impl_._has_bits_[0] |= 0x00001000u; - } else { - _impl_._has_bits_[0] &= ~0x00001000u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - } - inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::release_changedtoexpire() { - _impl_._has_bits_[0] &= ~0x00001000u; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* temp = _impl_.changedtoexpire_; - _impl_.changedtoexpire_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::unsafe_arena_release_changedtoexpire() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - _impl_._has_bits_[0] &= ~0x00001000u; - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* temp = _impl_.changedtoexpire_; - _impl_.changedtoexpire_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::_internal_mutable_changedtoexpire() { - _impl_._has_bits_[0] |= 0x00001000u; - if (_impl_.changedtoexpire_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagChangedToExpire>(GetArenaForAllocation()); - _impl_.changedtoexpire_ = p; - } - return _impl_.changedtoexpire_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* AppearanceFlags::mutable_changedtoexpire() { - ::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* _msg = _internal_mutable_changedtoexpire(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - return _msg; - } - inline void AppearanceFlags::set_allocated_changedtoexpire(::Canary::protobuf::appearances::AppearanceFlagChangedToExpire* changedtoexpire) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.changedtoexpire_; - } - if (changedtoexpire) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(changedtoexpire); - if (message_arena != submessage_arena) { - changedtoexpire = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, changedtoexpire, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00001000u; - } else { - _impl_._has_bits_[0] &= ~0x00001000u; - } - _impl_.changedtoexpire_ = changedtoexpire; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.changedtoexpire) - } - - // optional bool corpse = 42; - inline bool AppearanceFlags::_internal_has_corpse() const { - bool value = (_impl_._has_bits_[1] & 0x00000400u) != 0; - return value; - } - inline bool AppearanceFlags::has_corpse() const { - return _internal_has_corpse(); - } - inline void AppearanceFlags::clear_corpse() { - _impl_.corpse_ = false; - _impl_._has_bits_[1] &= ~0x00000400u; - } - inline bool AppearanceFlags::_internal_corpse() const { - return _impl_.corpse_; - } - inline bool AppearanceFlags::corpse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.corpse) - return _internal_corpse(); - } - inline void AppearanceFlags::_internal_set_corpse(bool value) { - _impl_._has_bits_[1] |= 0x00000400u; - _impl_.corpse_ = value; - } - inline void AppearanceFlags::set_corpse(bool value) { - _internal_set_corpse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.corpse) - } - - // optional bool player_corpse = 43; - inline bool AppearanceFlags::_internal_has_player_corpse() const { - bool value = (_impl_._has_bits_[1] & 0x00000800u) != 0; - return value; - } - inline bool AppearanceFlags::has_player_corpse() const { - return _internal_has_player_corpse(); - } - inline void AppearanceFlags::clear_player_corpse() { - _impl_.player_corpse_ = false; - _impl_._has_bits_[1] &= ~0x00000800u; - } - inline bool AppearanceFlags::_internal_player_corpse() const { - return _impl_.player_corpse_; - } - inline bool AppearanceFlags::player_corpse() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.player_corpse) - return _internal_player_corpse(); - } - inline void AppearanceFlags::_internal_set_player_corpse(bool value) { - _impl_._has_bits_[1] |= 0x00000800u; - _impl_.player_corpse_ = value; - } - inline void AppearanceFlags::set_player_corpse(bool value) { - _internal_set_player_corpse(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.player_corpse) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagCyclopedia cyclopediaitem = 44; - inline bool AppearanceFlags::_internal_has_cyclopediaitem() const { - bool value = (_impl_._has_bits_[0] & 0x00002000u) != 0; - PROTOBUF_ASSUME(!value || _impl_.cyclopediaitem_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_cyclopediaitem() const { - return _internal_has_cyclopediaitem(); - } - inline void AppearanceFlags::clear_cyclopediaitem() { - if (_impl_.cyclopediaitem_ != nullptr) { - _impl_.cyclopediaitem_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00002000u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &AppearanceFlags::_internal_cyclopediaitem() const { - const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* p = _impl_.cyclopediaitem_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagCyclopedia_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagCyclopedia &AppearanceFlags::cyclopediaitem() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - return _internal_cyclopediaitem(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_cyclopediaitem( - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cyclopediaitem_); - } - _impl_.cyclopediaitem_ = cyclopediaitem; - if (cyclopediaitem) { - _impl_._has_bits_[0] |= 0x00002000u; - } else { - _impl_._has_bits_[0] &= ~0x00002000u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - } - inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::release_cyclopediaitem() { - _impl_._has_bits_[0] &= ~0x00002000u; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* temp = _impl_.cyclopediaitem_; - _impl_.cyclopediaitem_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::unsafe_arena_release_cyclopediaitem() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - _impl_._has_bits_[0] &= ~0x00002000u; - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* temp = _impl_.cyclopediaitem_; - _impl_.cyclopediaitem_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::_internal_mutable_cyclopediaitem() { - _impl_._has_bits_[0] |= 0x00002000u; - if (_impl_.cyclopediaitem_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagCyclopedia>(GetArenaForAllocation()); - _impl_.cyclopediaitem_ = p; - } - return _impl_.cyclopediaitem_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* AppearanceFlags::mutable_cyclopediaitem() { - ::Canary::protobuf::appearances::AppearanceFlagCyclopedia* _msg = _internal_mutable_cyclopediaitem(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - return _msg; - } - inline void AppearanceFlags::set_allocated_cyclopediaitem(::Canary::protobuf::appearances::AppearanceFlagCyclopedia* cyclopediaitem) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.cyclopediaitem_; - } - if (cyclopediaitem) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cyclopediaitem); - if (message_arena != submessage_arena) { - cyclopediaitem = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, cyclopediaitem, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00002000u; - } else { - _impl_._has_bits_[0] &= ~0x00002000u; - } - _impl_.cyclopediaitem_ = cyclopediaitem; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.cyclopediaitem) - } - - // optional bool ammo = 45; - inline bool AppearanceFlags::_internal_has_ammo() const { - bool value = (_impl_._has_bits_[1] & 0x00001000u) != 0; - return value; - } - inline bool AppearanceFlags::has_ammo() const { - return _internal_has_ammo(); - } - inline void AppearanceFlags::clear_ammo() { - _impl_.ammo_ = false; - _impl_._has_bits_[1] &= ~0x00001000u; - } - inline bool AppearanceFlags::_internal_ammo() const { - return _impl_.ammo_; - } - inline bool AppearanceFlags::ammo() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.ammo) - return _internal_ammo(); - } - inline void AppearanceFlags::_internal_set_ammo(bool value) { - _impl_._has_bits_[1] |= 0x00001000u; - _impl_.ammo_ = value; - } - inline void AppearanceFlags::set_ammo(bool value) { - _internal_set_ammo(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.ammo) - } - - // optional bool show_off_socket = 46; - inline bool AppearanceFlags::_internal_has_show_off_socket() const { - bool value = (_impl_._has_bits_[1] & 0x00002000u) != 0; - return value; - } - inline bool AppearanceFlags::has_show_off_socket() const { - return _internal_has_show_off_socket(); - } - inline void AppearanceFlags::clear_show_off_socket() { - _impl_.show_off_socket_ = false; - _impl_._has_bits_[1] &= ~0x00002000u; - } - inline bool AppearanceFlags::_internal_show_off_socket() const { - return _impl_.show_off_socket_; - } - inline bool AppearanceFlags::show_off_socket() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.show_off_socket) - return _internal_show_off_socket(); - } - inline void AppearanceFlags::_internal_set_show_off_socket(bool value) { - _impl_._has_bits_[1] |= 0x00002000u; - _impl_.show_off_socket_ = value; - } - inline void AppearanceFlags::set_show_off_socket(bool value) { - _internal_set_show_off_socket(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.show_off_socket) - } - - // optional bool reportable = 47; - inline bool AppearanceFlags::_internal_has_reportable() const { - bool value = (_impl_._has_bits_[1] & 0x00004000u) != 0; - return value; - } - inline bool AppearanceFlags::has_reportable() const { - return _internal_has_reportable(); - } - inline void AppearanceFlags::clear_reportable() { - _impl_.reportable_ = false; - _impl_._has_bits_[1] &= ~0x00004000u; - } - inline bool AppearanceFlags::_internal_reportable() const { - return _impl_.reportable_; - } - inline bool AppearanceFlags::reportable() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reportable) - return _internal_reportable(); - } - inline void AppearanceFlags::_internal_set_reportable(bool value) { - _impl_._has_bits_[1] |= 0x00004000u; - _impl_.reportable_ = value; - } - inline void AppearanceFlags::set_reportable(bool value) { - _internal_set_reportable(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reportable) - } - - // optional .Canary.protobuf.appearances.AppearanceFlagUpgradeClassification upgradeclassification = 48; - inline bool AppearanceFlags::_internal_has_upgradeclassification() const { - bool value = (_impl_._has_bits_[0] & 0x00004000u) != 0; - PROTOBUF_ASSUME(!value || _impl_.upgradeclassification_ != nullptr); - return value; - } - inline bool AppearanceFlags::has_upgradeclassification() const { - return _internal_has_upgradeclassification(); - } - inline void AppearanceFlags::clear_upgradeclassification() { - if (_impl_.upgradeclassification_ != nullptr) { - _impl_.upgradeclassification_->Clear(); - } - _impl_._has_bits_[0] &= ~0x00004000u; - } - inline const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &AppearanceFlags::_internal_upgradeclassification() const { - const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* p = _impl_.upgradeclassification_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::appearances::_AppearanceFlagUpgradeClassification_default_instance_); - } - inline const ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification &AppearanceFlags::upgradeclassification() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - return _internal_upgradeclassification(); - } - inline void AppearanceFlags::unsafe_arena_set_allocated_upgradeclassification( - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.upgradeclassification_); - } - _impl_.upgradeclassification_ = upgradeclassification; - if (upgradeclassification) { - _impl_._has_bits_[0] |= 0x00004000u; - } else { - _impl_._has_bits_[0] &= ~0x00004000u; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - } - inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::release_upgradeclassification() { - _impl_._has_bits_[0] &= ~0x00004000u; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* temp = _impl_.upgradeclassification_; - _impl_.upgradeclassification_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::unsafe_arena_release_upgradeclassification() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - _impl_._has_bits_[0] &= ~0x00004000u; - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* temp = _impl_.upgradeclassification_; - _impl_.upgradeclassification_ = nullptr; - return temp; - } - inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::_internal_mutable_upgradeclassification() { - _impl_._has_bits_[0] |= 0x00004000u; - if (_impl_.upgradeclassification_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification>(GetArenaForAllocation()); - _impl_.upgradeclassification_ = p; - } - return _impl_.upgradeclassification_; - } - inline ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* AppearanceFlags::mutable_upgradeclassification() { - ::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* _msg = _internal_mutable_upgradeclassification(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - return _msg; - } - inline void AppearanceFlags::set_allocated_upgradeclassification(::Canary::protobuf::appearances::AppearanceFlagUpgradeClassification* upgradeclassification) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.upgradeclassification_; - } - if (upgradeclassification) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(upgradeclassification); - if (message_arena != submessage_arena) { - upgradeclassification = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, upgradeclassification, submessage_arena - ); - } - _impl_._has_bits_[0] |= 0x00004000u; - } else { - _impl_._has_bits_[0] &= ~0x00004000u; - } - _impl_.upgradeclassification_ = upgradeclassification; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlags.upgradeclassification) - } - - // optional bool reverse_addons_east = 49; - inline bool AppearanceFlags::_internal_has_reverse_addons_east() const { - bool value = (_impl_._has_bits_[1] & 0x00008000u) != 0; - return value; - } - inline bool AppearanceFlags::has_reverse_addons_east() const { - return _internal_has_reverse_addons_east(); - } - inline void AppearanceFlags::clear_reverse_addons_east() { - _impl_.reverse_addons_east_ = false; - _impl_._has_bits_[1] &= ~0x00008000u; - } - inline bool AppearanceFlags::_internal_reverse_addons_east() const { - return _impl_.reverse_addons_east_; - } - inline bool AppearanceFlags::reverse_addons_east() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_east) - return _internal_reverse_addons_east(); - } - inline void AppearanceFlags::_internal_set_reverse_addons_east(bool value) { - _impl_._has_bits_[1] |= 0x00008000u; - _impl_.reverse_addons_east_ = value; - } - inline void AppearanceFlags::set_reverse_addons_east(bool value) { - _internal_set_reverse_addons_east(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_east) - } - - // optional bool reverse_addons_west = 50; - inline bool AppearanceFlags::_internal_has_reverse_addons_west() const { - bool value = (_impl_._has_bits_[1] & 0x00010000u) != 0; - return value; - } - inline bool AppearanceFlags::has_reverse_addons_west() const { - return _internal_has_reverse_addons_west(); - } - inline void AppearanceFlags::clear_reverse_addons_west() { - _impl_.reverse_addons_west_ = false; - _impl_._has_bits_[1] &= ~0x00010000u; - } - inline bool AppearanceFlags::_internal_reverse_addons_west() const { - return _impl_.reverse_addons_west_; - } - inline bool AppearanceFlags::reverse_addons_west() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_west) - return _internal_reverse_addons_west(); - } - inline void AppearanceFlags::_internal_set_reverse_addons_west(bool value) { - _impl_._has_bits_[1] |= 0x00010000u; - _impl_.reverse_addons_west_ = value; - } - inline void AppearanceFlags::set_reverse_addons_west(bool value) { - _internal_set_reverse_addons_west(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_west) - } - - // optional bool reverse_addons_south = 51; - inline bool AppearanceFlags::_internal_has_reverse_addons_south() const { - bool value = (_impl_._has_bits_[1] & 0x00020000u) != 0; - return value; - } - inline bool AppearanceFlags::has_reverse_addons_south() const { - return _internal_has_reverse_addons_south(); - } - inline void AppearanceFlags::clear_reverse_addons_south() { - _impl_.reverse_addons_south_ = false; - _impl_._has_bits_[1] &= ~0x00020000u; - } - inline bool AppearanceFlags::_internal_reverse_addons_south() const { - return _impl_.reverse_addons_south_; - } - inline bool AppearanceFlags::reverse_addons_south() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_south) - return _internal_reverse_addons_south(); - } - inline void AppearanceFlags::_internal_set_reverse_addons_south(bool value) { - _impl_._has_bits_[1] |= 0x00020000u; - _impl_.reverse_addons_south_ = value; - } - inline void AppearanceFlags::set_reverse_addons_south(bool value) { - _internal_set_reverse_addons_south(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_south) - } - - // optional bool reverse_addons_north = 52; - inline bool AppearanceFlags::_internal_has_reverse_addons_north() const { - bool value = (_impl_._has_bits_[1] & 0x00040000u) != 0; - return value; - } - inline bool AppearanceFlags::has_reverse_addons_north() const { - return _internal_has_reverse_addons_north(); - } - inline void AppearanceFlags::clear_reverse_addons_north() { - _impl_.reverse_addons_north_ = false; - _impl_._has_bits_[1] &= ~0x00040000u; - } - inline bool AppearanceFlags::_internal_reverse_addons_north() const { - return _impl_.reverse_addons_north_; - } - inline bool AppearanceFlags::reverse_addons_north() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_north) - return _internal_reverse_addons_north(); - } - inline void AppearanceFlags::_internal_set_reverse_addons_north(bool value) { - _impl_._has_bits_[1] |= 0x00040000u; - _impl_.reverse_addons_north_ = value; - } - inline void AppearanceFlags::set_reverse_addons_north(bool value) { - _internal_set_reverse_addons_north(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.reverse_addons_north) - } - - // optional bool wearout = 53; - inline bool AppearanceFlags::_internal_has_wearout() const { - bool value = (_impl_._has_bits_[1] & 0x00080000u) != 0; - return value; - } - inline bool AppearanceFlags::has_wearout() const { - return _internal_has_wearout(); - } - inline void AppearanceFlags::clear_wearout() { - _impl_.wearout_ = false; - _impl_._has_bits_[1] &= ~0x00080000u; - } - inline bool AppearanceFlags::_internal_wearout() const { - return _impl_.wearout_; - } - inline bool AppearanceFlags::wearout() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wearout) - return _internal_wearout(); - } - inline void AppearanceFlags::_internal_set_wearout(bool value) { - _impl_._has_bits_[1] |= 0x00080000u; - _impl_.wearout_ = value; - } - inline void AppearanceFlags::set_wearout(bool value) { - _internal_set_wearout(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wearout) - } - - // optional bool clockexpire = 54; - inline bool AppearanceFlags::_internal_has_clockexpire() const { - bool value = (_impl_._has_bits_[1] & 0x00100000u) != 0; - return value; - } - inline bool AppearanceFlags::has_clockexpire() const { - return _internal_has_clockexpire(); - } - inline void AppearanceFlags::clear_clockexpire() { - _impl_.clockexpire_ = false; - _impl_._has_bits_[1] &= ~0x00100000u; - } - inline bool AppearanceFlags::_internal_clockexpire() const { - return _impl_.clockexpire_; - } - inline bool AppearanceFlags::clockexpire() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.clockexpire) - return _internal_clockexpire(); - } - inline void AppearanceFlags::_internal_set_clockexpire(bool value) { - _impl_._has_bits_[1] |= 0x00100000u; - _impl_.clockexpire_ = value; - } - inline void AppearanceFlags::set_clockexpire(bool value) { - _internal_set_clockexpire(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.clockexpire) - } - - // optional bool expire = 55; - inline bool AppearanceFlags::_internal_has_expire() const { - bool value = (_impl_._has_bits_[1] & 0x00200000u) != 0; - return value; - } - inline bool AppearanceFlags::has_expire() const { - return _internal_has_expire(); - } - inline void AppearanceFlags::clear_expire() { - _impl_.expire_ = false; - _impl_._has_bits_[1] &= ~0x00200000u; - } - inline bool AppearanceFlags::_internal_expire() const { - return _impl_.expire_; - } - inline bool AppearanceFlags::expire() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.expire) - return _internal_expire(); - } - inline void AppearanceFlags::_internal_set_expire(bool value) { - _impl_._has_bits_[1] |= 0x00200000u; - _impl_.expire_ = value; - } - inline void AppearanceFlags::set_expire(bool value) { - _internal_set_expire(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.expire) - } - - // optional bool expirestop = 56; - inline bool AppearanceFlags::_internal_has_expirestop() const { - bool value = (_impl_._has_bits_[1] & 0x00400000u) != 0; - return value; - } - inline bool AppearanceFlags::has_expirestop() const { - return _internal_has_expirestop(); - } - inline void AppearanceFlags::clear_expirestop() { - _impl_.expirestop_ = false; - _impl_._has_bits_[1] &= ~0x00400000u; - } - inline bool AppearanceFlags::_internal_expirestop() const { - return _impl_.expirestop_; - } - inline bool AppearanceFlags::expirestop() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.expirestop) - return _internal_expirestop(); - } - inline void AppearanceFlags::_internal_set_expirestop(bool value) { - _impl_._has_bits_[1] |= 0x00400000u; - _impl_.expirestop_ = value; - } - inline void AppearanceFlags::set_expirestop(bool value) { - _internal_set_expirestop(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.expirestop) - } - - // optional bool wrapkit = 57; - inline bool AppearanceFlags::_internal_has_wrapkit() const { - bool value = (_impl_._has_bits_[1] & 0x00800000u) != 0; - return value; - } - inline bool AppearanceFlags::has_wrapkit() const { - return _internal_has_wrapkit(); - } - inline void AppearanceFlags::clear_wrapkit() { - _impl_.wrapkit_ = false; - _impl_._has_bits_[1] &= ~0x00800000u; - } - inline bool AppearanceFlags::_internal_wrapkit() const { - return _impl_.wrapkit_; - } - inline bool AppearanceFlags::wrapkit() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlags.wrapkit) - return _internal_wrapkit(); - } - inline void AppearanceFlags::_internal_set_wrapkit(bool value) { - _impl_._has_bits_[1] |= 0x00800000u; - _impl_.wrapkit_ = value; - } - inline void AppearanceFlags::set_wrapkit(bool value) { - _internal_set_wrapkit(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlags.wrapkit) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagUpgradeClassification - - // optional uint32 upgrade_classification = 1; - inline bool AppearanceFlagUpgradeClassification::_internal_has_upgrade_classification() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagUpgradeClassification::has_upgrade_classification() const { - return _internal_has_upgrade_classification(); - } - inline void AppearanceFlagUpgradeClassification::clear_upgrade_classification() { - _impl_.upgrade_classification_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagUpgradeClassification::_internal_upgrade_classification() const { - return _impl_.upgrade_classification_; - } - inline uint32_t AppearanceFlagUpgradeClassification::upgrade_classification() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification.upgrade_classification) - return _internal_upgrade_classification(); - } - inline void AppearanceFlagUpgradeClassification::_internal_set_upgrade_classification(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.upgrade_classification_ = value; - } - inline void AppearanceFlagUpgradeClassification::set_upgrade_classification(uint32_t value) { - _internal_set_upgrade_classification(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagUpgradeClassification.upgrade_classification) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagBank - - // optional uint32 waypoints = 1; - inline bool AppearanceFlagBank::_internal_has_waypoints() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagBank::has_waypoints() const { - return _internal_has_waypoints(); - } - inline void AppearanceFlagBank::clear_waypoints() { - _impl_.waypoints_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagBank::_internal_waypoints() const { - return _impl_.waypoints_; - } - inline uint32_t AppearanceFlagBank::waypoints() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagBank.waypoints) - return _internal_waypoints(); - } - inline void AppearanceFlagBank::_internal_set_waypoints(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.waypoints_ = value; - } - inline void AppearanceFlagBank::set_waypoints(uint32_t value) { - _internal_set_waypoints(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagBank.waypoints) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagWrite - - // optional uint32 max_text_length = 1; - inline bool AppearanceFlagWrite::_internal_has_max_text_length() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagWrite::has_max_text_length() const { - return _internal_has_max_text_length(); - } - inline void AppearanceFlagWrite::clear_max_text_length() { - _impl_.max_text_length_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagWrite::_internal_max_text_length() const { - return _impl_.max_text_length_; - } - inline uint32_t AppearanceFlagWrite::max_text_length() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagWrite.max_text_length) - return _internal_max_text_length(); - } - inline void AppearanceFlagWrite::_internal_set_max_text_length(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.max_text_length_ = value; - } - inline void AppearanceFlagWrite::set_max_text_length(uint32_t value) { - _internal_set_max_text_length(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagWrite.max_text_length) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagWriteOnce - - // optional uint32 max_text_length_once = 1; - inline bool AppearanceFlagWriteOnce::_internal_has_max_text_length_once() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagWriteOnce::has_max_text_length_once() const { - return _internal_has_max_text_length_once(); - } - inline void AppearanceFlagWriteOnce::clear_max_text_length_once() { - _impl_.max_text_length_once_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagWriteOnce::_internal_max_text_length_once() const { - return _impl_.max_text_length_once_; - } - inline uint32_t AppearanceFlagWriteOnce::max_text_length_once() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagWriteOnce.max_text_length_once) - return _internal_max_text_length_once(); - } - inline void AppearanceFlagWriteOnce::_internal_set_max_text_length_once(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.max_text_length_once_ = value; - } - inline void AppearanceFlagWriteOnce::set_max_text_length_once(uint32_t value) { - _internal_set_max_text_length_once(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagWriteOnce.max_text_length_once) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagLight - - // optional uint32 brightness = 1; - inline bool AppearanceFlagLight::_internal_has_brightness() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagLight::has_brightness() const { - return _internal_has_brightness(); - } - inline void AppearanceFlagLight::clear_brightness() { - _impl_.brightness_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagLight::_internal_brightness() const { - return _impl_.brightness_; - } - inline uint32_t AppearanceFlagLight::brightness() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLight.brightness) - return _internal_brightness(); - } - inline void AppearanceFlagLight::_internal_set_brightness(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.brightness_ = value; - } - inline void AppearanceFlagLight::set_brightness(uint32_t value) { - _internal_set_brightness(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLight.brightness) - } - - // optional uint32 color = 2; - inline bool AppearanceFlagLight::_internal_has_color() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool AppearanceFlagLight::has_color() const { - return _internal_has_color(); - } - inline void AppearanceFlagLight::clear_color() { - _impl_.color_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t AppearanceFlagLight::_internal_color() const { - return _impl_.color_; - } - inline uint32_t AppearanceFlagLight::color() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLight.color) - return _internal_color(); - } - inline void AppearanceFlagLight::_internal_set_color(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.color_ = value; - } - inline void AppearanceFlagLight::set_color(uint32_t value) { - _internal_set_color(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLight.color) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagHeight - - // optional uint32 elevation = 1; - inline bool AppearanceFlagHeight::_internal_has_elevation() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagHeight::has_elevation() const { - return _internal_has_elevation(); - } - inline void AppearanceFlagHeight::clear_elevation() { - _impl_.elevation_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagHeight::_internal_elevation() const { - return _impl_.elevation_; - } - inline uint32_t AppearanceFlagHeight::elevation() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagHeight.elevation) - return _internal_elevation(); - } - inline void AppearanceFlagHeight::_internal_set_elevation(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.elevation_ = value; - } - inline void AppearanceFlagHeight::set_elevation(uint32_t value) { - _internal_set_elevation(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagHeight.elevation) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagShift - - // optional uint32 x = 1; - inline bool AppearanceFlagShift::_internal_has_x() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagShift::has_x() const { - return _internal_has_x(); - } - inline void AppearanceFlagShift::clear_x() { - _impl_.x_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagShift::_internal_x() const { - return _impl_.x_; - } - inline uint32_t AppearanceFlagShift::x() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagShift.x) - return _internal_x(); - } - inline void AppearanceFlagShift::_internal_set_x(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.x_ = value; - } - inline void AppearanceFlagShift::set_x(uint32_t value) { - _internal_set_x(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagShift.x) - } - - // optional uint32 y = 2; - inline bool AppearanceFlagShift::_internal_has_y() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool AppearanceFlagShift::has_y() const { - return _internal_has_y(); - } - inline void AppearanceFlagShift::clear_y() { - _impl_.y_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t AppearanceFlagShift::_internal_y() const { - return _impl_.y_; - } - inline uint32_t AppearanceFlagShift::y() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagShift.y) - return _internal_y(); - } - inline void AppearanceFlagShift::_internal_set_y(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.y_ = value; - } - inline void AppearanceFlagShift::set_y(uint32_t value) { - _internal_set_y(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagShift.y) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagClothes - - // optional uint32 slot = 1; - inline bool AppearanceFlagClothes::_internal_has_slot() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagClothes::has_slot() const { - return _internal_has_slot(); - } - inline void AppearanceFlagClothes::clear_slot() { - _impl_.slot_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagClothes::_internal_slot() const { - return _impl_.slot_; - } - inline uint32_t AppearanceFlagClothes::slot() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagClothes.slot) - return _internal_slot(); - } - inline void AppearanceFlagClothes::_internal_set_slot(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.slot_ = value; - } - inline void AppearanceFlagClothes::set_slot(uint32_t value) { - _internal_set_slot(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagClothes.slot) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagDefaultAction - - // optional .Canary.protobuf.appearances.PLAYER_ACTION action = 1; - inline bool AppearanceFlagDefaultAction::_internal_has_action() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagDefaultAction::has_action() const { - return _internal_has_action(); - } - inline void AppearanceFlagDefaultAction::clear_action() { - _impl_.action_ = 0; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline ::Canary::protobuf::appearances::PLAYER_ACTION AppearanceFlagDefaultAction::_internal_action() const { - return static_cast<::Canary::protobuf::appearances::PLAYER_ACTION>(_impl_.action_); - } - inline ::Canary::protobuf::appearances::PLAYER_ACTION AppearanceFlagDefaultAction::action() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagDefaultAction.action) - return _internal_action(); - } - inline void AppearanceFlagDefaultAction::_internal_set_action(::Canary::protobuf::appearances::PLAYER_ACTION value) { - assert(::Canary::protobuf::appearances::PLAYER_ACTION_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.action_ = value; - } - inline void AppearanceFlagDefaultAction::set_action(::Canary::protobuf::appearances::PLAYER_ACTION value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagDefaultAction.action) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagMarket - - // optional .Canary.protobuf.appearances.ITEM_CATEGORY category = 1; - inline bool AppearanceFlagMarket::_internal_has_category() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool AppearanceFlagMarket::has_category() const { - return _internal_has_category(); - } - inline void AppearanceFlagMarket::clear_category() { - _impl_.category_ = 1; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline ::Canary::protobuf::appearances::ITEM_CATEGORY AppearanceFlagMarket::_internal_category() const { - return static_cast<::Canary::protobuf::appearances::ITEM_CATEGORY>(_impl_.category_); - } - inline ::Canary::protobuf::appearances::ITEM_CATEGORY AppearanceFlagMarket::category() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.category) - return _internal_category(); - } - inline void AppearanceFlagMarket::_internal_set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value) { - assert(::Canary::protobuf::appearances::ITEM_CATEGORY_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.category_ = value; - } - inline void AppearanceFlagMarket::set_category(::Canary::protobuf::appearances::ITEM_CATEGORY value) { - _internal_set_category(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.category) - } - - // optional uint32 trade_as_object_id = 2; - inline bool AppearanceFlagMarket::_internal_has_trade_as_object_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagMarket::has_trade_as_object_id() const { - return _internal_has_trade_as_object_id(); - } - inline void AppearanceFlagMarket::clear_trade_as_object_id() { - _impl_.trade_as_object_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagMarket::_internal_trade_as_object_id() const { - return _impl_.trade_as_object_id_; - } - inline uint32_t AppearanceFlagMarket::trade_as_object_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.trade_as_object_id) - return _internal_trade_as_object_id(); - } - inline void AppearanceFlagMarket::_internal_set_trade_as_object_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.trade_as_object_id_ = value; - } - inline void AppearanceFlagMarket::set_trade_as_object_id(uint32_t value) { - _internal_set_trade_as_object_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.trade_as_object_id) - } - - // optional uint32 show_as_object_id = 3; - inline bool AppearanceFlagMarket::_internal_has_show_as_object_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool AppearanceFlagMarket::has_show_as_object_id() const { - return _internal_has_show_as_object_id(); - } - inline void AppearanceFlagMarket::clear_show_as_object_id() { - _impl_.show_as_object_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t AppearanceFlagMarket::_internal_show_as_object_id() const { - return _impl_.show_as_object_id_; - } - inline uint32_t AppearanceFlagMarket::show_as_object_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.show_as_object_id) - return _internal_show_as_object_id(); - } - inline void AppearanceFlagMarket::_internal_set_show_as_object_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.show_as_object_id_ = value; - } - inline void AppearanceFlagMarket::set_show_as_object_id(uint32_t value) { - _internal_set_show_as_object_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.show_as_object_id) - } - - // repeated .Canary.protobuf.appearances.PLAYER_PROFESSION restrict_to_profession = 5; - inline int AppearanceFlagMarket::_internal_restrict_to_profession_size() const { - return _impl_.restrict_to_profession_.size(); - } - inline int AppearanceFlagMarket::restrict_to_profession_size() const { - return _internal_restrict_to_profession_size(); - } - inline void AppearanceFlagMarket::clear_restrict_to_profession() { - _impl_.restrict_to_profession_.Clear(); - } - inline ::Canary::protobuf::appearances::PLAYER_PROFESSION AppearanceFlagMarket::_internal_restrict_to_profession(int index) const { - return static_cast<::Canary::protobuf::appearances::PLAYER_PROFESSION>(_impl_.restrict_to_profession_.Get(index)); - } - inline ::Canary::protobuf::appearances::PLAYER_PROFESSION AppearanceFlagMarket::restrict_to_profession(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - return _internal_restrict_to_profession(index); - } - inline void AppearanceFlagMarket::set_restrict_to_profession(int index, ::Canary::protobuf::appearances::PLAYER_PROFESSION value) { - assert(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(value)); - _impl_.restrict_to_profession_.Set(index, value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - } - inline void AppearanceFlagMarket::_internal_add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value) { - assert(::Canary::protobuf::appearances::PLAYER_PROFESSION_IsValid(value)); - _impl_.restrict_to_profession_.Add(value); - } - inline void AppearanceFlagMarket::add_restrict_to_profession(::Canary::protobuf::appearances::PLAYER_PROFESSION value) { - _internal_add_restrict_to_profession(value); - // @@protoc_insertion_point(field_add:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField & - AppearanceFlagMarket::restrict_to_profession() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - return _impl_.restrict_to_profession_; - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* - AppearanceFlagMarket::_internal_mutable_restrict_to_profession() { - return &_impl_.restrict_to_profession_; - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedField* - AppearanceFlagMarket::mutable_restrict_to_profession() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.appearances.AppearanceFlagMarket.restrict_to_profession) - return _internal_mutable_restrict_to_profession(); - } - - // optional uint32 minimum_level = 6; - inline bool AppearanceFlagMarket::_internal_has_minimum_level() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool AppearanceFlagMarket::has_minimum_level() const { - return _internal_has_minimum_level(); - } - inline void AppearanceFlagMarket::clear_minimum_level() { - _impl_.minimum_level_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline uint32_t AppearanceFlagMarket::_internal_minimum_level() const { - return _impl_.minimum_level_; - } - inline uint32_t AppearanceFlagMarket::minimum_level() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagMarket.minimum_level) - return _internal_minimum_level(); - } - inline void AppearanceFlagMarket::_internal_set_minimum_level(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.minimum_level_ = value; - } - inline void AppearanceFlagMarket::set_minimum_level(uint32_t value) { - _internal_set_minimum_level(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagMarket.minimum_level) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagNPC - - // optional bytes name = 1; - inline bool AppearanceFlagNPC::_internal_has_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagNPC::has_name() const { - return _internal_has_name(); - } - inline void AppearanceFlagNPC::clear_name() { - _impl_.name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline const std::string &AppearanceFlagNPC::name() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.name) - return _internal_name(); - } - template - inline PROTOBUF_ALWAYS_INLINE void AppearanceFlagNPC::set_name(ArgT0 &&arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.name) - } - inline std::string* AppearanceFlagNPC::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.name) - return _s; - } - inline const std::string &AppearanceFlagNPC::_internal_name() const { - return _impl_.name_.Get(); - } - inline void AppearanceFlagNPC::_internal_set_name(const std::string &value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.Set(value, GetArenaForAllocation()); - } - inline std::string* AppearanceFlagNPC::_internal_mutable_name() { - _impl_._has_bits_[0] |= 0x00000001u; - return _impl_.name_.Mutable(GetArenaForAllocation()); - } - inline std::string* AppearanceFlagNPC::release_name() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.name) - if (!_internal_has_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000001u; - auto* p = _impl_.name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; - } - inline void AppearanceFlagNPC::set_allocated_name(std::string* name) { - if (name != nullptr) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.name) - } - - // optional bytes location = 2; - inline bool AppearanceFlagNPC::_internal_has_location() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool AppearanceFlagNPC::has_location() const { - return _internal_has_location(); - } - inline void AppearanceFlagNPC::clear_location() { - _impl_.location_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline const std::string &AppearanceFlagNPC::location() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.location) - return _internal_location(); - } - template - inline PROTOBUF_ALWAYS_INLINE void AppearanceFlagNPC::set_location(ArgT0 &&arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.location_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.location) - } - inline std::string* AppearanceFlagNPC::mutable_location() { - std::string* _s = _internal_mutable_location(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.location) - return _s; - } - inline const std::string &AppearanceFlagNPC::_internal_location() const { - return _impl_.location_.Get(); - } - inline void AppearanceFlagNPC::_internal_set_location(const std::string &value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.location_.Set(value, GetArenaForAllocation()); - } - inline std::string* AppearanceFlagNPC::_internal_mutable_location() { - _impl_._has_bits_[0] |= 0x00000002u; - return _impl_.location_.Mutable(GetArenaForAllocation()); - } - inline std::string* AppearanceFlagNPC::release_location() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.location) - if (!_internal_has_location()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000002u; - auto* p = _impl_.location_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.location_.IsDefault()) { - _impl_.location_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; - } - inline void AppearanceFlagNPC::set_allocated_location(std::string* location) { - if (location != nullptr) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.location_.SetAllocated(location, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.location_.IsDefault()) { - _impl_.location_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.location) - } - - // optional uint32 sale_price = 3; - inline bool AppearanceFlagNPC::_internal_has_sale_price() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool AppearanceFlagNPC::has_sale_price() const { - return _internal_has_sale_price(); - } - inline void AppearanceFlagNPC::clear_sale_price() { - _impl_.sale_price_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline uint32_t AppearanceFlagNPC::_internal_sale_price() const { - return _impl_.sale_price_; - } - inline uint32_t AppearanceFlagNPC::sale_price() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.sale_price) - return _internal_sale_price(); - } - inline void AppearanceFlagNPC::_internal_set_sale_price(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.sale_price_ = value; - } - inline void AppearanceFlagNPC::set_sale_price(uint32_t value) { - _internal_set_sale_price(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.sale_price) - } - - // optional uint32 buy_price = 4; - inline bool AppearanceFlagNPC::_internal_has_buy_price() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; - } - inline bool AppearanceFlagNPC::has_buy_price() const { - return _internal_has_buy_price(); - } - inline void AppearanceFlagNPC::clear_buy_price() { - _impl_.buy_price_ = 0u; - _impl_._has_bits_[0] &= ~0x00000010u; - } - inline uint32_t AppearanceFlagNPC::_internal_buy_price() const { - return _impl_.buy_price_; - } - inline uint32_t AppearanceFlagNPC::buy_price() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.buy_price) - return _internal_buy_price(); - } - inline void AppearanceFlagNPC::_internal_set_buy_price(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.buy_price_ = value; - } - inline void AppearanceFlagNPC::set_buy_price(uint32_t value) { - _internal_set_buy_price(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.buy_price) - } - - // optional uint32 currency_object_type_id = 5; - inline bool AppearanceFlagNPC::_internal_has_currency_object_type_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - return value; - } - inline bool AppearanceFlagNPC::has_currency_object_type_id() const { - return _internal_has_currency_object_type_id(); - } - inline void AppearanceFlagNPC::clear_currency_object_type_id() { - _impl_.currency_object_type_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000020u; - } - inline uint32_t AppearanceFlagNPC::_internal_currency_object_type_id() const { - return _impl_.currency_object_type_id_; - } - inline uint32_t AppearanceFlagNPC::currency_object_type_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.currency_object_type_id) - return _internal_currency_object_type_id(); - } - inline void AppearanceFlagNPC::_internal_set_currency_object_type_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000020u; - _impl_.currency_object_type_id_ = value; - } - inline void AppearanceFlagNPC::set_currency_object_type_id(uint32_t value) { - _internal_set_currency_object_type_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.currency_object_type_id) - } - - // optional bytes currency_quest_flag_display_name = 6; - inline bool AppearanceFlagNPC::_internal_has_currency_quest_flag_display_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool AppearanceFlagNPC::has_currency_quest_flag_display_name() const { - return _internal_has_currency_quest_flag_display_name(); - } - inline void AppearanceFlagNPC::clear_currency_quest_flag_display_name() { - _impl_.currency_quest_flag_display_name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline const std::string &AppearanceFlagNPC::currency_quest_flag_display_name() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - return _internal_currency_quest_flag_display_name(); - } - template - inline PROTOBUF_ALWAYS_INLINE void AppearanceFlagNPC::set_currency_quest_flag_display_name(ArgT0 &&arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.currency_quest_flag_display_name_.SetBytes(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - } - inline std::string* AppearanceFlagNPC::mutable_currency_quest_flag_display_name() { - std::string* _s = _internal_mutable_currency_quest_flag_display_name(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - return _s; - } - inline const std::string &AppearanceFlagNPC::_internal_currency_quest_flag_display_name() const { - return _impl_.currency_quest_flag_display_name_.Get(); - } - inline void AppearanceFlagNPC::_internal_set_currency_quest_flag_display_name(const std::string &value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.currency_quest_flag_display_name_.Set(value, GetArenaForAllocation()); - } - inline std::string* AppearanceFlagNPC::_internal_mutable_currency_quest_flag_display_name() { - _impl_._has_bits_[0] |= 0x00000004u; - return _impl_.currency_quest_flag_display_name_.Mutable(GetArenaForAllocation()); - } - inline std::string* AppearanceFlagNPC::release_currency_quest_flag_display_name() { - // @@protoc_insertion_point(field_release:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - if (!_internal_has_currency_quest_flag_display_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000004u; - auto* p = _impl_.currency_quest_flag_display_name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.currency_quest_flag_display_name_.IsDefault()) { - _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; - } - inline void AppearanceFlagNPC::set_allocated_currency_quest_flag_display_name(std::string* currency_quest_flag_display_name) { - if (currency_quest_flag_display_name != nullptr) { - _impl_._has_bits_[0] |= 0x00000004u; - } else { - _impl_._has_bits_[0] &= ~0x00000004u; - } - _impl_.currency_quest_flag_display_name_.SetAllocated(currency_quest_flag_display_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.currency_quest_flag_display_name_.IsDefault()) { - _impl_.currency_quest_flag_display_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.appearances.AppearanceFlagNPC.currency_quest_flag_display_name) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagAutomap - - // optional uint32 color = 1; - inline bool AppearanceFlagAutomap::_internal_has_color() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagAutomap::has_color() const { - return _internal_has_color(); - } - inline void AppearanceFlagAutomap::clear_color() { - _impl_.color_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagAutomap::_internal_color() const { - return _impl_.color_; - } - inline uint32_t AppearanceFlagAutomap::color() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagAutomap.color) - return _internal_color(); - } - inline void AppearanceFlagAutomap::_internal_set_color(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.color_ = value; - } - inline void AppearanceFlagAutomap::set_color(uint32_t value) { - _internal_set_color(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagAutomap.color) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagHook - - // optional .Canary.protobuf.appearances.HOOK_TYPE direction = 1; - inline bool AppearanceFlagHook::_internal_has_direction() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagHook::has_direction() const { - return _internal_has_direction(); - } - inline void AppearanceFlagHook::clear_direction() { - _impl_.direction_ = 1; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline ::Canary::protobuf::appearances::HOOK_TYPE AppearanceFlagHook::_internal_direction() const { - return static_cast<::Canary::protobuf::appearances::HOOK_TYPE>(_impl_.direction_); - } - inline ::Canary::protobuf::appearances::HOOK_TYPE AppearanceFlagHook::direction() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagHook.direction) - return _internal_direction(); - } - inline void AppearanceFlagHook::_internal_set_direction(::Canary::protobuf::appearances::HOOK_TYPE value) { - assert(::Canary::protobuf::appearances::HOOK_TYPE_IsValid(value)); - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.direction_ = value; - } - inline void AppearanceFlagHook::set_direction(::Canary::protobuf::appearances::HOOK_TYPE value) { - _internal_set_direction(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagHook.direction) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagLenshelp - - // optional uint32 id = 1; - inline bool AppearanceFlagLenshelp::_internal_has_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagLenshelp::has_id() const { - return _internal_has_id(); - } - inline void AppearanceFlagLenshelp::clear_id() { - _impl_.id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagLenshelp::_internal_id() const { - return _impl_.id_; - } - inline uint32_t AppearanceFlagLenshelp::id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagLenshelp.id) - return _internal_id(); - } - inline void AppearanceFlagLenshelp::_internal_set_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.id_ = value; - } - inline void AppearanceFlagLenshelp::set_id(uint32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagLenshelp.id) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagChangedToExpire - - // optional uint32 former_object_typeid = 1; - inline bool AppearanceFlagChangedToExpire::_internal_has_former_object_typeid() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagChangedToExpire::has_former_object_typeid() const { - return _internal_has_former_object_typeid(); - } - inline void AppearanceFlagChangedToExpire::clear_former_object_typeid() { - _impl_.former_object_typeid_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagChangedToExpire::_internal_former_object_typeid() const { - return _impl_.former_object_typeid_; - } - inline uint32_t AppearanceFlagChangedToExpire::former_object_typeid() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagChangedToExpire.former_object_typeid) - return _internal_former_object_typeid(); - } - inline void AppearanceFlagChangedToExpire::_internal_set_former_object_typeid(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.former_object_typeid_ = value; - } - inline void AppearanceFlagChangedToExpire::set_former_object_typeid(uint32_t value) { - _internal_set_former_object_typeid(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagChangedToExpire.former_object_typeid) - } - - // ------------------------------------------------------------------- - - // AppearanceFlagCyclopedia - - // optional uint32 cyclopedia_type = 1; - inline bool AppearanceFlagCyclopedia::_internal_has_cyclopedia_type() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool AppearanceFlagCyclopedia::has_cyclopedia_type() const { - return _internal_has_cyclopedia_type(); - } - inline void AppearanceFlagCyclopedia::clear_cyclopedia_type() { - _impl_.cyclopedia_type_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t AppearanceFlagCyclopedia::_internal_cyclopedia_type() const { - return _impl_.cyclopedia_type_; - } - inline uint32_t AppearanceFlagCyclopedia::cyclopedia_type() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.AppearanceFlagCyclopedia.cyclopedia_type) - return _internal_cyclopedia_type(); - } - inline void AppearanceFlagCyclopedia::_internal_set_cyclopedia_type(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.cyclopedia_type_ = value; - } - inline void AppearanceFlagCyclopedia::set_cyclopedia_type(uint32_t value) { - _internal_set_cyclopedia_type(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.AppearanceFlagCyclopedia.cyclopedia_type) - } - - // ------------------------------------------------------------------- - - // SpecialMeaningAppearanceIds - - // optional uint32 gold_coin_id = 1; - inline bool SpecialMeaningAppearanceIds::_internal_has_gold_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_gold_coin_id() const { - return _internal_has_gold_coin_id(); - } - inline void SpecialMeaningAppearanceIds::clear_gold_coin_id() { - _impl_.gold_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000001u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_gold_coin_id() const { - return _impl_.gold_coin_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::gold_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.gold_coin_id) - return _internal_gold_coin_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_gold_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.gold_coin_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_gold_coin_id(uint32_t value) { - _internal_set_gold_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.gold_coin_id) - } - - // optional uint32 platinum_coin_id = 2; - inline bool SpecialMeaningAppearanceIds::_internal_has_platinum_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_platinum_coin_id() const { - return _internal_has_platinum_coin_id(); - } - inline void SpecialMeaningAppearanceIds::clear_platinum_coin_id() { - _impl_.platinum_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000002u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_platinum_coin_id() const { - return _impl_.platinum_coin_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::platinum_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.platinum_coin_id) - return _internal_platinum_coin_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_platinum_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.platinum_coin_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_platinum_coin_id(uint32_t value) { - _internal_set_platinum_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.platinum_coin_id) - } - - // optional uint32 crystal_coin_id = 3; - inline bool SpecialMeaningAppearanceIds::_internal_has_crystal_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_crystal_coin_id() const { - return _internal_has_crystal_coin_id(); - } - inline void SpecialMeaningAppearanceIds::clear_crystal_coin_id() { - _impl_.crystal_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000004u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_crystal_coin_id() const { - return _impl_.crystal_coin_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::crystal_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.crystal_coin_id) - return _internal_crystal_coin_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_crystal_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000004u; - _impl_.crystal_coin_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_crystal_coin_id(uint32_t value) { - _internal_set_crystal_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.crystal_coin_id) - } - - // optional uint32 tibia_coin_id = 4; - inline bool SpecialMeaningAppearanceIds::_internal_has_tibia_coin_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_tibia_coin_id() const { - return _internal_has_tibia_coin_id(); - } - inline void SpecialMeaningAppearanceIds::clear_tibia_coin_id() { - _impl_.tibia_coin_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000008u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_tibia_coin_id() const { - return _impl_.tibia_coin_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::tibia_coin_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.tibia_coin_id) - return _internal_tibia_coin_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_tibia_coin_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000008u; - _impl_.tibia_coin_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_tibia_coin_id(uint32_t value) { - _internal_set_tibia_coin_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.tibia_coin_id) - } - - // optional uint32 stamped_letter_id = 5; - inline bool SpecialMeaningAppearanceIds::_internal_has_stamped_letter_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_stamped_letter_id() const { - return _internal_has_stamped_letter_id(); - } - inline void SpecialMeaningAppearanceIds::clear_stamped_letter_id() { - _impl_.stamped_letter_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000010u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_stamped_letter_id() const { - return _impl_.stamped_letter_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::stamped_letter_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.stamped_letter_id) - return _internal_stamped_letter_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_stamped_letter_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000010u; - _impl_.stamped_letter_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_stamped_letter_id(uint32_t value) { - _internal_set_stamped_letter_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.stamped_letter_id) - } - - // optional uint32 supply_stash_id = 6; - inline bool SpecialMeaningAppearanceIds::_internal_has_supply_stash_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_supply_stash_id() const { - return _internal_has_supply_stash_id(); - } - inline void SpecialMeaningAppearanceIds::clear_supply_stash_id() { - _impl_.supply_stash_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000020u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_supply_stash_id() const { - return _impl_.supply_stash_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::supply_stash_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.supply_stash_id) - return _internal_supply_stash_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_supply_stash_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000020u; - _impl_.supply_stash_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_supply_stash_id(uint32_t value) { - _internal_set_supply_stash_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.supply_stash_id) - } - - // optional uint32 reward_chest_id = 7; - inline bool SpecialMeaningAppearanceIds::_internal_has_reward_chest_id() const { - bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; - return value; - } - inline bool SpecialMeaningAppearanceIds::has_reward_chest_id() const { - return _internal_has_reward_chest_id(); - } - inline void SpecialMeaningAppearanceIds::clear_reward_chest_id() { - _impl_.reward_chest_id_ = 0u; - _impl_._has_bits_[0] &= ~0x00000040u; - } - inline uint32_t SpecialMeaningAppearanceIds::_internal_reward_chest_id() const { - return _impl_.reward_chest_id_; - } - inline uint32_t SpecialMeaningAppearanceIds::reward_chest_id() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.reward_chest_id) - return _internal_reward_chest_id(); - } - inline void SpecialMeaningAppearanceIds::_internal_set_reward_chest_id(uint32_t value) { - _impl_._has_bits_[0] |= 0x00000040u; - _impl_.reward_chest_id_ = value; - } - inline void SpecialMeaningAppearanceIds::set_reward_chest_id(uint32_t value) { - _internal_set_reward_chest_id(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.appearances.SpecialMeaningAppearanceIds.reward_chest_id) - } - -#ifdef __GNUC__ - #pragma GCC diagnostic pop -#endif // __GNUC__ - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // @@protoc_insertion_point(namespace_scope) - - } // namespace appearances - } // namespace protobuf -} // namespace Canary - -PROTOBUF_NAMESPACE_OPEN - -template <> -struct is_proto_enum<::Canary::protobuf::appearances::PLAYER_ACTION> : ::std::true_type { }; -template <> -inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::PLAYER_ACTION>() { - return ::Canary::protobuf::appearances::PLAYER_ACTION_descriptor(); -} -template <> -struct is_proto_enum<::Canary::protobuf::appearances::ITEM_CATEGORY> : ::std::true_type { }; -template <> -inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::ITEM_CATEGORY>() { - return ::Canary::protobuf::appearances::ITEM_CATEGORY_descriptor(); -} -template <> -struct is_proto_enum<::Canary::protobuf::appearances::PLAYER_PROFESSION> : ::std::true_type { }; -template <> -inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::PLAYER_PROFESSION>() { - return ::Canary::protobuf::appearances::PLAYER_PROFESSION_descriptor(); -} -template <> -struct is_proto_enum<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE> : ::std::true_type { }; -template <> -inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE>() { - return ::Canary::protobuf::appearances::ANIMATION_LOOP_TYPE_descriptor(); -} -template <> -struct is_proto_enum<::Canary::protobuf::appearances::HOOK_TYPE> : ::std::true_type { }; -template <> -inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::HOOK_TYPE>() { - return ::Canary::protobuf::appearances::HOOK_TYPE_descriptor(); -} -template <> -struct is_proto_enum<::Canary::protobuf::appearances::FIXED_FRAME_GROUP> : ::std::true_type { }; -template <> -inline const EnumDescriptor* GetEnumDescriptor<::Canary::protobuf::appearances::FIXED_FRAME_GROUP>() { - return ::Canary::protobuf::appearances::FIXED_FRAME_GROUP_descriptor(); -} - -PROTOBUF_NAMESPACE_CLOSE - -// @@protoc_insertion_point(global_scope) - -#include -#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_appearances_2eproto diff --git a/src/protobuf/kv.pb.cc b/src/protobuf/kv.pb.cc deleted file mode 100644 index 74cbaece407..00000000000 --- a/src/protobuf/kv.pb.cc +++ /dev/null @@ -1,1247 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: kv.proto - -#include "kv.pb.h" - -#include - -#include -#include -#include -#include -#include -#include -#include -// @@protoc_insertion_point(includes) -#include - -PROTOBUF_PRAGMA_INIT_SEG - -namespace _pb = ::PROTOBUF_NAMESPACE_ID; -namespace _pbi = _pb::internal; - -namespace Canary { -namespace protobuf { -namespace kv { -PROTOBUF_CONSTEXPR ValueWrapper::ValueWrapper( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.value_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_._oneof_case_)*/{}} {} -struct ValueWrapperDefaultTypeInternal { - PROTOBUF_CONSTEXPR ValueWrapperDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~ValueWrapperDefaultTypeInternal() {} - union { - ValueWrapper _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ValueWrapperDefaultTypeInternal _ValueWrapper_default_instance_; -PROTOBUF_CONSTEXPR ArrayType::ArrayType( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.values_)*/{} - , /*decltype(_impl_._cached_size_)*/{}} {} -struct ArrayTypeDefaultTypeInternal { - PROTOBUF_CONSTEXPR ArrayTypeDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~ArrayTypeDefaultTypeInternal() {} - union { - ArrayType _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ArrayTypeDefaultTypeInternal _ArrayType_default_instance_; -PROTOBUF_CONSTEXPR KeyValuePair::KeyValuePair( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.key_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.value_)*/nullptr - , /*decltype(_impl_._cached_size_)*/{}} {} -struct KeyValuePairDefaultTypeInternal { - PROTOBUF_CONSTEXPR KeyValuePairDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~KeyValuePairDefaultTypeInternal() {} - union { - KeyValuePair _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 KeyValuePairDefaultTypeInternal _KeyValuePair_default_instance_; -PROTOBUF_CONSTEXPR MapType::MapType( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.items_)*/{} - , /*decltype(_impl_._cached_size_)*/{}} {} -struct MapTypeDefaultTypeInternal { - PROTOBUF_CONSTEXPR MapTypeDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~MapTypeDefaultTypeInternal() {} - union { - MapType _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MapTypeDefaultTypeInternal _MapType_default_instance_; -} // namespace kv -} // namespace protobuf -} // namespace Canary -static ::_pb::Metadata file_level_metadata_kv_2eproto[4]; -static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_kv_2eproto = nullptr; -static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_kv_2eproto = nullptr; - -const uint32_t TableStruct_kv_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::ValueWrapper, _internal_metadata_), - ~0u, // no _extensions_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::ValueWrapper, _impl_._oneof_case_[0]), - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - ::_pbi::kInvalidFieldOffsetTag, - ::_pbi::kInvalidFieldOffsetTag, - ::_pbi::kInvalidFieldOffsetTag, - ::_pbi::kInvalidFieldOffsetTag, - ::_pbi::kInvalidFieldOffsetTag, - ::_pbi::kInvalidFieldOffsetTag, - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::ValueWrapper, _impl_.value_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::ArrayType, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::ArrayType, _impl_.values_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::KeyValuePair, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::KeyValuePair, _impl_.key_), - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::KeyValuePair, _impl_.value_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::MapType, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Canary::protobuf::kv::MapType, _impl_.items_), -}; -static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - { 0, -1, -1, sizeof(::Canary::protobuf::kv::ValueWrapper)}, - { 13, -1, -1, sizeof(::Canary::protobuf::kv::ArrayType)}, - { 20, -1, -1, sizeof(::Canary::protobuf::kv::KeyValuePair)}, - { 28, -1, -1, sizeof(::Canary::protobuf::kv::MapType)}, -}; - -static const ::_pb::Message* const file_default_instances[] = { - &::Canary::protobuf::kv::_ValueWrapper_default_instance_._instance, - &::Canary::protobuf::kv::_ArrayType_default_instance_._instance, - &::Canary::protobuf::kv::_KeyValuePair_default_instance_._instance, - &::Canary::protobuf::kv::_MapType_default_instance_._instance, -}; - -const char descriptor_table_protodef_kv_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = - "\n\010kv.proto\022\022Canary.protobuf.kv\"\327\001\n\014Value" - "Wrapper\022\023\n\tstr_value\030\001 \001(\tH\000\022\023\n\tint_valu" - "e\030\002 \001(\005H\000\022\026\n\014double_value\030\003 \001(\001H\000\0224\n\013arr" - "ay_value\030\004 \001(\0132\035.Canary.protobuf.kv.Arra" - "yTypeH\000\0220\n\tmap_value\030\005 \001(\0132\033.Canary.prot" - "obuf.kv.MapTypeH\000\022\024\n\nbool_value\030\006 \001(\010H\000B" - "\007\n\005value\"=\n\tArrayType\0220\n\006values\030\001 \003(\0132 ." - "Canary.protobuf.kv.ValueWrapper\"L\n\014KeyVa" - "luePair\022\013\n\003key\030\001 \001(\t\022/\n\005value\030\002 \001(\0132 .Ca" - "nary.protobuf.kv.ValueWrapper\":\n\007MapType" - "\022/\n\005items\030\001 \003(\0132 .Canary.protobuf.kv.Key" - "ValuePairb\006proto3" - ; -static ::_pbi::once_flag descriptor_table_kv_2eproto_once; -const ::_pbi::DescriptorTable descriptor_table_kv_2eproto = { - false, false, 457, descriptor_table_protodef_kv_2eproto, - "kv.proto", - &descriptor_table_kv_2eproto_once, nullptr, 0, 4, - schemas, file_default_instances, TableStruct_kv_2eproto::offsets, - file_level_metadata_kv_2eproto, file_level_enum_descriptors_kv_2eproto, - file_level_service_descriptors_kv_2eproto, -}; -PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_kv_2eproto_getter() { - return &descriptor_table_kv_2eproto; -} - -// Force running AddDescriptors() at dynamic initialization time. -PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_kv_2eproto(&descriptor_table_kv_2eproto); -namespace Canary { -namespace protobuf { -namespace kv { - -// =================================================================== - -class ValueWrapper::_Internal { - public: - static const ::Canary::protobuf::kv::ArrayType& array_value(const ValueWrapper* msg); - static const ::Canary::protobuf::kv::MapType& map_value(const ValueWrapper* msg); -}; - -const ::Canary::protobuf::kv::ArrayType& -ValueWrapper::_Internal::array_value(const ValueWrapper* msg) { - return *msg->_impl_.value_.array_value_; -} -const ::Canary::protobuf::kv::MapType& -ValueWrapper::_Internal::map_value(const ValueWrapper* msg) { - return *msg->_impl_.value_.map_value_; -} -void ValueWrapper::set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - clear_value(); - if (array_value) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(array_value); - if (message_arena != submessage_arena) { - array_value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, array_value, submessage_arena); - } - set_has_array_value(); - _impl_.value_.array_value_ = array_value; - } - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.ValueWrapper.array_value) -} -void ValueWrapper::set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - clear_value(); - if (map_value) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(map_value); - if (message_arena != submessage_arena) { - map_value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, map_value, submessage_arena); - } - set_has_map_value(); - _impl_.value_.map_value_ = map_value; - } - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.ValueWrapper.map_value) -} -ValueWrapper::ValueWrapper(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.kv.ValueWrapper) -} -ValueWrapper::ValueWrapper(const ValueWrapper& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - ValueWrapper* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.value_){} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_._oneof_case_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - clear_has_value(); - switch (from.value_case()) { - case kStrValue: { - _this->_internal_set_str_value(from._internal_str_value()); - break; - } - case kIntValue: { - _this->_internal_set_int_value(from._internal_int_value()); - break; - } - case kDoubleValue: { - _this->_internal_set_double_value(from._internal_double_value()); - break; - } - case kArrayValue: { - _this->_internal_mutable_array_value()->::Canary::protobuf::kv::ArrayType::MergeFrom( - from._internal_array_value()); - break; - } - case kMapValue: { - _this->_internal_mutable_map_value()->::Canary::protobuf::kv::MapType::MergeFrom( - from._internal_map_value()); - break; - } - case kBoolValue: { - _this->_internal_set_bool_value(from._internal_bool_value()); - break; - } - case VALUE_NOT_SET: { - break; - } - } - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.kv.ValueWrapper) -} - -inline void ValueWrapper::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.value_){} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_._oneof_case_)*/{} - }; - clear_has_value(); -} - -ValueWrapper::~ValueWrapper() { - // @@protoc_insertion_point(destructor:Canary.protobuf.kv.ValueWrapper) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void ValueWrapper::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - if (has_value()) { - clear_value(); - } -} - -void ValueWrapper::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void ValueWrapper::clear_value() { -// @@protoc_insertion_point(one_of_clear_start:Canary.protobuf.kv.ValueWrapper) - switch (value_case()) { - case kStrValue: { - _impl_.value_.str_value_.Destroy(); - break; - } - case kIntValue: { - // No need to clear - break; - } - case kDoubleValue: { - // No need to clear - break; - } - case kArrayValue: { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.value_.array_value_; - } - break; - } - case kMapValue: { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.value_.map_value_; - } - break; - } - case kBoolValue: { - // No need to clear - break; - } - case VALUE_NOT_SET: { - break; - } - } - _impl_._oneof_case_[0] = VALUE_NOT_SET; -} - - -void ValueWrapper::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.kv.ValueWrapper) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - clear_value(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* ValueWrapper::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // string str_value = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - auto str = _internal_mutable_str_value(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Canary.protobuf.kv.ValueWrapper.str_value")); - } else - goto handle_unusual; - continue; - // int32 int_value = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _internal_set_int_value(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr)); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // double double_value = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 25)) { - _internal_set_double_value(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr)); - ptr += sizeof(double); - } else - goto handle_unusual; - continue; - // .Canary.protobuf.kv.ArrayType array_value = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - ptr = ctx->ParseMessage(_internal_mutable_array_value(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // .Canary.protobuf.kv.MapType map_value = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { - ptr = ctx->ParseMessage(_internal_mutable_map_value(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // bool bool_value = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - _internal_set_bool_value(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr)); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* ValueWrapper::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.kv.ValueWrapper) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // string str_value = 1; - if (_internal_has_str_value()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_str_value().data(), static_cast(this->_internal_str_value().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Canary.protobuf.kv.ValueWrapper.str_value"); - target = stream->WriteStringMaybeAliased( - 1, this->_internal_str_value(), target); - } - - // int32 int_value = 2; - if (_internal_has_int_value()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_int_value(), target); - } - - // double double_value = 3; - if (_internal_has_double_value()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteDoubleToArray(3, this->_internal_double_value(), target); - } - - // .Canary.protobuf.kv.ArrayType array_value = 4; - if (_internal_has_array_value()) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(4, _Internal::array_value(this), - _Internal::array_value(this).GetCachedSize(), target, stream); - } - - // .Canary.protobuf.kv.MapType map_value = 5; - if (_internal_has_map_value()) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(5, _Internal::map_value(this), - _Internal::map_value(this).GetCachedSize(), target, stream); - } - - // bool bool_value = 6; - if (_internal_has_bool_value()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_bool_value(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.kv.ValueWrapper) - return target; -} - -size_t ValueWrapper::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.kv.ValueWrapper) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - switch (value_case()) { - // string str_value = 1; - case kStrValue: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_str_value()); - break; - } - // int32 int_value = 2; - case kIntValue: { - total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_int_value()); - break; - } - // double double_value = 3; - case kDoubleValue: { - total_size += 1 + 8; - break; - } - // .Canary.protobuf.kv.ArrayType array_value = 4; - case kArrayValue: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.value_.array_value_); - break; - } - // .Canary.protobuf.kv.MapType map_value = 5; - case kMapValue: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.value_.map_value_); - break; - } - // bool bool_value = 6; - case kBoolValue: { - total_size += 1 + 1; - break; - } - case VALUE_NOT_SET: { - break; - } - } - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ValueWrapper::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - ValueWrapper::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ValueWrapper::GetClassData() const { return &_class_data_; } - - -void ValueWrapper::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.kv.ValueWrapper) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - switch (from.value_case()) { - case kStrValue: { - _this->_internal_set_str_value(from._internal_str_value()); - break; - } - case kIntValue: { - _this->_internal_set_int_value(from._internal_int_value()); - break; - } - case kDoubleValue: { - _this->_internal_set_double_value(from._internal_double_value()); - break; - } - case kArrayValue: { - _this->_internal_mutable_array_value()->::Canary::protobuf::kv::ArrayType::MergeFrom( - from._internal_array_value()); - break; - } - case kMapValue: { - _this->_internal_mutable_map_value()->::Canary::protobuf::kv::MapType::MergeFrom( - from._internal_map_value()); - break; - } - case kBoolValue: { - _this->_internal_set_bool_value(from._internal_bool_value()); - break; - } - case VALUE_NOT_SET: { - break; - } - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void ValueWrapper::CopyFrom(const ValueWrapper& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.kv.ValueWrapper) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool ValueWrapper::IsInitialized() const { - return true; -} - -void ValueWrapper::InternalSwap(ValueWrapper* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_.value_, other->_impl_.value_); - swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]); -} - -::PROTOBUF_NAMESPACE_ID::Metadata ValueWrapper::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_kv_2eproto_getter, &descriptor_table_kv_2eproto_once, - file_level_metadata_kv_2eproto[0]); -} - -// =================================================================== - -class ArrayType::_Internal { - public: -}; - -ArrayType::ArrayType(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.kv.ArrayType) -} -ArrayType::ArrayType(const ArrayType& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - ArrayType* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.values_){from._impl_.values_} - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.kv.ArrayType) -} - -inline void ArrayType::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.values_){arena} - , /*decltype(_impl_._cached_size_)*/{} - }; -} - -ArrayType::~ArrayType() { - // @@protoc_insertion_point(destructor:Canary.protobuf.kv.ArrayType) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void ArrayType::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.values_.~RepeatedPtrField(); -} - -void ArrayType::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void ArrayType::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.kv.ArrayType) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.values_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* ArrayType::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // repeated .Canary.protobuf.kv.ValueWrapper values = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_values(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* ArrayType::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.kv.ArrayType) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // repeated .Canary.protobuf.kv.ValueWrapper values = 1; - for (unsigned i = 0, - n = static_cast(this->_internal_values_size()); i < n; i++) { - const auto& repfield = this->_internal_values(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.kv.ArrayType) - return target; -} - -size_t ArrayType::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.kv.ArrayType) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.kv.ValueWrapper values = 1; - total_size += 1UL * this->_internal_values_size(); - for (const auto& msg : this->_impl_.values_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ArrayType::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - ArrayType::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ArrayType::GetClassData() const { return &_class_data_; } - - -void ArrayType::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.kv.ArrayType) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.values_.MergeFrom(from._impl_.values_); - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void ArrayType::CopyFrom(const ArrayType& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.kv.ArrayType) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool ArrayType::IsInitialized() const { - return true; -} - -void ArrayType::InternalSwap(ArrayType* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - _impl_.values_.InternalSwap(&other->_impl_.values_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata ArrayType::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_kv_2eproto_getter, &descriptor_table_kv_2eproto_once, - file_level_metadata_kv_2eproto[1]); -} - -// =================================================================== - -class KeyValuePair::_Internal { - public: - static const ::Canary::protobuf::kv::ValueWrapper& value(const KeyValuePair* msg); -}; - -const ::Canary::protobuf::kv::ValueWrapper& -KeyValuePair::_Internal::value(const KeyValuePair* msg) { - return *msg->_impl_.value_; -} -KeyValuePair::KeyValuePair(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.kv.KeyValuePair) -} -KeyValuePair::KeyValuePair(const KeyValuePair& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - KeyValuePair* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.key_){} - , decltype(_impl_.value_){nullptr} - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.key_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.key_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_key().empty()) { - _this->_impl_.key_.Set(from._internal_key(), - _this->GetArenaForAllocation()); - } - if (from._internal_has_value()) { - _this->_impl_.value_ = new ::Canary::protobuf::kv::ValueWrapper(*from._impl_.value_); - } - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.kv.KeyValuePair) -} - -inline void KeyValuePair::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.key_){} - , decltype(_impl_.value_){nullptr} - , /*decltype(_impl_._cached_size_)*/{} - }; - _impl_.key_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.key_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING -} - -KeyValuePair::~KeyValuePair() { - // @@protoc_insertion_point(destructor:Canary.protobuf.kv.KeyValuePair) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void KeyValuePair::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.key_.Destroy(); - if (this != internal_default_instance()) delete _impl_.value_; -} - -void KeyValuePair::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void KeyValuePair::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.kv.KeyValuePair) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.key_.ClearToEmpty(); - if (GetArenaForAllocation() == nullptr && _impl_.value_ != nullptr) { - delete _impl_.value_; - } - _impl_.value_ = nullptr; - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* KeyValuePair::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // string key = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - auto str = _internal_mutable_key(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Canary.protobuf.kv.KeyValuePair.key")); - } else - goto handle_unusual; - continue; - // .Canary.protobuf.kv.ValueWrapper value = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - ptr = ctx->ParseMessage(_internal_mutable_value(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* KeyValuePair::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.kv.KeyValuePair) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // string key = 1; - if (!this->_internal_key().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_key().data(), static_cast(this->_internal_key().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Canary.protobuf.kv.KeyValuePair.key"); - target = stream->WriteStringMaybeAliased( - 1, this->_internal_key(), target); - } - - // .Canary.protobuf.kv.ValueWrapper value = 2; - if (this->_internal_has_value()) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(2, _Internal::value(this), - _Internal::value(this).GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.kv.KeyValuePair) - return target; -} - -size_t KeyValuePair::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.kv.KeyValuePair) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // string key = 1; - if (!this->_internal_key().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_key()); - } - - // .Canary.protobuf.kv.ValueWrapper value = 2; - if (this->_internal_has_value()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.value_); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData KeyValuePair::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - KeyValuePair::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*KeyValuePair::GetClassData() const { return &_class_data_; } - - -void KeyValuePair::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.kv.KeyValuePair) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (!from._internal_key().empty()) { - _this->_internal_set_key(from._internal_key()); - } - if (from._internal_has_value()) { - _this->_internal_mutable_value()->::Canary::protobuf::kv::ValueWrapper::MergeFrom( - from._internal_value()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void KeyValuePair::CopyFrom(const KeyValuePair& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.kv.KeyValuePair) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool KeyValuePair::IsInitialized() const { - return true; -} - -void KeyValuePair::InternalSwap(KeyValuePair* other) { - using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.key_, lhs_arena, - &other->_impl_.key_, rhs_arena - ); - swap(_impl_.value_, other->_impl_.value_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata KeyValuePair::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_kv_2eproto_getter, &descriptor_table_kv_2eproto_once, - file_level_metadata_kv_2eproto[2]); -} - -// =================================================================== - -class MapType::_Internal { - public: -}; - -MapType::MapType(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Canary.protobuf.kv.MapType) -} -MapType::MapType(const MapType& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - MapType* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.items_){from._impl_.items_} - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - // @@protoc_insertion_point(copy_constructor:Canary.protobuf.kv.MapType) -} - -inline void MapType::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.items_){arena} - , /*decltype(_impl_._cached_size_)*/{} - }; -} - -MapType::~MapType() { - // @@protoc_insertion_point(destructor:Canary.protobuf.kv.MapType) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void MapType::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.items_.~RepeatedPtrField(); -} - -void MapType::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void MapType::Clear() { -// @@protoc_insertion_point(message_clear_start:Canary.protobuf.kv.MapType) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.items_.Clear(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* MapType::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // repeated .Canary.protobuf.kv.KeyValuePair items = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_items(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* MapType::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Canary.protobuf.kv.MapType) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // repeated .Canary.protobuf.kv.KeyValuePair items = 1; - for (unsigned i = 0, - n = static_cast(this->_internal_items_size()); i < n; i++) { - const auto& repfield = this->_internal_items(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:Canary.protobuf.kv.MapType) - return target; -} - -size_t MapType::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Canary.protobuf.kv.MapType) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Canary.protobuf.kv.KeyValuePair items = 1; - total_size += 1UL * this->_internal_items_size(); - for (const auto& msg : this->_impl_.items_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MapType::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - MapType::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MapType::GetClassData() const { return &_class_data_; } - - -void MapType::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Canary.protobuf.kv.MapType) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - _this->_impl_.items_.MergeFrom(from._impl_.items_); - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void MapType::CopyFrom(const MapType& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Canary.protobuf.kv.MapType) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool MapType::IsInitialized() const { - return true; -} - -void MapType::InternalSwap(MapType* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - _impl_.items_.InternalSwap(&other->_impl_.items_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata MapType::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_kv_2eproto_getter, &descriptor_table_kv_2eproto_once, - file_level_metadata_kv_2eproto[3]); -} - -// @@protoc_insertion_point(namespace_scope) -} // namespace kv -} // namespace protobuf -} // namespace Canary -PROTOBUF_NAMESPACE_OPEN -template<> PROTOBUF_NOINLINE ::Canary::protobuf::kv::ValueWrapper* -Arena::CreateMaybeMessage< ::Canary::protobuf::kv::ValueWrapper >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::kv::ValueWrapper >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::kv::ArrayType* -Arena::CreateMaybeMessage< ::Canary::protobuf::kv::ArrayType >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::kv::ArrayType >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::kv::KeyValuePair* -Arena::CreateMaybeMessage< ::Canary::protobuf::kv::KeyValuePair >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::kv::KeyValuePair >(arena); -} -template<> PROTOBUF_NOINLINE ::Canary::protobuf::kv::MapType* -Arena::CreateMaybeMessage< ::Canary::protobuf::kv::MapType >(Arena* arena) { - return Arena::CreateMessageInternal< ::Canary::protobuf::kv::MapType >(arena); -} -PROTOBUF_NAMESPACE_CLOSE - -// @@protoc_insertion_point(global_scope) -#include diff --git a/src/protobuf/kv.pb.h b/src/protobuf/kv.pb.h deleted file mode 100644 index 5f9afb791d5..00000000000 --- a/src/protobuf/kv.pb.h +++ /dev/null @@ -1,1533 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: kv.proto - -#ifndef GOOGLE_PROTOBUF_INCLUDED_kv_2eproto -#define GOOGLE_PROTOBUF_INCLUDED_kv_2eproto - -#include -#include - -#include -#if PROTOBUF_VERSION < 3021000 - #error This file was generated by a newer version of protoc which is - #error incompatible with your Protocol Buffer headers. Please update - #error your headers. -#endif -#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION - #error This file was generated by an older version of protoc which is - #error incompatible with your Protocol Buffer headers. Please - #error regenerate this file with a newer version of protoc. -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include // IWYU pragma: export -#include // IWYU pragma: export -#include -// @@protoc_insertion_point(includes) -#include -#define PROTOBUF_INTERNAL_EXPORT_kv_2eproto -PROTOBUF_NAMESPACE_OPEN -namespace internal { - class AnyMetadata; -} // namespace internal -PROTOBUF_NAMESPACE_CLOSE - -// Internal implementation detail -- do not use these members. -struct TableStruct_kv_2eproto { - static const uint32_t offsets[]; -}; -extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_kv_2eproto; -namespace Canary { - namespace protobuf { - namespace kv { - class ArrayType; - struct ArrayTypeDefaultTypeInternal; - extern ArrayTypeDefaultTypeInternal _ArrayType_default_instance_; - class KeyValuePair; - struct KeyValuePairDefaultTypeInternal; - extern KeyValuePairDefaultTypeInternal _KeyValuePair_default_instance_; - class MapType; - struct MapTypeDefaultTypeInternal; - extern MapTypeDefaultTypeInternal _MapType_default_instance_; - class ValueWrapper; - struct ValueWrapperDefaultTypeInternal; - extern ValueWrapperDefaultTypeInternal _ValueWrapper_default_instance_; - } // namespace kv - } // namespace protobuf -} // namespace Canary -PROTOBUF_NAMESPACE_OPEN -template <> -::Canary::protobuf::kv::ArrayType* Arena::CreateMaybeMessage<::Canary::protobuf::kv::ArrayType>(Arena*); -template <> -::Canary::protobuf::kv::KeyValuePair* Arena::CreateMaybeMessage<::Canary::protobuf::kv::KeyValuePair>(Arena*); -template <> -::Canary::protobuf::kv::MapType* Arena::CreateMaybeMessage<::Canary::protobuf::kv::MapType>(Arena*); -template <> -::Canary::protobuf::kv::ValueWrapper* Arena::CreateMaybeMessage<::Canary::protobuf::kv::ValueWrapper>(Arena*); -PROTOBUF_NAMESPACE_CLOSE -namespace Canary { - namespace protobuf { - namespace kv { - - // =================================================================== - - class ValueWrapper final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.ValueWrapper) */ { - public: - inline ValueWrapper() : - ValueWrapper(nullptr) { } - ~ValueWrapper() override; - explicit PROTOBUF_CONSTEXPR ValueWrapper(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - ValueWrapper(const ValueWrapper &from); - ValueWrapper(ValueWrapper &&from) noexcept - : - ValueWrapper() { - *this = ::std::move(from); - } - - inline ValueWrapper &operator=(const ValueWrapper &from) { - CopyFrom(from); - return *this; - } - inline ValueWrapper &operator=(ValueWrapper &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const ValueWrapper &default_instance() { - return *internal_default_instance(); - } - enum ValueCase { - kStrValue = 1, - kIntValue = 2, - kDoubleValue = 3, - kArrayValue = 4, - kMapValue = 5, - kBoolValue = 6, - VALUE_NOT_SET = 0, - }; - - static inline const ValueWrapper* internal_default_instance() { - return reinterpret_cast( - &_ValueWrapper_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 0; - - friend void swap(ValueWrapper &a, ValueWrapper &b) { - a.Swap(&b); - } - inline void Swap(ValueWrapper* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(ValueWrapper* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - ValueWrapper* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ValueWrapper &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const ValueWrapper &from) { - ValueWrapper::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ValueWrapper* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.ValueWrapper"; - } - - protected: - explicit ValueWrapper(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kStrValueFieldNumber = 1, - kIntValueFieldNumber = 2, - kDoubleValueFieldNumber = 3, - kArrayValueFieldNumber = 4, - kMapValueFieldNumber = 5, - kBoolValueFieldNumber = 6, - }; - // string str_value = 1; - bool has_str_value() const; - - private: - bool _internal_has_str_value() const; - - public: - void clear_str_value(); - const std::string &str_value() const; - template - void set_str_value(ArgT0 &&arg0, ArgT... args); - std::string* mutable_str_value(); - PROTOBUF_NODISCARD std::string* release_str_value(); - void set_allocated_str_value(std::string* str_value); - - private: - const std::string &_internal_str_value() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_str_value(const std::string &value); - std::string* _internal_mutable_str_value(); - - public: - // int32 int_value = 2; - bool has_int_value() const; - - private: - bool _internal_has_int_value() const; - - public: - void clear_int_value(); - int32_t int_value() const; - void set_int_value(int32_t value); - - private: - int32_t _internal_int_value() const; - void _internal_set_int_value(int32_t value); - - public: - // double double_value = 3; - bool has_double_value() const; - - private: - bool _internal_has_double_value() const; - - public: - void clear_double_value(); - double double_value() const; - void set_double_value(double value); - - private: - double _internal_double_value() const; - void _internal_set_double_value(double value); - - public: - // .Canary.protobuf.kv.ArrayType array_value = 4; - bool has_array_value() const; - - private: - bool _internal_has_array_value() const; - - public: - void clear_array_value(); - const ::Canary::protobuf::kv::ArrayType &array_value() const; - PROTOBUF_NODISCARD ::Canary::protobuf::kv::ArrayType* release_array_value(); - ::Canary::protobuf::kv::ArrayType* mutable_array_value(); - void set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value); - - private: - const ::Canary::protobuf::kv::ArrayType &_internal_array_value() const; - ::Canary::protobuf::kv::ArrayType* _internal_mutable_array_value(); - - public: - void unsafe_arena_set_allocated_array_value( - ::Canary::protobuf::kv::ArrayType* array_value - ); - ::Canary::protobuf::kv::ArrayType* unsafe_arena_release_array_value(); - - // .Canary.protobuf.kv.MapType map_value = 5; - bool has_map_value() const; - - private: - bool _internal_has_map_value() const; - - public: - void clear_map_value(); - const ::Canary::protobuf::kv::MapType &map_value() const; - PROTOBUF_NODISCARD ::Canary::protobuf::kv::MapType* release_map_value(); - ::Canary::protobuf::kv::MapType* mutable_map_value(); - void set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value); - - private: - const ::Canary::protobuf::kv::MapType &_internal_map_value() const; - ::Canary::protobuf::kv::MapType* _internal_mutable_map_value(); - - public: - void unsafe_arena_set_allocated_map_value( - ::Canary::protobuf::kv::MapType* map_value - ); - ::Canary::protobuf::kv::MapType* unsafe_arena_release_map_value(); - - // bool bool_value = 6; - bool has_bool_value() const; - - private: - bool _internal_has_bool_value() const; - - public: - void clear_bool_value(); - bool bool_value() const; - void set_bool_value(bool value); - - private: - bool _internal_bool_value() const; - void _internal_set_bool_value(bool value); - - public: - void clear_value(); - ValueCase value_case() const; - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.ValueWrapper) - private: - class _Internal; - void set_has_str_value(); - void set_has_int_value(); - void set_has_double_value(); - void set_has_array_value(); - void set_has_map_value(); - void set_has_bool_value(); - - inline bool has_value() const; - inline void clear_has_value(); - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - union ValueUnion { - constexpr ValueUnion() : - _constinit_ {} { } - ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr str_value_; - int32_t int_value_; - double double_value_; - ::Canary::protobuf::kv::ArrayType* array_value_; - ::Canary::protobuf::kv::MapType* map_value_; - bool bool_value_; - } value_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t _oneof_case_[1]; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_kv_2eproto; - }; - // ------------------------------------------------------------------- - - class ArrayType final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.ArrayType) */ { - public: - inline ArrayType() : - ArrayType(nullptr) { } - ~ArrayType() override; - explicit PROTOBUF_CONSTEXPR ArrayType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - ArrayType(const ArrayType &from); - ArrayType(ArrayType &&from) noexcept - : - ArrayType() { - *this = ::std::move(from); - } - - inline ArrayType &operator=(const ArrayType &from) { - CopyFrom(from); - return *this; - } - inline ArrayType &operator=(ArrayType &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const ArrayType &default_instance() { - return *internal_default_instance(); - } - static inline const ArrayType* internal_default_instance() { - return reinterpret_cast( - &_ArrayType_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 1; - - friend void swap(ArrayType &a, ArrayType &b) { - a.Swap(&b); - } - inline void Swap(ArrayType* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(ArrayType* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - ArrayType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ArrayType &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const ArrayType &from) { - ArrayType::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ArrayType* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.ArrayType"; - } - - protected: - explicit ArrayType(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kValuesFieldNumber = 1, - }; - // repeated .Canary.protobuf.kv.ValueWrapper values = 1; - int values_size() const; - - private: - int _internal_values_size() const; - - public: - void clear_values(); - ::Canary::protobuf::kv::ValueWrapper* mutable_values(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper>* - mutable_values(); - - private: - const ::Canary::protobuf::kv::ValueWrapper &_internal_values(int index) const; - ::Canary::protobuf::kv::ValueWrapper* _internal_add_values(); - - public: - const ::Canary::protobuf::kv::ValueWrapper &values(int index) const; - ::Canary::protobuf::kv::ValueWrapper* add_values(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper> & - values() const; - - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.ArrayType) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper> values_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_kv_2eproto; - }; - // ------------------------------------------------------------------- - - class KeyValuePair final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.KeyValuePair) */ { - public: - inline KeyValuePair() : - KeyValuePair(nullptr) { } - ~KeyValuePair() override; - explicit PROTOBUF_CONSTEXPR KeyValuePair(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - KeyValuePair(const KeyValuePair &from); - KeyValuePair(KeyValuePair &&from) noexcept - : - KeyValuePair() { - *this = ::std::move(from); - } - - inline KeyValuePair &operator=(const KeyValuePair &from) { - CopyFrom(from); - return *this; - } - inline KeyValuePair &operator=(KeyValuePair &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const KeyValuePair &default_instance() { - return *internal_default_instance(); - } - static inline const KeyValuePair* internal_default_instance() { - return reinterpret_cast( - &_KeyValuePair_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 2; - - friend void swap(KeyValuePair &a, KeyValuePair &b) { - a.Swap(&b); - } - inline void Swap(KeyValuePair* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(KeyValuePair* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - KeyValuePair* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const KeyValuePair &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const KeyValuePair &from) { - KeyValuePair::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(KeyValuePair* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.KeyValuePair"; - } - - protected: - explicit KeyValuePair(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kKeyFieldNumber = 1, - kValueFieldNumber = 2, - }; - // string key = 1; - void clear_key(); - const std::string &key() const; - template - void set_key(ArgT0 &&arg0, ArgT... args); - std::string* mutable_key(); - PROTOBUF_NODISCARD std::string* release_key(); - void set_allocated_key(std::string* key); - - private: - const std::string &_internal_key() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_key(const std::string &value); - std::string* _internal_mutable_key(); - - public: - // .Canary.protobuf.kv.ValueWrapper value = 2; - bool has_value() const; - - private: - bool _internal_has_value() const; - - public: - void clear_value(); - const ::Canary::protobuf::kv::ValueWrapper &value() const; - PROTOBUF_NODISCARD ::Canary::protobuf::kv::ValueWrapper* release_value(); - ::Canary::protobuf::kv::ValueWrapper* mutable_value(); - void set_allocated_value(::Canary::protobuf::kv::ValueWrapper* value); - - private: - const ::Canary::protobuf::kv::ValueWrapper &_internal_value() const; - ::Canary::protobuf::kv::ValueWrapper* _internal_mutable_value(); - - public: - void unsafe_arena_set_allocated_value( - ::Canary::protobuf::kv::ValueWrapper* value - ); - ::Canary::protobuf::kv::ValueWrapper* unsafe_arena_release_value(); - - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.KeyValuePair) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr key_; - ::Canary::protobuf::kv::ValueWrapper* value_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_kv_2eproto; - }; - // ------------------------------------------------------------------- - - class MapType final : public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Canary.protobuf.kv.MapType) */ { - public: - inline MapType() : - MapType(nullptr) { } - ~MapType() override; - explicit PROTOBUF_CONSTEXPR MapType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - MapType(const MapType &from); - MapType(MapType &&from) noexcept - : - MapType() { - *this = ::std::move(from); - } - - inline MapType &operator=(const MapType &from) { - CopyFrom(from); - return *this; - } - inline MapType &operator=(MapType &&from) noexcept { - if (this == &from) { - return *this; - } - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const MapType &default_instance() { - return *internal_default_instance(); - } - static inline const MapType* internal_default_instance() { - return reinterpret_cast( - &_MapType_default_instance_ - ); - } - static constexpr int kIndexInFileMessages = 3; - - friend void swap(MapType &a, MapType &b) { - a.Swap(&b); - } - inline void Swap(MapType* other) { - if (other == this) { - return; - } -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(MapType* other) { - if (other == this) { - return; - } - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - MapType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MapType &from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const MapType &from) { - MapType::MergeImpl(*this, from); - } - - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message &to_msg, const ::PROTOBUF_NAMESPACE_ID::Message &from_msg); - - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream - ) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MapType* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Canary.protobuf.kv.MapType"; - } - - protected: - explicit MapType(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); - - public: - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData* GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kItemsFieldNumber = 1, - }; - // repeated .Canary.protobuf.kv.KeyValuePair items = 1; - int items_size() const; - - private: - int _internal_items_size() const; - - public: - void clear_items(); - ::Canary::protobuf::kv::KeyValuePair* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair>* - mutable_items(); - - private: - const ::Canary::protobuf::kv::KeyValuePair &_internal_items(int index) const; - ::Canary::protobuf::kv::KeyValuePair* _internal_add_items(); - - public: - const ::Canary::protobuf::kv::KeyValuePair &items(int index) const; - ::Canary::protobuf::kv::KeyValuePair* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair> & - items() const; - - // @@protoc_insertion_point(class_scope:Canary.protobuf.kv.MapType) - private: - class _Internal; - - template - friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair> items_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_kv_2eproto; - }; - // =================================================================== - - // =================================================================== - -#ifdef __GNUC__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wstrict-aliasing" -#endif // __GNUC__ - // ValueWrapper - - // string str_value = 1; - inline bool ValueWrapper::_internal_has_str_value() const { - return value_case() == kStrValue; - } - inline bool ValueWrapper::has_str_value() const { - return _internal_has_str_value(); - } - inline void ValueWrapper::set_has_str_value() { - _impl_._oneof_case_[0] = kStrValue; - } - inline void ValueWrapper::clear_str_value() { - if (_internal_has_str_value()) { - _impl_.value_.str_value_.Destroy(); - clear_has_value(); - } - } - inline const std::string &ValueWrapper::str_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.str_value) - return _internal_str_value(); - } - template - inline void ValueWrapper::set_str_value(ArgT0 &&arg0, ArgT... args) { - if (!_internal_has_str_value()) { - clear_value(); - set_has_str_value(); - _impl_.value_.str_value_.InitDefault(); - } - _impl_.value_.str_value_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.str_value) - } - inline std::string* ValueWrapper::mutable_str_value() { - std::string* _s = _internal_mutable_str_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.str_value) - return _s; - } - inline const std::string &ValueWrapper::_internal_str_value() const { - if (_internal_has_str_value()) { - return _impl_.value_.str_value_.Get(); - } - return ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(); - } - inline void ValueWrapper::_internal_set_str_value(const std::string &value) { - if (!_internal_has_str_value()) { - clear_value(); - set_has_str_value(); - _impl_.value_.str_value_.InitDefault(); - } - _impl_.value_.str_value_.Set(value, GetArenaForAllocation()); - } - inline std::string* ValueWrapper::_internal_mutable_str_value() { - if (!_internal_has_str_value()) { - clear_value(); - set_has_str_value(); - _impl_.value_.str_value_.InitDefault(); - } - return _impl_.value_.str_value_.Mutable(GetArenaForAllocation()); - } - inline std::string* ValueWrapper::release_str_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.str_value) - if (_internal_has_str_value()) { - clear_has_value(); - return _impl_.value_.str_value_.Release(); - } else { - return nullptr; - } - } - inline void ValueWrapper::set_allocated_str_value(std::string* str_value) { - if (has_value()) { - clear_value(); - } - if (str_value != nullptr) { - set_has_str_value(); - _impl_.value_.str_value_.InitAllocated(str_value, GetArenaForAllocation()); - } - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.ValueWrapper.str_value) - } - - // int32 int_value = 2; - inline bool ValueWrapper::_internal_has_int_value() const { - return value_case() == kIntValue; - } - inline bool ValueWrapper::has_int_value() const { - return _internal_has_int_value(); - } - inline void ValueWrapper::set_has_int_value() { - _impl_._oneof_case_[0] = kIntValue; - } - inline void ValueWrapper::clear_int_value() { - if (_internal_has_int_value()) { - _impl_.value_.int_value_ = 0; - clear_has_value(); - } - } - inline int32_t ValueWrapper::_internal_int_value() const { - if (_internal_has_int_value()) { - return _impl_.value_.int_value_; - } - return 0; - } - inline void ValueWrapper::_internal_set_int_value(int32_t value) { - if (!_internal_has_int_value()) { - clear_value(); - set_has_int_value(); - } - _impl_.value_.int_value_ = value; - } - inline int32_t ValueWrapper::int_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.int_value) - return _internal_int_value(); - } - inline void ValueWrapper::set_int_value(int32_t value) { - _internal_set_int_value(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.int_value) - } - - // double double_value = 3; - inline bool ValueWrapper::_internal_has_double_value() const { - return value_case() == kDoubleValue; - } - inline bool ValueWrapper::has_double_value() const { - return _internal_has_double_value(); - } - inline void ValueWrapper::set_has_double_value() { - _impl_._oneof_case_[0] = kDoubleValue; - } - inline void ValueWrapper::clear_double_value() { - if (_internal_has_double_value()) { - _impl_.value_.double_value_ = 0; - clear_has_value(); - } - } - inline double ValueWrapper::_internal_double_value() const { - if (_internal_has_double_value()) { - return _impl_.value_.double_value_; - } - return 0; - } - inline void ValueWrapper::_internal_set_double_value(double value) { - if (!_internal_has_double_value()) { - clear_value(); - set_has_double_value(); - } - _impl_.value_.double_value_ = value; - } - inline double ValueWrapper::double_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.double_value) - return _internal_double_value(); - } - inline void ValueWrapper::set_double_value(double value) { - _internal_set_double_value(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.double_value) - } - - // .Canary.protobuf.kv.ArrayType array_value = 4; - inline bool ValueWrapper::_internal_has_array_value() const { - return value_case() == kArrayValue; - } - inline bool ValueWrapper::has_array_value() const { - return _internal_has_array_value(); - } - inline void ValueWrapper::set_has_array_value() { - _impl_._oneof_case_[0] = kArrayValue; - } - inline void ValueWrapper::clear_array_value() { - if (_internal_has_array_value()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.value_.array_value_; - } - clear_has_value(); - } - } - inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::release_array_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.array_value) - if (_internal_has_array_value()) { - clear_has_value(); - ::Canary::protobuf::kv::ArrayType* temp = _impl_.value_.array_value_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.value_.array_value_ = nullptr; - return temp; - } else { - return nullptr; - } - } - inline const ::Canary::protobuf::kv::ArrayType &ValueWrapper::_internal_array_value() const { - return _internal_has_array_value() - ? *_impl_.value_.array_value_ - : reinterpret_cast<::Canary::protobuf::kv::ArrayType &>(::Canary::protobuf::kv::_ArrayType_default_instance_); - } - inline const ::Canary::protobuf::kv::ArrayType &ValueWrapper::array_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.array_value) - return _internal_array_value(); - } - inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::unsafe_arena_release_array_value() { - // @@protoc_insertion_point(field_unsafe_arena_release:Canary.protobuf.kv.ValueWrapper.array_value) - if (_internal_has_array_value()) { - clear_has_value(); - ::Canary::protobuf::kv::ArrayType* temp = _impl_.value_.array_value_; - _impl_.value_.array_value_ = nullptr; - return temp; - } else { - return nullptr; - } - } - inline void ValueWrapper::unsafe_arena_set_allocated_array_value(::Canary::protobuf::kv::ArrayType* array_value) { - clear_value(); - if (array_value) { - set_has_array_value(); - _impl_.value_.array_value_ = array_value; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.ValueWrapper.array_value) - } - inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::_internal_mutable_array_value() { - if (!_internal_has_array_value()) { - clear_value(); - set_has_array_value(); - _impl_.value_.array_value_ = CreateMaybeMessage<::Canary::protobuf::kv::ArrayType>(GetArenaForAllocation()); - } - return _impl_.value_.array_value_; - } - inline ::Canary::protobuf::kv::ArrayType* ValueWrapper::mutable_array_value() { - ::Canary::protobuf::kv::ArrayType* _msg = _internal_mutable_array_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.array_value) - return _msg; - } - - // .Canary.protobuf.kv.MapType map_value = 5; - inline bool ValueWrapper::_internal_has_map_value() const { - return value_case() == kMapValue; - } - inline bool ValueWrapper::has_map_value() const { - return _internal_has_map_value(); - } - inline void ValueWrapper::set_has_map_value() { - _impl_._oneof_case_[0] = kMapValue; - } - inline void ValueWrapper::clear_map_value() { - if (_internal_has_map_value()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.value_.map_value_; - } - clear_has_value(); - } - } - inline ::Canary::protobuf::kv::MapType* ValueWrapper::release_map_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.ValueWrapper.map_value) - if (_internal_has_map_value()) { - clear_has_value(); - ::Canary::protobuf::kv::MapType* temp = _impl_.value_.map_value_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.value_.map_value_ = nullptr; - return temp; - } else { - return nullptr; - } - } - inline const ::Canary::protobuf::kv::MapType &ValueWrapper::_internal_map_value() const { - return _internal_has_map_value() - ? *_impl_.value_.map_value_ - : reinterpret_cast<::Canary::protobuf::kv::MapType &>(::Canary::protobuf::kv::_MapType_default_instance_); - } - inline const ::Canary::protobuf::kv::MapType &ValueWrapper::map_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.map_value) - return _internal_map_value(); - } - inline ::Canary::protobuf::kv::MapType* ValueWrapper::unsafe_arena_release_map_value() { - // @@protoc_insertion_point(field_unsafe_arena_release:Canary.protobuf.kv.ValueWrapper.map_value) - if (_internal_has_map_value()) { - clear_has_value(); - ::Canary::protobuf::kv::MapType* temp = _impl_.value_.map_value_; - _impl_.value_.map_value_ = nullptr; - return temp; - } else { - return nullptr; - } - } - inline void ValueWrapper::unsafe_arena_set_allocated_map_value(::Canary::protobuf::kv::MapType* map_value) { - clear_value(); - if (map_value) { - set_has_map_value(); - _impl_.value_.map_value_ = map_value; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.ValueWrapper.map_value) - } - inline ::Canary::protobuf::kv::MapType* ValueWrapper::_internal_mutable_map_value() { - if (!_internal_has_map_value()) { - clear_value(); - set_has_map_value(); - _impl_.value_.map_value_ = CreateMaybeMessage<::Canary::protobuf::kv::MapType>(GetArenaForAllocation()); - } - return _impl_.value_.map_value_; - } - inline ::Canary::protobuf::kv::MapType* ValueWrapper::mutable_map_value() { - ::Canary::protobuf::kv::MapType* _msg = _internal_mutable_map_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ValueWrapper.map_value) - return _msg; - } - - // bool bool_value = 6; - inline bool ValueWrapper::_internal_has_bool_value() const { - return value_case() == kBoolValue; - } - inline bool ValueWrapper::has_bool_value() const { - return _internal_has_bool_value(); - } - inline void ValueWrapper::set_has_bool_value() { - _impl_._oneof_case_[0] = kBoolValue; - } - inline void ValueWrapper::clear_bool_value() { - if (_internal_has_bool_value()) { - _impl_.value_.bool_value_ = false; - clear_has_value(); - } - } - inline bool ValueWrapper::_internal_bool_value() const { - if (_internal_has_bool_value()) { - return _impl_.value_.bool_value_; - } - return false; - } - inline void ValueWrapper::_internal_set_bool_value(bool value) { - if (!_internal_has_bool_value()) { - clear_value(); - set_has_bool_value(); - } - _impl_.value_.bool_value_ = value; - } - inline bool ValueWrapper::bool_value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ValueWrapper.bool_value) - return _internal_bool_value(); - } - inline void ValueWrapper::set_bool_value(bool value) { - _internal_set_bool_value(value); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.ValueWrapper.bool_value) - } - - inline bool ValueWrapper::has_value() const { - return value_case() != VALUE_NOT_SET; - } - inline void ValueWrapper::clear_has_value() { - _impl_._oneof_case_[0] = VALUE_NOT_SET; - } - inline ValueWrapper::ValueCase ValueWrapper::value_case() const { - return ValueWrapper::ValueCase(_impl_._oneof_case_[0]); - } - // ------------------------------------------------------------------- - - // ArrayType - - // repeated .Canary.protobuf.kv.ValueWrapper values = 1; - inline int ArrayType::_internal_values_size() const { - return _impl_.values_.size(); - } - inline int ArrayType::values_size() const { - return _internal_values_size(); - } - inline void ArrayType::clear_values() { - _impl_.values_.Clear(); - } - inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::mutable_values(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.ArrayType.values) - return _impl_.values_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper>* - ArrayType::mutable_values() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.kv.ArrayType.values) - return &_impl_.values_; - } - inline const ::Canary::protobuf::kv::ValueWrapper &ArrayType::_internal_values(int index) const { - return _impl_.values_.Get(index); - } - inline const ::Canary::protobuf::kv::ValueWrapper &ArrayType::values(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.ArrayType.values) - return _internal_values(index); - } - inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::_internal_add_values() { - return _impl_.values_.Add(); - } - inline ::Canary::protobuf::kv::ValueWrapper* ArrayType::add_values() { - ::Canary::protobuf::kv::ValueWrapper* _add = _internal_add_values(); - // @@protoc_insertion_point(field_add:Canary.protobuf.kv.ArrayType.values) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::ValueWrapper> & - ArrayType::values() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.kv.ArrayType.values) - return _impl_.values_; - } - - // ------------------------------------------------------------------- - - // KeyValuePair - - // string key = 1; - inline void KeyValuePair::clear_key() { - _impl_.key_.ClearToEmpty(); - } - inline const std::string &KeyValuePair::key() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.KeyValuePair.key) - return _internal_key(); - } - template - inline PROTOBUF_ALWAYS_INLINE void KeyValuePair::set_key(ArgT0 &&arg0, ArgT... args) { - - _impl_.key_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Canary.protobuf.kv.KeyValuePair.key) - } - inline std::string* KeyValuePair::mutable_key() { - std::string* _s = _internal_mutable_key(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.KeyValuePair.key) - return _s; - } - inline const std::string &KeyValuePair::_internal_key() const { - return _impl_.key_.Get(); - } - inline void KeyValuePair::_internal_set_key(const std::string &value) { - - _impl_.key_.Set(value, GetArenaForAllocation()); - } - inline std::string* KeyValuePair::_internal_mutable_key() { - - return _impl_.key_.Mutable(GetArenaForAllocation()); - } - inline std::string* KeyValuePair::release_key() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.KeyValuePair.key) - return _impl_.key_.Release(); - } - inline void KeyValuePair::set_allocated_key(std::string* key) { - if (key != nullptr) { - - } else { - } - _impl_.key_.SetAllocated(key, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.key_.IsDefault()) { - _impl_.key_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.KeyValuePair.key) - } - - // .Canary.protobuf.kv.ValueWrapper value = 2; - inline bool KeyValuePair::_internal_has_value() const { - return this != internal_default_instance() && _impl_.value_ != nullptr; - } - inline bool KeyValuePair::has_value() const { - return _internal_has_value(); - } - inline void KeyValuePair::clear_value() { - if (GetArenaForAllocation() == nullptr && _impl_.value_ != nullptr) { - delete _impl_.value_; - } - _impl_.value_ = nullptr; - } - inline const ::Canary::protobuf::kv::ValueWrapper &KeyValuePair::_internal_value() const { - const ::Canary::protobuf::kv::ValueWrapper* p = _impl_.value_; - return p != nullptr ? *p : reinterpret_cast(::Canary::protobuf::kv::_ValueWrapper_default_instance_); - } - inline const ::Canary::protobuf::kv::ValueWrapper &KeyValuePair::value() const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.KeyValuePair.value) - return _internal_value(); - } - inline void KeyValuePair::unsafe_arena_set_allocated_value( - ::Canary::protobuf::kv::ValueWrapper* value - ) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.value_); - } - _impl_.value_ = value; - if (value) { - - } else { - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Canary.protobuf.kv.KeyValuePair.value) - } - inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::release_value() { - - ::Canary::protobuf::kv::ValueWrapper* temp = _impl_.value_; - _impl_.value_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; - } - inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::unsafe_arena_release_value() { - // @@protoc_insertion_point(field_release:Canary.protobuf.kv.KeyValuePair.value) - - ::Canary::protobuf::kv::ValueWrapper* temp = _impl_.value_; - _impl_.value_ = nullptr; - return temp; - } - inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::_internal_mutable_value() { - - if (_impl_.value_ == nullptr) { - auto* p = CreateMaybeMessage<::Canary::protobuf::kv::ValueWrapper>(GetArenaForAllocation()); - _impl_.value_ = p; - } - return _impl_.value_; - } - inline ::Canary::protobuf::kv::ValueWrapper* KeyValuePair::mutable_value() { - ::Canary::protobuf::kv::ValueWrapper* _msg = _internal_mutable_value(); - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.KeyValuePair.value) - return _msg; - } - inline void KeyValuePair::set_allocated_value(::Canary::protobuf::kv::ValueWrapper* value) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.value_; - } - if (value) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(value); - if (message_arena != submessage_arena) { - value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, value, submessage_arena - ); - } - - } else { - } - _impl_.value_ = value; - // @@protoc_insertion_point(field_set_allocated:Canary.protobuf.kv.KeyValuePair.value) - } - - // ------------------------------------------------------------------- - - // MapType - - // repeated .Canary.protobuf.kv.KeyValuePair items = 1; - inline int MapType::_internal_items_size() const { - return _impl_.items_.size(); - } - inline int MapType::items_size() const { - return _internal_items_size(); - } - inline void MapType::clear_items() { - _impl_.items_.Clear(); - } - inline ::Canary::protobuf::kv::KeyValuePair* MapType::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:Canary.protobuf.kv.MapType.items) - return _impl_.items_.Mutable(index); - } - inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair>* - MapType::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:Canary.protobuf.kv.MapType.items) - return &_impl_.items_; - } - inline const ::Canary::protobuf::kv::KeyValuePair &MapType::_internal_items(int index) const { - return _impl_.items_.Get(index); - } - inline const ::Canary::protobuf::kv::KeyValuePair &MapType::items(int index) const { - // @@protoc_insertion_point(field_get:Canary.protobuf.kv.MapType.items) - return _internal_items(index); - } - inline ::Canary::protobuf::kv::KeyValuePair* MapType::_internal_add_items() { - return _impl_.items_.Add(); - } - inline ::Canary::protobuf::kv::KeyValuePair* MapType::add_items() { - ::Canary::protobuf::kv::KeyValuePair* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:Canary.protobuf.kv.MapType.items) - return _add; - } - inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::Canary::protobuf::kv::KeyValuePair> & - MapType::items() const { - // @@protoc_insertion_point(field_list:Canary.protobuf.kv.MapType.items) - return _impl_.items_; - } - -#ifdef __GNUC__ - #pragma GCC diagnostic pop -#endif // __GNUC__ - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // ------------------------------------------------------------------- - - // @@protoc_insertion_point(namespace_scope) - - } // namespace kv - } // namespace protobuf -} // namespace Canary - -// @@protoc_insertion_point(global_scope) - -#include -#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_kv_2eproto