Pol
Revision:cb584c9
|
#include <itemdesc.h>
Public Types | |
enum | Movable : u8 { UNMOVABLE, MOVABLE, DEFAULT } |
enum | Type { ITEMDESC, CONTAINERDESC, DOORDESC, WEAPONDESC, ARMORDESC, BOATDESC, HOUSEDESC, SPELLBOOKDESC, SPELLSCROLLDESC, MAPDESC } |
Public Member Functions | |
ItemDesc (u32 objtype, Clib::ConfigElem &elem, Type type, const Plib::Package *pkg) | |
ItemDesc (Type type) | |
virtual | ~ItemDesc () |
bool | default_movable () const |
virtual size_t | estimatedSize () const |
std::string | objtype_description () const |
virtual void | PopulateStruct (Bscript::BStruct *descriptor) const |
void | unload_scripts () |
Static Public Member Functions | |
static ItemDesc * | create (Clib::ConfigElem &elem, const Plib::Package *pkg) |
Definition at line 55 of file itemdesc.h.
enum Pol::Items::ItemDesc::Movable : u8 |
Enumerator | |
---|---|
UNMOVABLE | |
MOVABLE | |
DEFAULT |
Definition at line 108 of file itemdesc.h.
Enumerator | |
---|---|
ITEMDESC | |
CONTAINERDESC | |
DOORDESC | |
WEAPONDESC | |
ARMORDESC | |
BOATDESC | |
HOUSEDESC | |
SPELLBOOKDESC | |
SPELLSCROLLDESC | |
MAPDESC |
Definition at line 58 of file itemdesc.h.
Pol::Items::ItemDesc::ItemDesc | ( | u32 | objtype, |
Clib::ConfigElem & | elem, | ||
Type | type, | ||
const Plib::Package * | pkg | ||
) |
Definition at line 165 of file itemdesc.cpp.
References ARMORDESC, BOATDESC, Pol::Core::Resistances::cold, Pol::Core::ElementDamages::cold, element_damage, element_resist, Pol::Core::ELEMENTAL_COLD, Pol::Core::ELEMENTAL_ENERGY, Pol::Core::ELEMENTAL_FIRE, Pol::Core::ELEMENTAL_PHYSICAL, Pol::Core::ELEMENTAL_POISON, Pol::Core::ELEMENTAL_TYPE_MAX, Pol::Core::Resistances::energy, Pol::Core::ElementDamages::energy, ERROR_PRINT, Pol::Items::find_itemdesc(), Pol::Core::Resistances::fire, Pol::Core::ElementDamages::fire, Pol::Core::gamestate, graphic, Pol::Items::has_itemdesc(), Pol::Clib::hexint(), HOUSEDESC, ignore_cprops, Pol::Core::ExportScript::Initialize(), ISTRINGSTREAM, Pol::Core::Dice::load(), MAX_STACK_ITEMS, maxhp, method_script, MOVABLE, movable, multiid, objtype, Pol::Core::GameState::objtype_byname, objtype_description(), objtypename, Pol::Core::GameState::old_objtype_conversions, Pol::Core::Resistances::physical, Pol::Core::ElementDamages::physical, PKTOUT_B7_MAX_CHARACTERS, Pol::Core::Resistances::poison, Pol::Core::ElementDamages::poison, props, Pol::Core::PropertyList::readProperties(), Pol::Clib::ConfigElem::remove_prop(), Pol::Clib::ConfigElem::remove_ushort(), resources, Pol::Core::Dice::roll(), stack_limit, Pol::Plib::systemstate, Pol::Clib::ConfigElem::throw_error(), Pol::Core::tileweight(), tooltip, UNMOVABLE, WEAPONDESC, weightdiv, and weightmult.
Referenced by estimatedSize().
|
explicit |
Definition at line 501 of file itemdesc.cpp.
References element_damage, and element_resist.
|
virtual |
Definition at line 547 of file itemdesc.cpp.
References unload_scripts().
|
static |
Definition at line 97 of file itemdesc.cpp.
References Pol::Core::SettingsManager::extobj, Pol::Items::find_itemdesc(), Pol::Core::gamestate, ITEMDESC, Pol::Clib::ConfigElemBase::rest(), Pol::Core::settingsManager, Pol::Core::ExternalObject::shield, Pol::Clib::ConfigElem::throw_error(), Pol::Clib::ConfigElemBase::type(), and Pol::Clib::ConfigElemBase::type_is().
Referenced by Pol::Items::CreateItemDescriptor(), and Pol::Items::read_itemdesc_file().
bool Pol::Items::ItemDesc::default_movable | ( | ) | const |
Definition at line 690 of file itemdesc.cpp.
References DEFAULT, graphic, Pol::Plib::FLAG::MOVABLE, movable, and Pol::Core::tile_flags().
Referenced by PopulateStruct().
|
virtual |
Reimplemented in Pol::Items::MapDesc, Pol::Items::HouseDesc, Pol::Items::BoatDesc, Pol::Items::MultiDesc, Pol::Items::SpellScrollDesc, Pol::Items::SpellbookDesc, Pol::Items::DoorDesc, Pol::Items::ContainerDesc, Pol::Core::EquipDesc, Pol::Items::WeaponDesc, and Pol::Items::ArmorDesc.
Definition at line 698 of file itemdesc.cpp.
References control_script, create_script, destroy_script, Pol::Core::ScriptDef::estimatedSize(), Pol::Core::PropertyList::estimatedSize(), ignore_cprops, ItemDesc(), objtypename, on_use_script, props, resources, tooltip, and walk_on_script.
Referenced by Pol::Core::EquipDesc::estimatedSize(), Pol::Items::ContainerDesc::estimatedSize(), Pol::Items::DoorDesc::estimatedSize(), Pol::Items::SpellScrollDesc::estimatedSize(), Pol::Items::MultiDesc::estimatedSize(), and Pol::Items::MapDesc::estimatedSize().
std::string Pol::Items::ItemDesc::objtype_description | ( | ) | const |
Definition at line 681 of file itemdesc.cpp.
References Pol::Plib::Package::name(), objtype, objtypename, and pkg.
Referenced by ItemDesc().
|
virtual |
Reimplemented in Pol::Items::MapDesc, Pol::Items::HouseDesc, Pol::Items::BoatDesc, Pol::Items::MultiDesc, Pol::Items::SpellScrollDesc, Pol::Items::SpellbookDesc, Pol::Items::DoorDesc, Pol::Items::ContainerDesc, Pol::Core::EquipDesc, Pol::Items::WeaponDesc, and Pol::Items::ArmorDesc.
Definition at line 552 of file itemdesc.cpp.
References Pol::Bscript::BStruct::addMember(), ARMORDESC, base_str_req, blocks_casting_if_in_hand, BOATDESC, can_use_while_frozen, can_use_while_paralyzed, Pol::Core::Resistances::cold, Pol::Core::ElementDamages::cold, color, CONTAINERDESC, control_script, create_script, decay_time, decays_on_multis, Pol::Clib::decint(), default_movable(), desc, destroy_script, DOORDESC, doubleclick_range, element_damage, element_resist, Pol::Core::Resistances::energy, Pol::Core::ElementDamages::energy, equip_script, facing, Pol::Core::Resistances::fire, Pol::Core::ElementDamages::fire, Pol::Core::PropertyList::getprop(), Pol::Core::PropertyList::getpropnames(), ghosts_can_use, graphic, HOUSEDESC, ignore_cprops, insured, invisible, ITEMDESC, lockable, MAPDESC, maxhp, method_script, multiid, newbie, no_drop, objtype, objtypename, on_use_script, Pol::Core::Resistances::physical, Pol::Core::ElementDamages::physical, pkg, Pol::Core::Resistances::poison, Pol::Core::ElementDamages::poison, props, quality, Pol::Core::ScriptDef::relativename(), requires_attention, resources, Pol::Core::ExportScript::scriptname(), SPELLBOOKDESC, SPELLSCROLLDESC, stack_limit, tooltip, type, unequip_script, Pol::Bscript::BObjectImp::unpack(), use_requires_los, vendor_buys_for, vendor_sells_for, walk_on_script, WEAPONDESC, weightdiv, and weightmult.
Referenced by Pol::Core::EquipDesc::PopulateStruct(), Pol::Items::ContainerDesc::PopulateStruct(), Pol::Items::DoorDesc::PopulateStruct(), Pol::Items::SpellScrollDesc::PopulateStruct(), Pol::Items::MultiDesc::PopulateStruct(), and Pol::Items::MapDesc::PopulateStruct().
void Pol::Items::ItemDesc::unload_scripts | ( | ) |
Definition at line 672 of file itemdesc.cpp.
References method_script.
Referenced by Pol::Items::Equipment::~Equipment(), and ~ItemDesc().
unsigned short Pol::Items::ItemDesc::base_str_req |
Definition at line 125 of file itemdesc.h.
Referenced by Pol::Mobile::Character::equippable(), PopulateStruct(), and Pol::Mobile::Character::strong_enough_to_equip().
bool Pol::Items::ItemDesc::blocks_casting_if_in_hand |
Definition at line 123 of file itemdesc.h.
Referenced by PopulateStruct().
bool Pol::Items::ItemDesc::can_use_while_frozen |
Definition at line 118 of file itemdesc.h.
Referenced by PopulateStruct().
bool Pol::Items::ItemDesc::can_use_while_paralyzed |
Definition at line 117 of file itemdesc.h.
Referenced by PopulateStruct().
u16 Pol::Items::ItemDesc::color |
Definition at line 89 of file itemdesc.h.
Referenced by Pol::Module::_create_item_in_container(), and PopulateStruct().
Core::ScriptDef Pol::Items::ItemDesc::control_script |
Definition at line 100 of file itemdesc.h.
Referenced by estimatedSize(), and PopulateStruct().
Core::ScriptDef Pol::Items::ItemDesc::create_script |
Definition at line 101 of file itemdesc.h.
Referenced by Pol::Module::_create_item_in_container(), estimatedSize(), and PopulateStruct().
unsigned Pol::Items::ItemDesc::decay_time |
Definition at line 107 of file itemdesc.h.
Referenced by PopulateStruct(), and Pol::Items::Item::restart_decay_timer().
bool Pol::Items::ItemDesc::decays_on_multis |
Definition at line 122 of file itemdesc.h.
Referenced by Pol::Core::decay_worldzone(), and PopulateStruct().
boost_utils::object_name_flystring Pol::Items::ItemDesc::desc |
Definition at line 94 of file itemdesc.h.
Referenced by Pol::Items::Item::create(), and PopulateStruct().
Core::ScriptDef Pol::Items::ItemDesc::destroy_script |
Definition at line 102 of file itemdesc.h.
Referenced by Pol::Core::decay_worldzone(), estimatedSize(), and PopulateStruct().
unsigned short Pol::Items::ItemDesc::doubleclick_range |
Definition at line 114 of file itemdesc.h.
Referenced by Pol::Items::Item::get_script_member_id(), and PopulateStruct().
Core::ElementDamages Pol::Items::ItemDesc::element_damage |
Definition at line 134 of file itemdesc.h.
Referenced by ItemDesc(), and PopulateStruct().
Core::Resistances Pol::Items::ItemDesc::element_resist |
Definition at line 133 of file itemdesc.h.
Referenced by ItemDesc(), and PopulateStruct().
boost_utils::script_name_flystring Pol::Items::ItemDesc::equip_script |
Definition at line 98 of file itemdesc.h.
Referenced by PopulateStruct().
u8 Pol::Items::ItemDesc::facing |
Definition at line 91 of file itemdesc.h.
Referenced by PopulateStruct().
bool Pol::Items::ItemDesc::ghosts_can_use |
Definition at line 116 of file itemdesc.h.
Referenced by PopulateStruct().
u16 Pol::Items::ItemDesc::graphic |
Definition at line 88 of file itemdesc.h.
Referenced by Pol::Module::_create_item_in_container(), Pol::Items::ArmorDesc::ArmorDesc(), default_movable(), Pol::Items::getgraphic(), ItemDesc(), Pol::Module::UOExecutorModule::mf_CreateItemAtLocation(), PopulateStruct(), and Pol::Core::UDoor::toggle().
std::set<std::string> Pol::Items::ItemDesc::ignore_cprops |
Definition at line 139 of file itemdesc.h.
Referenced by Pol::Items::Item::can_add_to_self(), estimatedSize(), Pol::Items::Item::has_only_default_cprops(), ItemDesc(), and PopulateStruct().
bool Pol::Items::ItemDesc::insured |
Definition at line 120 of file itemdesc.h.
Referenced by Pol::Module::_create_item_in_container(), Pol::Items::Item::default_insured(), and PopulateStruct().
bool Pol::Items::ItemDesc::invisible |
Definition at line 121 of file itemdesc.h.
Referenced by Pol::Items::Item::default_invisible(), and PopulateStruct().
bool Pol::Items::ItemDesc::lockable |
Definition at line 104 of file itemdesc.h.
Referenced by PopulateStruct().
unsigned short Pol::Items::ItemDesc::maxhp |
Definition at line 129 of file itemdesc.h.
Referenced by ItemDesc(), Pol::Items::Item::maxhp(), PopulateStruct(), and Pol::Items::WeaponDesc::WeaponDesc().
Core::ExportScript* Pol::Items::ItemDesc::method_script |
Definition at line 141 of file itemdesc.h.
Referenced by ItemDesc(), PopulateStruct(), and unload_scripts().
enum Pol::Items::ItemDesc::Movable Pol::Items::ItemDesc::movable |
Referenced by default_movable(), Pol::Items::Item::default_movable(), and ItemDesc().
unsigned short Pol::Items::ItemDesc::multiid |
Definition at line 128 of file itemdesc.h.
Referenced by ItemDesc(), Pol::Items::MultiDesc::MultiDesc(), PopulateStruct(), Pol::Multi::UHouse::scripted_create(), Pol::Multi::UBoat::scripted_create(), Pol::Core::MultiPlacementCursor::send_placemulti(), and Pol::Multi::UMulti::UMulti().
bool Pol::Items::ItemDesc::newbie |
Definition at line 119 of file itemdesc.h.
Referenced by Pol::Items::Item::default_newbie(), and PopulateStruct().
bool Pol::Items::ItemDesc::no_drop |
Definition at line 124 of file itemdesc.h.
Referenced by Pol::Items::Item::default_no_drop(), and PopulateStruct().
u32 Pol::Items::ItemDesc::objtype |
Definition at line 87 of file itemdesc.h.
Referenced by Pol::Module::_create_item_in_container(), Pol::Items::ArmorDesc::ArmorDesc(), Pol::Core::check_config(), Pol::Multi::UMulti::create(), Pol::Items::CreateItemDescriptor(), Pol::Items::getgraphic(), ItemDesc(), Pol::Module::UOExecutorModule::mf_CreateItemAtLocation(), Pol::Module::UOExecutorModule::mf_CreateItemInBackpack(), Pol::Module::UOExecutorModule::mf_CreateItemInContainer(), Pol::Module::UOExecutorModule::mf_CreateItemInInventory(), objtype_description(), PopulateStruct(), Pol::Items::read_itemdesc_file(), Pol::Multi::UHouse::scripted_create(), Pol::Multi::UBoat::scripted_create(), and Pol::Multi::UMulti::UMulti().
std::string Pol::Items::ItemDesc::objtypename |
Definition at line 85 of file itemdesc.h.
Referenced by estimatedSize(), ItemDesc(), objtype_description(), PopulateStruct(), and Pol::Items::write_objtypes_txt().
Core::ScriptDef Pol::Items::ItemDesc::on_use_script |
Definition at line 97 of file itemdesc.h.
Referenced by Pol::Items::Item::double_click(), estimatedSize(), Pol::Module::UOExecutorModule::mf_UseItem(), and PopulateStruct().
const Plib::Package* Pol::Items::ItemDesc::pkg |
Definition at line 84 of file itemdesc.h.
Referenced by Pol::Items::create_intrinsic_weapon_from_npctemplate(), Pol::Items::CreateItemDescriptor(), Pol::Items::load_itemdesc(), Pol::Items::load_package_itemdesc(), objtype_description(), Pol::Items::ArmorDesc::PopulateStruct(), Pol::Items::WeaponDesc::PopulateStruct(), PopulateStruct(), Pol::Items::ContainerDesc::PopulateStruct(), Pol::Items::UArmor::printProperties(), Pol::Items::UWeapon::printProperties(), Pol::Items::read_itemdesc_file(), Pol::Items::UWeapon::set_hit_script(), and Pol::Items::write_objtypes_txt().
Core::PropertyList Pol::Items::ItemDesc::props |
Definition at line 138 of file itemdesc.h.
Referenced by estimatedSize(), Pol::Items::Item::has_only_default_cprops(), ItemDesc(), and PopulateStruct().
double Pol::Items::ItemDesc::quality |
Definition at line 127 of file itemdesc.h.
Referenced by Pol::Items::Item::getItemdescQuality(), and PopulateStruct().
bool Pol::Items::ItemDesc::requires_attention |
Definition at line 103 of file itemdesc.h.
Referenced by Pol::Items::Item::double_click(), Pol::Module::UOExecutorModule::mf_UseItem(), and PopulateStruct().
Core::Dice Pol::Items::ItemDesc::resist_dice |
Definition at line 131 of file itemdesc.h.
std::vector<ResourceComponent> Pol::Items::ItemDesc::resources |
Definition at line 136 of file itemdesc.h.
Referenced by estimatedSize(), ItemDesc(), PopulateStruct(), Pol::Items::remove_resources(), and Pol::Items::return_resources().
bool Pol::Items::ItemDesc::save_on_exit |
Definition at line 143 of file itemdesc.h.
Referenced by Pol::Core::load_intrinsic_weapons(), and Pol::Core::WornItemsContainer::print().
unsigned short Pol::Items::ItemDesc::stack_limit |
Definition at line 126 of file itemdesc.h.
Referenced by Pol::Items::Item::can_add_to_self(), Pol::Core::UContainer::find_addable_stack(), ItemDesc(), Pol::Module::UOExecutorModule::mf_SubtractAmount(), and PopulateStruct().
std::string Pol::Items::ItemDesc::tooltip |
Definition at line 95 of file itemdesc.h.
Referenced by estimatedSize(), ItemDesc(), and PopulateStruct().
Type Pol::Items::ItemDesc::type |
Definition at line 82 of file itemdesc.h.
Referenced by Pol::Core::check_config(), Pol::Multi::UMulti::create(), Pol::Items::fast_find_doordesc(), Pol::Items::find_container_desc(), Pol::Items::find_multidesc(), Pol::Items::getgraphic(), Pol::Multi::isboat(), Pol::Multi::ishouse(), Pol::Core::load_intrinsic_weapons(), Pol::Module::UOExecutorModule::mf_CreateMultiAtLocation(), PopulateStruct(), Pol::Multi::UMulti::scripted_create(), and Pol::Items::SpellbookDesc::SpellbookDesc().
boost_utils::script_name_flystring Pol::Items::ItemDesc::unequip_script |
Definition at line 99 of file itemdesc.h.
Referenced by PopulateStruct().
bool Pol::Items::ItemDesc::use_requires_los |
Definition at line 115 of file itemdesc.h.
Referenced by PopulateStruct().
unsigned int Pol::Items::ItemDesc::vendor_buys_for |
Definition at line 106 of file itemdesc.h.
Referenced by Pol::Items::Item::buyprice(), and PopulateStruct().
unsigned int Pol::Items::ItemDesc::vendor_sells_for |
Definition at line 105 of file itemdesc.h.
Referenced by PopulateStruct(), and Pol::Items::Item::sellprice().
Core::ScriptDef Pol::Items::ItemDesc::walk_on_script |
Definition at line 96 of file itemdesc.h.
Referenced by estimatedSize(), Pol::Core::find_walkon_item(), PopulateStruct(), Pol::Items::Item::walk_on(), and Pol::Multi::UHouse::walk_on().
int Pol::Items::ItemDesc::weightdiv |
Definition at line 93 of file itemdesc.h.
Referenced by ItemDesc(), and PopulateStruct().
int Pol::Items::ItemDesc::weightmult |
Definition at line 92 of file itemdesc.h.
Referenced by ItemDesc(), and PopulateStruct().