/* * server/zone/objects/creature/CreatureObject.cpp generated by engine3 IDL compiler 0.60 */ #include "CreatureObject.h" #include "server/chat/StringIdChatParameter.h" #include "server/zone/objects/group/GroupObject.h" #include "server/zone/objects/guild/GuildObject.h" #include "server/zone/objects/tangible/weapon/WeaponObject.h" #include "server/zone/managers/objectcontroller/ObjectController.h" #include "server/zone/objects/creature/CreatureObject.h" #include "server/zone/objects/creature/ai/AiActor.h" #include "server/zone/objects/player/PlayerObject.h" #include "server/zone/objects/scene/SceneObject.h" #include "server/zone/objects/intangible/ControlDevice.h" #include "server/zone/objects/area/ActiveArea.h" #include "server/zone/objects/area/CampSiteActiveArea.h" #include "server/zone/Zone.h" #include "server/zone/templates/SharedObjectTemplate.h" #include "server/zone/objects/creature/buffs/Buff.h" #include "server/zone/objects/tangible/weapon/WeaponObject.h" #include "server/zone/ZoneClientSession.h" #include "server/zone/packets/scene/AttributeListMessage.h" /* * CreatureObjectStub */ enum {RPC_INITIALIZEMEMBERS__ = 6,RPC_FINALIZE__,RPC_CREATECHILDOBJECTS__,RPC_INITIALIZETRANSIENTMEMBERS__,RPC_CLEARQUEUEACTION__INT_FLOAT_INT_INT_,RPC_SENDBASELINESTO__SCENEOBJECT_,RPC_SENDTOOWNER__BOOL_,RPC_SENDTO__SCENEOBJECT_BOOL_,RPC_SENDSYSTEMMESSAGE__STRING_,RPC_PLAYMUSICMESSAGE__STRING_,RPC_SENDNEWBIETUTORIALREQUEST__STRING_,RPC_SENDNEWBIETUTORIALENABLEHUDELEMENT__STRING_BOOL_,RPC_SENDOPENHOLOCRONTOPAGEMESSAGE__,RPC_SENDSYSTEMMESSAGE__UNICODESTRING_,RPC_SENDSLOTTEDOBJECTSTO__SCENEOBJECT_,RPC_SETCOMBATSTATE__,RPC_CLEARCOMBATSTATE__BOOL_,RPC_SETPOSTURE__INT_BOOL_,RPC_UPDATELOCOMOTION__,RPC_SETHEIGHT__FLOAT_BOOL_,RPC_SETACCELERATIONMULTIPLIERBASE__FLOAT_BOOL_,RPC_SETACCELERATIONMULTIPLIERMOD__FLOAT_BOOL_,RPC_SETSPEEDMULTIPLIERBASE__FLOAT_BOOL_,RPC_SETSPEEDMULTIPLIERMOD__FLOAT_BOOL_,RPC_SETTURNSCALE__FLOAT_BOOL_,RPC_SETRUNSPEED__FLOAT_BOOL_,RPC_SETCURRENTSPEED__FLOAT_,RPC_SETHAM__INT_INT_BOOL_,RPC_INFLICTDAMAGE__TANGIBLEOBJECT_INT_FLOAT_BOOL_BOOL_,RPC_INFLICTDAMAGE__TANGIBLEOBJECT_INT_FLOAT_BOOL_STRING_BOOL_,RPC_HASDAMAGE__INT_,RPC_HEALDAMAGE__TANGIBLEOBJECT_INT_INT_BOOL_BOOL_,RPC_HEALWOUND__TANGIBLEOBJECT_INT_INT_BOOL_BOOL_,RPC_SETBASEHAM__INT_INT_BOOL_,RPC_SETWOUNDS__INT_INT_BOOL_,RPC_ADDWOUNDS__INT_INT_BOOL_,RPC_SETMAXHAM__INT_INT_BOOL_,RPC_ADDMAXHAM__INT_INT_BOOL_,RPC_SETENCUMBRANCE__INT_INT_BOOL_,RPC_ADDENCUMBRANCE__INT_INT_BOOL_,RPC_SETWEAPON__WEAPONOBJECT_BOOL_,RPC_NOTIFYOBJECTINSERTED__SCENEOBJECT_,RPC_NOTIFYOBJECTREMOVED__SCENEOBJECT_,RPC_SETINSTRUMENTID__INT_BOOL_,RPC_SETLISTENTOID__LONG_BOOL_,RPC_SETPERFORMANCECOUNTER__INT_BOOL_,RPC_SETPERFORMANCEANIMATION__STRING_BOOL_,RPC_SETSHOCKWOUNDS__INT_BOOL_,RPC_ADDSHOCKWOUNDS__INT_BOOL_,RPC_SETTARGETID__LONG_BOOL_,RPC_SETBANKCREDITS__INT_BOOL_,RPC_ADDBUFF__BUFF_,RPC_REMOVEBUFF__INT_,RPC_REMOVEBUFF__BUFF_,RPC_REMOVESTATEBUFF__LONG_,RPC_CLEARBUFFS__BOOL_,RPC_ADDWEARABLEOBJECT__TANGIBLEOBJECT_BOOL_,RPC_REMOVEWEARABLEOBJECT__TANGIBLEOBJECT_BOOL_,RPC_SENDBUFFSTO__CREATUREOBJECT_,RPC_GETBUFF__INT_,RPC_GETSKILLMODFROMBUFFS__STRING_,RPC_ADDDOTSTATE__LONG_LONG_INT_BYTE_INT_FLOAT_INT_,RPC_HEALDOT__LONG_INT_,RPC_CLEARDOTS__,RPC_HASBUFF__INT_,RPC_NOTIFYSELFPOSITIONUPDATE__,RPC_NOTIFYPOSTURECHANGE__INT_,RPC_SETLEVEL__INT_,RPC_UPDATETODATABASEALLOBJECTS__BOOL_,RPC_ISRESUSCITABLE__,RPC_ADDBANKCREDITS__INT_BOOL_,RPC_ADDCASHCREDITS__INT_BOOL_,RPC_SUBTRACTBANKCREDITS__INT_,RPC_SUBTRACTCASHCREDITS__INT_,RPC_VERIFYCASHCREDITS__INT_,RPC_VERIFYBANKCREDITS__INT_,RPC_ISDANCING__,RPC_ISPLAYINGMUSIC__,RPC_STOPENTERTAINING__,RPC_ISENTERTAINING__,RPC_SETCASHCREDITS__INT_BOOL_,RPC_SETTERRAINNEGOTIATION__FLOAT_BOOL_,RPC_ADDSKILL__STRING_BOOL_,RPC_REMOVESKILL__STRING_BOOL_,RPC_ADDSKILLMOD__INT_STRING_INT_BOOL_,RPC_REMOVESKILLMOD__INT_STRING_INT_BOOL_,RPC_REMOVEALLSKILLMODSOFTYPE__INT_BOOL_,RPC_UPDATEGROUPINVITERID__LONG_BOOL_,RPC_UPDATEGROUP__GROUPOBJECT_BOOL_,RPC_ENQUEUECOMMAND__INT_INT_LONG_UNICODESTRING_INT_,RPC_SETMOOD__BYTE_BOOL_,RPC_SETMOODSTRING__STRING_BOOL_,RPC_DELETEQUEUEACTION__INT_,RPC_SETSTATE__LONG_BOOL_,RPC_CLEARSTATE__LONG_BOOL_,RPC_SETCONTROLDEVICE__CONTROLDEVICE_,RPC_SETCREATURELINK__CREATUREOBJECT_BOOL_,RPC_EXECUTEOBJECTCONTROLLERACTION__INT_,RPC_EXECUTEOBJECTCONTROLLERACTION__INT_LONG_UNICODESTRING_,RPC_ISATTACKABLEBY__CREATUREOBJECT_,RPC_ISHEALABLEBY__CREATUREOBJECT_,RPC_ISINBOUNTYMISSION__CREATUREOBJECT_CREATUREOBJECT_,RPC_SENDCONVERSATIONSTARTTO__SCENEOBJECT_,RPC_SELECTCONVERSATIONOPTION__INT_SCENEOBJECT_,RPC_SENDMESSAGE__BASEPACKET_,RPC_SENDEXECUTECONSOLECOMMAND__STRING_,RPC_ISAGGRESSIVETO__CREATUREOBJECT_,RPC_NOTIFYOBJECTDESTRUCTIONOBSERVERS__TANGIBLEOBJECT_INT_,RPC_NOTIFYOBJECTKILLOBSERVERS__TANGIBLEOBJECT_,RPC_NOTIFYLOADFROMDATABASE__,RPC_SETFACTIONRANK__INT_BOOL_,RPC_GETFIRSTNAME__,RPC_GETLASTNAME__,RPC_ISONLINE__,RPC_CANTREATINJURIES__,RPC_CANTREATSTATES__,RPC_CANTREATWOUNDS__,RPC_CANTREATCONDITIONS__,RPC_GETPLAYEROBJECT__,RPC_GETACTOROBJECT__,RPC_ISLISTENING__,RPC_ISWATCHING__,RPC_SETCLIENT__ZONECLIENTSESSION_,RPC_DISMOUNT__,RPC_CALCULATEBFRATIO__,RPC_SETDIZZIEDSTATE__INT_,RPC_SETRALLIEDSTATE__INT_,RPC_SETAIMINGSTATE__INT_,RPC_SETCOVERSTATE__INT_,RPC_SETBERSERKEDSTATE__INT_,RPC_SETSTUNNEDSTATE__INT_,RPC_SETBLINDEDSTATE__INT_,RPC_SETINTIMIDATEDSTATE__INT_INT_,RPC_SETSNAREDSTATE__INT_,RPC_SETROOTEDSTATE__INT_,RPC_SETNEXTATTACKDELAY__INT_INT_,RPC_SETMEDITATESTATE__,RPC_ACTIVATEHAMREGENERATION__,RPC_ACTIVATEPASSIVEWOUNDREGENERATION__,RPC_ACTIVATESTATERECOVERY__,RPC_UPDATETIMEOFDEATH__,RPC_HASATTACKDELAY__,RPC_REMOVEATTACKDELAY__,RPC_HASSPICE__,RPC_UPDATELASTSUCCESSFULCOMBATACTION__,RPC_UPDATEKNOCKDOWNRECOVERY__,RPC_QUEUEDIZZYFALLEVENT__,RPC_UPDATELASTKNOCKDOWN__,RPC_CHECKKNOCKDOWNRECOVERY__,RPC_CHECKLASTKNOCKDOWN__,RPC_UPDATEPOSTUREDOWNRECOVERY__,RPC_UPDATEPOSTUREUPRECOVERY__,RPC_CHECKPOSTUREDOWNRECOVERY__,RPC_GETSCREENPLAYSTATE__STRING_,RPC_SETSCREENPLAYSTATE__STRING_LONG_,RPC_CHECKPOSTUREUPRECOVERY__,RPC_UPDATECOOLDOWNTIMER__STRING_INT_,RPC_CHECKCOOLDOWNRECOVERY__STRING_,RPC_ADDCOOLDOWN__STRING_INT_,RPC_DOANIMATION__STRING_,RPC_DOCOMBATANIMATION__CREATUREOBJECT_INT_BYTE_BYTE_,RPC_PLAYEFFECT__STRING_STRING_,RPC_PLAYEFFECT__STRING_,RPC_ACTIVATEQUEUEACTION__,RPC_ACTIVATEIMMEDIATEACTION__,RPC_GETCREATURENAME__,RPC_ISGROUPED__,RPC_GETBANKCREDITS__,RPC_GETCASHCREDITS__,RPC_GETBASEHAM__INT_,RPC_GETWOUNDS__INT_,RPC_GETHAM__INT_,RPC_GETMAXHAM__INT_,RPC_GETENCUMBRANCE__INT_,RPC_GETPOSTURE__,RPC_GETLOCOMOTION__,RPC_GETFACTIONRANK__,RPC_GETLINKEDCREATURE__,RPC_GETCREATURELINKID__,RPC_GETSHOCKWOUNDS__,RPC_GETWATCHTOID__,RPC_GETSTATEBITMASK__,RPC_HASSTATE__LONG_,RPC_HASSTATES__,RPC_GETLISTENID__,RPC_GETACCELERATIONMULTIPLIERBASE__,RPC_GETACCELERATIONMULTIPLIERMOD__,RPC_GETSPEEDMULTIPLIERBASE__,RPC_GETSPEEDMULTIPLIERMOD__,RPC_GETCURRENTSPEED__,RPC_GETRUNSPEED__,RPC_GETWALKSPEED__,RPC_GETTURNSCALE__,RPC_GETTERRAINNEGOTIATION__,RPC_GETRUNACCELERATION__,RPC_GETWALKACCELERATION__,RPC_GETPERFORMANCEANIMATION__,RPC_GETMOODSTRING__,RPC_GETWEAPONID__,RPC_GETWEAPON__,RPC_GETGUILDOBJECT__,RPC_GETGUILDID__,RPC_ISINGUILD__,RPC_SETGUILDOBJECT__GUILDOBJECT_,RPC_GETGROUPID__,RPC_GETGROUPINVITERID__,RPC_GETGROUP__,RPC_GETGROUPINVITECOUNTER__,RPC_GETTARGETID__,RPC_GETMOODID__,RPC_GETSLOPEMODPERCENT__,RPC_GETPERFORMANCECOUNTER__,RPC_GETINSTRUMENTID__,RPC_GETFROZEN__,RPC_GETHEIGHT__,RPC_GETSPECIES__,RPC_GETSPECIESNAME__,RPC_GETGENDER__,RPC_GETSKILLMOD__STRING_,RPC_HASSKILL__STRING_,RPC_SETWATCHTOID__LONG_,RPC_ISCREATUREOBJECT__,RPC_ISNEXTACTIONPAST__,RPC_ISTRAINERCREATURE__,RPC_ISSWIMMING__,RPC_GETCLIENT__,RPC_ISRIDINGMOUNT__,RPC_GETCONTROLDEVICE__,RPC_GETSWIMHEIGHT__,RPC_ISINCAPACITATED__,RPC_ISDEAD__,RPC_ISKNOCKEDDOWN__,RPC_ISKNEELING__,RPC_ISPRONE__,RPC_ISSTANDING__,RPC_ISSITTING__,RPC_ISSKILLANIMATING__,RPC_ISRALLIED__,RPC_ISINCOMBAT__,RPC_ISDIZZIED__,RPC_ISBERSERKED__,RPC_ISSTUNNED__,RPC_ISBLINDED__,RPC_ISINTIMIDATED__,RPC_ISSNARED__,RPC_ISIMMOBILIZED__,RPC_ISROOTED__,RPC_ISFROZEN__,RPC_ISDISEASED__,RPC_ISPOISONED__,RPC_ISBLEEDING__,RPC_ISONFIRE__,RPC_ISMOUNTED__,RPC_ISRIDINGCREATURE__,RPC_ISPEACED__,RPC_ISMEDITATING__,RPC_ISAIMING__,RPC_ISINCOVER__,RPC_ISRUNNING__,RPC_ISNONPLAYERCREATUREOBJECT__,RPC_ISCREATURE__,RPC_ISPLAYERCREATURE__,RPC_ISAIACTOR__,RPC_ISINFORMANTCREATURE__,RPC_GETCURRENTCAMP__,RPC_GETCURRENTWEATHER__,RPC_SETCURRENTWEATHER__BYTE_,RPC_GETCURRENTWIND__,RPC_SETCURRENTWIND__BYTE_,RPC_HANDLEOBJECTMENUSELECT__CREATUREOBJECT_BYTE_,RPC_FILLATTRIBUTELIST__ATTRIBUTELISTMESSAGE_CREATUREOBJECT_,RPC_DESTROYOBJECTFROMWORLD__BOOL_,RPC_ISINVISIBLE__,RPC_SETINVISIBLE__BOOL_}; CreatureObject::CreatureObject() : TangibleObject(DummyConstructorParameter::instance()) { CreatureObjectImplementation* _implementation = new CreatureObjectImplementation(); _impl = _implementation; _impl->_setStub(this); _setClassName("CreatureObject"); } CreatureObject::CreatureObject(DummyConstructorParameter* param) : TangibleObject(param) { _setClassName("CreatureObject"); } CreatureObject::~CreatureObject() { } void CreatureObject::initializeMembers() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_INITIALIZEMEMBERS__); method.executeWithVoidReturn(); } else _implementation->initializeMembers(); } void CreatureObject::createChildObjects() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CREATECHILDOBJECTS__); method.executeWithVoidReturn(); } else _implementation->createChildObjects(); } void CreatureObject::loadTemplateData(SharedObjectTemplate* templateData) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else _implementation->loadTemplateData(templateData); } void CreatureObject::initializeTransientMembers() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_INITIALIZETRANSIENTMEMBERS__); method.executeWithVoidReturn(); } else _implementation->initializeTransientMembers(); } void CreatureObject::clearQueueAction(unsigned int actioncntr, float timer, unsigned int tab1, unsigned int tab2) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CLEARQUEUEACTION__INT_FLOAT_INT_INT_); method.addUnsignedIntParameter(actioncntr); method.addFloatParameter(timer); method.addUnsignedIntParameter(tab1); method.addUnsignedIntParameter(tab2); method.executeWithVoidReturn(); } else _implementation->clearQueueAction(actioncntr, timer, tab1, tab2); } void CreatureObject::sendBaselinesTo(SceneObject* player) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDBASELINESTO__SCENEOBJECT_); method.addObjectParameter(player); method.executeWithVoidReturn(); } else _implementation->sendBaselinesTo(player); } void CreatureObject::sendToOwner(bool doClose) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDTOOWNER__BOOL_); method.addBooleanParameter(doClose); method.executeWithVoidReturn(); } else _implementation->sendToOwner(doClose); } void CreatureObject::sendTo(SceneObject* player, bool doClose) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDTO__SCENEOBJECT_BOOL_); method.addObjectParameter(player); method.addBooleanParameter(doClose); method.executeWithVoidReturn(); } else _implementation->sendTo(player, doClose); } void CreatureObject::sendSystemMessage(const String& message) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDSYSTEMMESSAGE__STRING_); method.addAsciiParameter(message); method.executeWithVoidReturn(); } else _implementation->sendSystemMessage(message); } void CreatureObject::playMusicMessage(const String& file) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_PLAYMUSICMESSAGE__STRING_); method.addAsciiParameter(file); method.executeWithVoidReturn(); } else _implementation->playMusicMessage(file); } void CreatureObject::sendNewbieTutorialRequest(const String& request) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDNEWBIETUTORIALREQUEST__STRING_); method.addAsciiParameter(request); method.executeWithVoidReturn(); } else _implementation->sendNewbieTutorialRequest(request); } void CreatureObject::sendNewbieTutorialEnableHudElement(const String& ui, bool enable) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDNEWBIETUTORIALENABLEHUDELEMENT__STRING_BOOL_); method.addAsciiParameter(ui); method.addBooleanParameter(enable); method.executeWithVoidReturn(); } else _implementation->sendNewbieTutorialEnableHudElement(ui, enable); } void CreatureObject::sendOpenHolocronToPageMessage() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDOPENHOLOCRONTOPAGEMESSAGE__); method.executeWithVoidReturn(); } else _implementation->sendOpenHolocronToPageMessage(); } void CreatureObject::sendSystemMessage(UnicodeString& message) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDSYSTEMMESSAGE__UNICODESTRING_); method.addUnicodeParameter(message); method.executeWithVoidReturn(); } else _implementation->sendSystemMessage(message); } void CreatureObject::sendSystemMessage(StringIdChatParameter& stringid) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else _implementation->sendSystemMessage(stringid); } void CreatureObject::sendSlottedObjectsTo(SceneObject* player) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDSLOTTEDOBJECTSTO__SCENEOBJECT_); method.addObjectParameter(player); method.executeWithVoidReturn(); } else _implementation->sendSlottedObjectsTo(player); } void CreatureObject::setCombatState() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCOMBATSTATE__); method.executeWithVoidReturn(); } else _implementation->setCombatState(); } void CreatureObject::clearCombatState(bool clearDefenders) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CLEARCOMBATSTATE__BOOL_); method.addBooleanParameter(clearDefenders); method.executeWithVoidReturn(); } else _implementation->clearCombatState(clearDefenders); } void CreatureObject::setPosture(int newPosture, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETPOSTURE__INT_BOOL_); method.addSignedIntParameter(newPosture); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setPosture(newPosture, notifyClient); } void CreatureObject::updateLocomotion() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATELOCOMOTION__); method.executeWithVoidReturn(); } else _implementation->updateLocomotion(); } void CreatureObject::setHeight(float heigh, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETHEIGHT__FLOAT_BOOL_); method.addFloatParameter(heigh); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setHeight(heigh, notifyClient); } void CreatureObject::setAccelerationMultiplierBase(float newMultiplierBase, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETACCELERATIONMULTIPLIERBASE__FLOAT_BOOL_); method.addFloatParameter(newMultiplierBase); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setAccelerationMultiplierBase(newMultiplierBase, notifyClient); } void CreatureObject::setAccelerationMultiplierMod(float newMultiplierMod, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETACCELERATIONMULTIPLIERMOD__FLOAT_BOOL_); method.addFloatParameter(newMultiplierMod); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setAccelerationMultiplierMod(newMultiplierMod, notifyClient); } void CreatureObject::setSpeedMultiplierBase(float newMultiplierBase, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSPEEDMULTIPLIERBASE__FLOAT_BOOL_); method.addFloatParameter(newMultiplierBase); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setSpeedMultiplierBase(newMultiplierBase, notifyClient); } void CreatureObject::setSpeedMultiplierMod(float newMultiplierMod, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSPEEDMULTIPLIERMOD__FLOAT_BOOL_); method.addFloatParameter(newMultiplierMod); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setSpeedMultiplierMod(newMultiplierMod, notifyClient); } void CreatureObject::setTurnScale(float newMultiplierMod, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETTURNSCALE__FLOAT_BOOL_); method.addFloatParameter(newMultiplierMod); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setTurnScale(newMultiplierMod, notifyClient); } void CreatureObject::setRunSpeed(float newSpeed, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETRUNSPEED__FLOAT_BOOL_); method.addFloatParameter(newSpeed); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setRunSpeed(newSpeed, notifyClient); } void CreatureObject::setCurrentSpeed(float newSpeed) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCURRENTSPEED__FLOAT_); method.addFloatParameter(newSpeed); method.executeWithVoidReturn(); } else _implementation->setCurrentSpeed(newSpeed); } void CreatureObject::setHAM(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETHAM__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setHAM(type, value, notifyClient); } int CreatureObject::inflictDamage(TangibleObject* attacker, int damageType, float damage, bool destroy, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_INFLICTDAMAGE__TANGIBLEOBJECT_INT_FLOAT_BOOL_BOOL_); method.addObjectParameter(attacker); method.addSignedIntParameter(damageType); method.addFloatParameter(damage); method.addBooleanParameter(destroy); method.addBooleanParameter(notifyClient); return method.executeWithSignedIntReturn(); } else return _implementation->inflictDamage(attacker, damageType, damage, destroy, notifyClient); } int CreatureObject::inflictDamage(TangibleObject* attacker, int damageType, float damage, bool destroy, const String& xp, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_INFLICTDAMAGE__TANGIBLEOBJECT_INT_FLOAT_BOOL_STRING_BOOL_); method.addObjectParameter(attacker); method.addSignedIntParameter(damageType); method.addFloatParameter(damage); method.addBooleanParameter(destroy); method.addAsciiParameter(xp); method.addBooleanParameter(notifyClient); return method.executeWithSignedIntReturn(); } else return _implementation->inflictDamage(attacker, damageType, damage, destroy, xp, notifyClient); } bool CreatureObject::hasDamage(int attribute) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASDAMAGE__INT_); method.addSignedIntParameter(attribute); return method.executeWithBooleanReturn(); } else return _implementation->hasDamage(attribute); } int CreatureObject::healDamage(TangibleObject* healer, int damageType, int damage, bool notifyClient, bool notifyObservers) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HEALDAMAGE__TANGIBLEOBJECT_INT_INT_BOOL_BOOL_); method.addObjectParameter(healer); method.addSignedIntParameter(damageType); method.addSignedIntParameter(damage); method.addBooleanParameter(notifyClient); method.addBooleanParameter(notifyObservers); return method.executeWithSignedIntReturn(); } else return _implementation->healDamage(healer, damageType, damage, notifyClient, notifyObservers); } int CreatureObject::healWound(TangibleObject* healer, int damageType, int damage, bool notifyClient, bool notifyObservers) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HEALWOUND__TANGIBLEOBJECT_INT_INT_BOOL_BOOL_); method.addObjectParameter(healer); method.addSignedIntParameter(damageType); method.addSignedIntParameter(damage); method.addBooleanParameter(notifyClient); method.addBooleanParameter(notifyObservers); return method.executeWithSignedIntReturn(); } else return _implementation->healWound(healer, damageType, damage, notifyClient, notifyObservers); } void CreatureObject::setBaseHAM(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETBASEHAM__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setBaseHAM(type, value, notifyClient); } void CreatureObject::setWounds(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETWOUNDS__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setWounds(type, value, notifyClient); } int CreatureObject::addWounds(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDWOUNDS__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); return method.executeWithSignedIntReturn(); } else return _implementation->addWounds(type, value, notifyClient); } void CreatureObject::setMaxHAM(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETMAXHAM__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setMaxHAM(type, value, notifyClient); } void CreatureObject::addMaxHAM(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDMAXHAM__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addMaxHAM(type, value, notifyClient); } void CreatureObject::setEncumbrance(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETENCUMBRANCE__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setEncumbrance(type, value, notifyClient); } void CreatureObject::addEncumbrance(int type, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDENCUMBRANCE__INT_INT_BOOL_); method.addSignedIntParameter(type); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addEncumbrance(type, value, notifyClient); } void CreatureObject::setWeapon(WeaponObject* weao, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETWEAPON__WEAPONOBJECT_BOOL_); method.addObjectParameter(weao); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setWeapon(weao, notifyClient); } int CreatureObject::notifyObjectInserted(SceneObject* object) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYOBJECTINSERTED__SCENEOBJECT_); method.addObjectParameter(object); return method.executeWithSignedIntReturn(); } else return _implementation->notifyObjectInserted(object); } int CreatureObject::notifyObjectRemoved(SceneObject* object) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYOBJECTREMOVED__SCENEOBJECT_); method.addObjectParameter(object); return method.executeWithSignedIntReturn(); } else return _implementation->notifyObjectRemoved(object); } void CreatureObject::setInstrumentID(int instrumentid, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETINSTRUMENTID__INT_BOOL_); method.addSignedIntParameter(instrumentid); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setInstrumentID(instrumentid, notifyClient); } void CreatureObject::setListenToID(unsigned long long id, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETLISTENTOID__LONG_BOOL_); method.addUnsignedLongParameter(id); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setListenToID(id, notifyClient); } void CreatureObject::setPerformanceCounter(int counter, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETPERFORMANCECOUNTER__INT_BOOL_); method.addSignedIntParameter(counter); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setPerformanceCounter(counter, notifyClient); } void CreatureObject::setPerformanceAnimation(const String& animation, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETPERFORMANCEANIMATION__STRING_BOOL_); method.addAsciiParameter(animation); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setPerformanceAnimation(animation, notifyClient); } void CreatureObject::setShockWounds(int newShock, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSHOCKWOUNDS__INT_BOOL_); method.addSignedIntParameter(newShock); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setShockWounds(newShock, notifyClient); } void CreatureObject::addShockWounds(int shockToAdd, bool notiyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDSHOCKWOUNDS__INT_BOOL_); method.addSignedIntParameter(shockToAdd); method.addBooleanParameter(notiyClient); method.executeWithVoidReturn(); } else _implementation->addShockWounds(shockToAdd, notiyClient); } void CreatureObject::setTargetID(unsigned long long targetID, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETTARGETID__LONG_BOOL_); method.addUnsignedLongParameter(targetID); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setTargetID(targetID, notifyClient); } void CreatureObject::setBankCredits(int credits, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETBANKCREDITS__INT_BOOL_); method.addSignedIntParameter(credits); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setBankCredits(credits, notifyClient); } void CreatureObject::addBuff(Buff* buff) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDBUFF__BUFF_); method.addObjectParameter(buff); method.executeWithVoidReturn(); } else _implementation->addBuff(buff); } bool CreatureObject::removeBuff(unsigned int buffcrc) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVEBUFF__INT_); method.addUnsignedIntParameter(buffcrc); return method.executeWithBooleanReturn(); } else return _implementation->removeBuff(buffcrc); } void CreatureObject::removeBuff(Buff* buff) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVEBUFF__BUFF_); method.addObjectParameter(buff); method.executeWithVoidReturn(); } else _implementation->removeBuff(buff); } bool CreatureObject::removeStateBuff(unsigned long long state) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVESTATEBUFF__LONG_); method.addUnsignedLongParameter(state); return method.executeWithBooleanReturn(); } else return _implementation->removeStateBuff(state); } void CreatureObject::clearBuffs(bool updateclient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CLEARBUFFS__BOOL_); method.addBooleanParameter(updateclient); method.executeWithVoidReturn(); } else _implementation->clearBuffs(updateclient); } void CreatureObject::addWearableObject(TangibleObject* object, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDWEARABLEOBJECT__TANGIBLEOBJECT_BOOL_); method.addObjectParameter(object); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addWearableObject(object, notifyClient); } void CreatureObject::removeWearableObject(TangibleObject* object, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVEWEARABLEOBJECT__TANGIBLEOBJECT_BOOL_); method.addObjectParameter(object); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->removeWearableObject(object, notifyClient); } WearablesDeltaVector* CreatureObject::getWearablesDeltaVector() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getWearablesDeltaVector(); } void CreatureObject::sendBuffsTo(CreatureObject* creature) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDBUFFSTO__CREATUREOBJECT_); method.addObjectParameter(creature); method.executeWithVoidReturn(); } else _implementation->sendBuffsTo(creature); } BuffList* CreatureObject::getBuffList() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getBuffList(); } Buff* CreatureObject::getBuff(unsigned int buffcrc) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETBUFF__INT_); method.addUnsignedIntParameter(buffcrc); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getBuff(buffcrc); } long long CreatureObject::getSkillModFromBuffs(const String& skillMod) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSKILLMODFROMBUFFS__STRING_); method.addAsciiParameter(skillMod); return method.executeWithSignedLongReturn(); } else return _implementation->getSkillModFromBuffs(skillMod); } int CreatureObject::addDotState(unsigned long long dotType, unsigned long long objectID, unsigned int strength, byte type, unsigned int duration, float potency, unsigned int defense) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDDOTSTATE__LONG_LONG_INT_BYTE_INT_FLOAT_INT_); method.addUnsignedLongParameter(dotType); method.addUnsignedLongParameter(objectID); method.addUnsignedIntParameter(strength); method.addByteParameter(type); method.addUnsignedIntParameter(duration); method.addFloatParameter(potency); method.addUnsignedIntParameter(defense); return method.executeWithSignedIntReturn(); } else return _implementation->addDotState(dotType, objectID, strength, type, duration, potency, defense); } bool CreatureObject::healDot(unsigned long long dotType, int reduction) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HEALDOT__LONG_INT_); method.addUnsignedLongParameter(dotType); method.addSignedIntParameter(reduction); return method.executeWithBooleanReturn(); } else return _implementation->healDot(dotType, reduction); } void CreatureObject::clearDots() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CLEARDOTS__); method.executeWithVoidReturn(); } else _implementation->clearDots(); } DamageOverTimeList* CreatureObject::getDamageOverTimeList() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getDamageOverTimeList(); } bool CreatureObject::hasBuff(unsigned int buffcrc) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASBUFF__INT_); method.addUnsignedIntParameter(buffcrc); return method.executeWithBooleanReturn(); } else return _implementation->hasBuff(buffcrc); } void CreatureObject::notifySelfPositionUpdate() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYSELFPOSITIONUPDATE__); method.executeWithVoidReturn(); } else _implementation->notifySelfPositionUpdate(); } void CreatureObject::notifyPostureChange(int newPosture) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYPOSTURECHANGE__INT_); method.addSignedIntParameter(newPosture); method.executeWithVoidReturn(); } else _implementation->notifyPostureChange(newPosture); } void CreatureObject::setLevel(int level) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETLEVEL__INT_); method.addSignedIntParameter(level); method.executeWithVoidReturn(); } else _implementation->setLevel(level); } void CreatureObject::updateToDatabaseAllObjects(bool startTask) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATETODATABASEALLOBJECTS__BOOL_); method.addBooleanParameter(startTask); method.executeWithVoidReturn(); } else _implementation->updateToDatabaseAllObjects(startTask); } bool CreatureObject::isResuscitable() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISRESUSCITABLE__); return method.executeWithBooleanReturn(); } else return _implementation->isResuscitable(); } void CreatureObject::addBankCredits(int credits, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDBANKCREDITS__INT_BOOL_); method.addSignedIntParameter(credits); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addBankCredits(credits, notifyClient); } void CreatureObject::addCashCredits(int credits, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDCASHCREDITS__INT_BOOL_); method.addSignedIntParameter(credits); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addCashCredits(credits, notifyClient); } void CreatureObject::subtractBankCredits(int credits) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SUBTRACTBANKCREDITS__INT_); method.addSignedIntParameter(credits); method.executeWithVoidReturn(); } else _implementation->subtractBankCredits(credits); } void CreatureObject::subtractCashCredits(int credits) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SUBTRACTCASHCREDITS__INT_); method.addSignedIntParameter(credits); method.executeWithVoidReturn(); } else _implementation->subtractCashCredits(credits); } bool CreatureObject::verifyCashCredits(int credits) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_VERIFYCASHCREDITS__INT_); method.addSignedIntParameter(credits); return method.executeWithBooleanReturn(); } else return _implementation->verifyCashCredits(credits); } bool CreatureObject::verifyBankCredits(int credits) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_VERIFYBANKCREDITS__INT_); method.addSignedIntParameter(credits); return method.executeWithBooleanReturn(); } else return _implementation->verifyBankCredits(credits); } bool CreatureObject::isDancing() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISDANCING__); return method.executeWithBooleanReturn(); } else return _implementation->isDancing(); } bool CreatureObject::isPlayingMusic() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISPLAYINGMUSIC__); return method.executeWithBooleanReturn(); } else return _implementation->isPlayingMusic(); } void CreatureObject::stopEntertaining() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_STOPENTERTAINING__); method.executeWithVoidReturn(); } else _implementation->stopEntertaining(); } bool CreatureObject::isEntertaining() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISENTERTAINING__); return method.executeWithBooleanReturn(); } else return _implementation->isEntertaining(); } void CreatureObject::setCashCredits(int credits, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCASHCREDITS__INT_BOOL_); method.addSignedIntParameter(credits); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setCashCredits(credits, notifyClient); } void CreatureObject::setTerrainNegotiation(float value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETTERRAINNEGOTIATION__FLOAT_BOOL_); method.addFloatParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setTerrainNegotiation(value, notifyClient); } void CreatureObject::addSkill(Skill* skill, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else _implementation->addSkill(skill, notifyClient); } void CreatureObject::addSkill(const String& skill, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDSKILL__STRING_BOOL_); method.addAsciiParameter(skill); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addSkill(skill, notifyClient); } void CreatureObject::removeSkill(Skill* skill, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else _implementation->removeSkill(skill, notifyClient); } void CreatureObject::removeSkill(const String& skill, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVESKILL__STRING_BOOL_); method.addAsciiParameter(skill); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->removeSkill(skill, notifyClient); } void CreatureObject::addSkillMod(const int modType, const String& skillMod, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDSKILLMOD__INT_STRING_INT_BOOL_); method.addSignedIntParameter(modType); method.addAsciiParameter(skillMod); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->addSkillMod(modType, skillMod, value, notifyClient); } void CreatureObject::removeSkillMod(const int modType, const String& skillMod, int value, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVESKILLMOD__INT_STRING_INT_BOOL_); method.addSignedIntParameter(modType); method.addAsciiParameter(skillMod); method.addSignedIntParameter(value); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->removeSkillMod(modType, skillMod, value, notifyClient); } void CreatureObject::removeAllSkillModsOfType(const int modType, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVEALLSKILLMODSOFTYPE__INT_BOOL_); method.addSignedIntParameter(modType); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->removeAllSkillModsOfType(modType, notifyClient); } void CreatureObject::updateGroupInviterID(unsigned long long id, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATEGROUPINVITERID__LONG_BOOL_); method.addUnsignedLongParameter(id); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->updateGroupInviterID(id, notifyClient); } void CreatureObject::updateGroup(GroupObject* group, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATEGROUP__GROUPOBJECT_BOOL_); method.addObjectParameter(group); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->updateGroup(group, notifyClient); } void CreatureObject::enqueueCommand(unsigned int actionCRC, unsigned int actionCount, unsigned long long targetID, const UnicodeString& arguments, int priority) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ENQUEUECOMMAND__INT_INT_LONG_UNICODESTRING_INT_); method.addUnsignedIntParameter(actionCRC); method.addUnsignedIntParameter(actionCount); method.addUnsignedLongParameter(targetID); method.addUnicodeParameter(arguments); method.addSignedIntParameter(priority); method.executeWithVoidReturn(); } else _implementation->enqueueCommand(actionCRC, actionCount, targetID, arguments, priority); } void CreatureObject::setMood(byte moodID, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETMOOD__BYTE_BOOL_); method.addByteParameter(moodID); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setMood(moodID, notifyClient); } void CreatureObject::setMoodString(const String& animation, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETMOODSTRING__STRING_BOOL_); method.addAsciiParameter(animation); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setMoodString(animation, notifyClient); } void CreatureObject::deleteQueueAction(unsigned int actionCount) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_DELETEQUEUEACTION__INT_); method.addUnsignedIntParameter(actionCount); method.executeWithVoidReturn(); } else _implementation->deleteQueueAction(actionCount); } bool CreatureObject::setState(unsigned long long state, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSTATE__LONG_BOOL_); method.addUnsignedLongParameter(state); method.addBooleanParameter(notifyClient); return method.executeWithBooleanReturn(); } else return _implementation->setState(state, notifyClient); } bool CreatureObject::clearState(unsigned long long state, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CLEARSTATE__LONG_BOOL_); method.addUnsignedLongParameter(state); method.addBooleanParameter(notifyClient); return method.executeWithBooleanReturn(); } else return _implementation->clearState(state, notifyClient); } void CreatureObject::setControlDevice(ControlDevice* device) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCONTROLDEVICE__CONTROLDEVICE_); method.addObjectParameter(device); method.executeWithVoidReturn(); } else _implementation->setControlDevice(device); } void CreatureObject::setCreatureLink(CreatureObject* object, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCREATURELINK__CREATUREOBJECT_BOOL_); method.addObjectParameter(object); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setCreatureLink(object, notifyClient); } void CreatureObject::executeObjectControllerAction(unsigned int actionCRC) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_EXECUTEOBJECTCONTROLLERACTION__INT_); method.addUnsignedIntParameter(actionCRC); method.executeWithVoidReturn(); } else _implementation->executeObjectControllerAction(actionCRC); } void CreatureObject::executeObjectControllerAction(unsigned int actionCRC, unsigned long long targetID, const UnicodeString& args) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_EXECUTEOBJECTCONTROLLERACTION__INT_LONG_UNICODESTRING_); method.addUnsignedIntParameter(actionCRC); method.addUnsignedLongParameter(targetID); method.addUnicodeParameter(args); method.executeWithVoidReturn(); } else _implementation->executeObjectControllerAction(actionCRC, targetID, args); } bool CreatureObject::isAttackableBy(CreatureObject* object) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISATTACKABLEBY__CREATUREOBJECT_); method.addObjectParameter(object); return method.executeWithBooleanReturn(); } else return _implementation->isAttackableBy(object); } bool CreatureObject::isHealableBy(CreatureObject* object) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISHEALABLEBY__CREATUREOBJECT_); method.addObjectParameter(object); return method.executeWithBooleanReturn(); } else return _implementation->isHealableBy(object); } bool CreatureObject::isInBountyMission(CreatureObject* bountyHunter, CreatureObject* target) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINBOUNTYMISSION__CREATUREOBJECT_CREATUREOBJECT_); method.addObjectParameter(bountyHunter); method.addObjectParameter(target); return method.executeWithBooleanReturn(); } else return _implementation->isInBountyMission(bountyHunter, target); } void CreatureObject::sendConversationStartTo(SceneObject* player) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDCONVERSATIONSTARTTO__SCENEOBJECT_); method.addObjectParameter(player); method.executeWithVoidReturn(); } else _implementation->sendConversationStartTo(player); } void CreatureObject::selectConversationOption(int option, SceneObject* obj) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SELECTCONVERSATIONOPTION__INT_SCENEOBJECT_); method.addSignedIntParameter(option); method.addObjectParameter(obj); method.executeWithVoidReturn(); } else _implementation->selectConversationOption(option, obj); } void CreatureObject::sendMessage(BasePacket* msg) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDMESSAGE__BASEPACKET_); method.addObjectParameter(msg); method.executeWithVoidReturn(); } else _implementation->sendMessage(msg); } void CreatureObject::sendExecuteConsoleCommand(const String& command) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SENDEXECUTECONSOLECOMMAND__STRING_); method.addAsciiParameter(command); method.executeWithVoidReturn(); } else _implementation->sendExecuteConsoleCommand(command); } bool CreatureObject::isAggressiveTo(CreatureObject* object) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISAGGRESSIVETO__CREATUREOBJECT_); method.addObjectParameter(object); return method.executeWithBooleanReturn(); } else return _implementation->isAggressiveTo(object); } int CreatureObject::notifyObjectDestructionObservers(TangibleObject* attacker, int condition) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYOBJECTDESTRUCTIONOBSERVERS__TANGIBLEOBJECT_INT_); method.addObjectParameter(attacker); method.addSignedIntParameter(condition); return method.executeWithSignedIntReturn(); } else return _implementation->notifyObjectDestructionObservers(attacker, condition); } int CreatureObject::notifyObjectKillObservers(TangibleObject* killer) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYOBJECTKILLOBSERVERS__TANGIBLEOBJECT_); method.addObjectParameter(killer); return method.executeWithSignedIntReturn(); } else return _implementation->notifyObjectKillObservers(killer); } void CreatureObject::notifyLoadFromDatabase() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_NOTIFYLOADFROMDATABASE__); method.executeWithVoidReturn(); } else _implementation->notifyLoadFromDatabase(); } void CreatureObject::setFactionRank(int rank, bool notifyClient) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETFACTIONRANK__INT_BOOL_); method.addSignedIntParameter(rank); method.addBooleanParameter(notifyClient); method.executeWithVoidReturn(); } else _implementation->setFactionRank(rank, notifyClient); } String CreatureObject::getFirstName() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETFIRSTNAME__); String _return_getFirstName; method.executeWithAsciiReturn(_return_getFirstName); return _return_getFirstName; } else return _implementation->getFirstName(); } String CreatureObject::getLastName() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETLASTNAME__); String _return_getLastName; method.executeWithAsciiReturn(_return_getLastName); return _return_getLastName; } else return _implementation->getLastName(); } bool CreatureObject::isOnline() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISONLINE__); return method.executeWithBooleanReturn(); } else return _implementation->isOnline(); } bool CreatureObject::canTreatInjuries() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CANTREATINJURIES__); return method.executeWithBooleanReturn(); } else return _implementation->canTreatInjuries(); } bool CreatureObject::canTreatStates() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CANTREATSTATES__); return method.executeWithBooleanReturn(); } else return _implementation->canTreatStates(); } bool CreatureObject::canTreatWounds() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CANTREATWOUNDS__); return method.executeWithBooleanReturn(); } else return _implementation->canTreatWounds(); } bool CreatureObject::canTreatConditions() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CANTREATCONDITIONS__); return method.executeWithBooleanReturn(); } else return _implementation->canTreatConditions(); } PlayerObject* CreatureObject::getPlayerObject() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETPLAYEROBJECT__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getPlayerObject(); } AiActor* CreatureObject::getActorObject() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETACTOROBJECT__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getActorObject(); } bool CreatureObject::isListening() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISLISTENING__); return method.executeWithBooleanReturn(); } else return _implementation->isListening(); } bool CreatureObject::isWatching() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISWATCHING__); return method.executeWithBooleanReturn(); } else return _implementation->isWatching(); } void CreatureObject::setClient(ZoneClientSession* cli) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCLIENT__ZONECLIENTSESSION_); method.addObjectParameter(cli); method.executeWithVoidReturn(); } else _implementation->setClient(cli); } void CreatureObject::dismount() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_DISMOUNT__); method.executeWithVoidReturn(); } else _implementation->dismount(); } float CreatureObject::calculateBFRatio() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CALCULATEBFRATIO__); return method.executeWithFloatReturn(); } else return _implementation->calculateBFRatio(); } void CreatureObject::setDizziedState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETDIZZIEDSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setDizziedState(durationSeconds); } void CreatureObject::setRalliedState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETRALLIEDSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setRalliedState(durationSeconds); } void CreatureObject::setAimingState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETAIMINGSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setAimingState(durationSeconds); } void CreatureObject::setCoverState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCOVERSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setCoverState(durationSeconds); } void CreatureObject::setBerserkedState(unsigned int duration) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETBERSERKEDSTATE__INT_); method.addUnsignedIntParameter(duration); method.executeWithVoidReturn(); } else _implementation->setBerserkedState(duration); } void CreatureObject::setStunnedState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSTUNNEDSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setStunnedState(durationSeconds); } void CreatureObject::setBlindedState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETBLINDEDSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setBlindedState(durationSeconds); } void CreatureObject::setIntimidatedState(unsigned int mod, int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETINTIMIDATEDSTATE__INT_INT_); method.addUnsignedIntParameter(mod); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setIntimidatedState(mod, durationSeconds); } void CreatureObject::setSnaredState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSNAREDSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setSnaredState(durationSeconds); } void CreatureObject::setRootedState(int durationSeconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETROOTEDSTATE__INT_); method.addSignedIntParameter(durationSeconds); method.executeWithVoidReturn(); } else _implementation->setRootedState(durationSeconds); } bool CreatureObject::setNextAttackDelay(unsigned int mod, int del) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETNEXTATTACKDELAY__INT_INT_); method.addUnsignedIntParameter(mod); method.addSignedIntParameter(del); return method.executeWithBooleanReturn(); } else return _implementation->setNextAttackDelay(mod, del); } void CreatureObject::setMeditateState() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETMEDITATESTATE__); method.executeWithVoidReturn(); } else _implementation->setMeditateState(); } void CreatureObject::activateHAMRegeneration() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ACTIVATEHAMREGENERATION__); method.executeWithVoidReturn(); } else _implementation->activateHAMRegeneration(); } void CreatureObject::activatePassiveWoundRegeneration() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ACTIVATEPASSIVEWOUNDREGENERATION__); method.executeWithVoidReturn(); } else _implementation->activatePassiveWoundRegeneration(); } void CreatureObject::activateStateRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ACTIVATESTATERECOVERY__); method.executeWithVoidReturn(); } else _implementation->activateStateRecovery(); } void CreatureObject::updateTimeOfDeath() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATETIMEOFDEATH__); method.executeWithVoidReturn(); } else _implementation->updateTimeOfDeath(); } bool CreatureObject::hasAttackDelay() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASATTACKDELAY__); return method.executeWithBooleanReturn(); } else return _implementation->hasAttackDelay(); } void CreatureObject::removeAttackDelay() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_REMOVEATTACKDELAY__); method.executeWithVoidReturn(); } else _implementation->removeAttackDelay(); } CooldownTimerMap* CreatureObject::getCooldownTimerMap() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getCooldownTimerMap(); } bool CreatureObject::hasSpice() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASSPICE__); return method.executeWithBooleanReturn(); } else return _implementation->hasSpice(); } void CreatureObject::updateLastSuccessfulCombatAction() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATELASTSUCCESSFULCOMBATACTION__); method.executeWithVoidReturn(); } else _implementation->updateLastSuccessfulCombatAction(); } void CreatureObject::updateKnockdownRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATEKNOCKDOWNRECOVERY__); method.executeWithVoidReturn(); } else _implementation->updateKnockdownRecovery(); } void CreatureObject::queueDizzyFallEvent() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_QUEUEDIZZYFALLEVENT__); method.executeWithVoidReturn(); } else _implementation->queueDizzyFallEvent(); } void CreatureObject::updateLastKnockdown() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATELASTKNOCKDOWN__); method.executeWithVoidReturn(); } else _implementation->updateLastKnockdown(); } bool CreatureObject::checkKnockdownRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CHECKKNOCKDOWNRECOVERY__); return method.executeWithBooleanReturn(); } else return _implementation->checkKnockdownRecovery(); } bool CreatureObject::checkLastKnockdown() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CHECKLASTKNOCKDOWN__); return method.executeWithBooleanReturn(); } else return _implementation->checkLastKnockdown(); } void CreatureObject::updatePostureDownRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATEPOSTUREDOWNRECOVERY__); method.executeWithVoidReturn(); } else _implementation->updatePostureDownRecovery(); } void CreatureObject::updatePostureUpRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATEPOSTUREUPRECOVERY__); method.executeWithVoidReturn(); } else _implementation->updatePostureUpRecovery(); } bool CreatureObject::checkPostureDownRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CHECKPOSTUREDOWNRECOVERY__); return method.executeWithBooleanReturn(); } else return _implementation->checkPostureDownRecovery(); } unsigned long long CreatureObject::getScreenPlayState(const String& screenPlay) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSCREENPLAYSTATE__STRING_); method.addAsciiParameter(screenPlay); return method.executeWithUnsignedLongReturn(); } else return _implementation->getScreenPlayState(screenPlay); } void CreatureObject::setScreenPlayState(const String& screenPlay, unsigned long long state) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETSCREENPLAYSTATE__STRING_LONG_); method.addAsciiParameter(screenPlay); method.addUnsignedLongParameter(state); method.executeWithVoidReturn(); } else _implementation->setScreenPlayState(screenPlay, state); } bool CreatureObject::checkPostureUpRecovery() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CHECKPOSTUREUPRECOVERY__); return method.executeWithBooleanReturn(); } else return _implementation->checkPostureUpRecovery(); } void CreatureObject::updateCooldownTimer(const String& coooldownTimer, unsigned int miliSecondsToAdd) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_UPDATECOOLDOWNTIMER__STRING_INT_); method.addAsciiParameter(coooldownTimer); method.addUnsignedIntParameter(miliSecondsToAdd); method.executeWithVoidReturn(); } else _implementation->updateCooldownTimer(coooldownTimer, miliSecondsToAdd); } bool CreatureObject::checkCooldownRecovery(const String& cooldown) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_CHECKCOOLDOWNRECOVERY__STRING_); method.addAsciiParameter(cooldown); return method.executeWithBooleanReturn(); } else return _implementation->checkCooldownRecovery(cooldown); } Time* CreatureObject::getCooldownTime(const String& cooldown) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getCooldownTime(cooldown); } void CreatureObject::addCooldown(const String& name, unsigned int miliseconds) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ADDCOOLDOWN__STRING_INT_); method.addAsciiParameter(name); method.addUnsignedIntParameter(miliseconds); method.executeWithVoidReturn(); } else _implementation->addCooldown(name, miliseconds); } void CreatureObject::doAnimation(const String& animation) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_DOANIMATION__STRING_); method.addAsciiParameter(animation); method.executeWithVoidReturn(); } else _implementation->doAnimation(animation); } void CreatureObject::doCombatAnimation(CreatureObject* defender, unsigned int animationCRC, byte hit, byte trails) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_DOCOMBATANIMATION__CREATUREOBJECT_INT_BYTE_BYTE_); method.addObjectParameter(defender); method.addUnsignedIntParameter(animationCRC); method.addByteParameter(hit); method.addByteParameter(trails); method.executeWithVoidReturn(); } else _implementation->doCombatAnimation(defender, animationCRC, hit, trails); } void CreatureObject::playEffect(const String& file, const String& aux) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_PLAYEFFECT__STRING_STRING_); method.addAsciiParameter(file); method.addAsciiParameter(aux); method.executeWithVoidReturn(); } else _implementation->playEffect(file, aux); } void CreatureObject::playEffect(const String& file) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_PLAYEFFECT__STRING_); method.addAsciiParameter(file); method.executeWithVoidReturn(); } else _implementation->playEffect(file); } void CreatureObject::activateQueueAction() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ACTIVATEQUEUEACTION__); method.executeWithVoidReturn(); } else _implementation->activateQueueAction(); } void CreatureObject::activateImmediateAction() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ACTIVATEIMMEDIATEACTION__); method.executeWithVoidReturn(); } else _implementation->activateImmediateAction(); } UnicodeString CreatureObject::getCreatureName() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCREATURENAME__); UnicodeString _return_getCreatureName; method.executeWithUnicodeReturn(_return_getCreatureName); return _return_getCreatureName; } else return _implementation->getCreatureName(); } bool CreatureObject::isGrouped() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISGROUPED__); return method.executeWithBooleanReturn(); } else return _implementation->isGrouped(); } int CreatureObject::getBankCredits() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETBANKCREDITS__); return method.executeWithSignedIntReturn(); } else return _implementation->getBankCredits(); } int CreatureObject::getCashCredits() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCASHCREDITS__); return method.executeWithSignedIntReturn(); } else return _implementation->getCashCredits(); } int CreatureObject::getBaseHAM(int idx) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETBASEHAM__INT_); method.addSignedIntParameter(idx); return method.executeWithSignedIntReturn(); } else return _implementation->getBaseHAM(idx); } int CreatureObject::getWounds(int idx) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETWOUNDS__INT_); method.addSignedIntParameter(idx); return method.executeWithSignedIntReturn(); } else return _implementation->getWounds(idx); } DeltaVector* CreatureObject::getWounds() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getWounds(); } int CreatureObject::getHAM(int idx) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETHAM__INT_); method.addSignedIntParameter(idx); return method.executeWithSignedIntReturn(); } else return _implementation->getHAM(idx); } DeltaVector* CreatureObject::getHAM() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getHAM(); } int CreatureObject::getMaxHAM(int idx) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETMAXHAM__INT_); method.addSignedIntParameter(idx); return method.executeWithSignedIntReturn(); } else return _implementation->getMaxHAM(idx); } DeltaVector* CreatureObject::getMaxHAM() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getMaxHAM(); } int CreatureObject::getEncumbrance(int idx) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETENCUMBRANCE__INT_); method.addSignedIntParameter(idx); return method.executeWithSignedIntReturn(); } else return _implementation->getEncumbrance(idx); } DeltaVector* CreatureObject::getEncumbrances() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getEncumbrances(); } byte CreatureObject::getPosture() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETPOSTURE__); return method.executeWithByteReturn(); } else return _implementation->getPosture(); } byte CreatureObject::getLocomotion() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETLOCOMOTION__); return method.executeWithByteReturn(); } else return _implementation->getLocomotion(); } byte CreatureObject::getFactionRank() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETFACTIONRANK__); return method.executeWithByteReturn(); } else return _implementation->getFactionRank(); } ManagedWeakReference CreatureObject::getLinkedCreature() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETLINKEDCREATURE__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getLinkedCreature(); } unsigned long long CreatureObject::getCreatureLinkID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCREATURELINKID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getCreatureLinkID(); } float CreatureObject::getShockWounds() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSHOCKWOUNDS__); return method.executeWithFloatReturn(); } else return _implementation->getShockWounds(); } unsigned long long CreatureObject::getWatchToID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETWATCHTOID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getWatchToID(); } unsigned long long CreatureObject::getStateBitmask() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSTATEBITMASK__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getStateBitmask(); } bool CreatureObject::hasState(unsigned long long state) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASSTATE__LONG_); method.addUnsignedLongParameter(state); return method.executeWithBooleanReturn(); } else return _implementation->hasState(state); } bool CreatureObject::hasStates() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASSTATES__); return method.executeWithBooleanReturn(); } else return _implementation->hasStates(); } unsigned long long CreatureObject::getListenID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETLISTENID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getListenID(); } float CreatureObject::getAccelerationMultiplierBase() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETACCELERATIONMULTIPLIERBASE__); return method.executeWithFloatReturn(); } else return _implementation->getAccelerationMultiplierBase(); } float CreatureObject::getAccelerationMultiplierMod() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETACCELERATIONMULTIPLIERMOD__); return method.executeWithFloatReturn(); } else return _implementation->getAccelerationMultiplierMod(); } float CreatureObject::getSpeedMultiplierBase() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSPEEDMULTIPLIERBASE__); return method.executeWithFloatReturn(); } else return _implementation->getSpeedMultiplierBase(); } float CreatureObject::getSpeedMultiplierMod() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSPEEDMULTIPLIERMOD__); return method.executeWithFloatReturn(); } else return _implementation->getSpeedMultiplierMod(); } float CreatureObject::getCurrentSpeed() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCURRENTSPEED__); return method.executeWithFloatReturn(); } else return _implementation->getCurrentSpeed(); } SpeedMultiplierModChanges* CreatureObject::getSpeedMultiplierModChanges() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getSpeedMultiplierModChanges(); } CommandQueueActionVector* CreatureObject::getCommandQueue() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getCommandQueue(); } float CreatureObject::getRunSpeed() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETRUNSPEED__); return method.executeWithFloatReturn(); } else return _implementation->getRunSpeed(); } float CreatureObject::getWalkSpeed() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETWALKSPEED__); return method.executeWithFloatReturn(); } else return _implementation->getWalkSpeed(); } float CreatureObject::getTurnScale() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETTURNSCALE__); return method.executeWithFloatReturn(); } else return _implementation->getTurnScale(); } float CreatureObject::getTerrainNegotiation() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETTERRAINNEGOTIATION__); return method.executeWithFloatReturn(); } else return _implementation->getTerrainNegotiation(); } float CreatureObject::getRunAcceleration() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETRUNACCELERATION__); return method.executeWithFloatReturn(); } else return _implementation->getRunAcceleration(); } float CreatureObject::getWalkAcceleration() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETWALKACCELERATION__); return method.executeWithFloatReturn(); } else return _implementation->getWalkAcceleration(); } String CreatureObject::getPerformanceAnimation() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETPERFORMANCEANIMATION__); String _return_getPerformanceAnimation; method.executeWithAsciiReturn(_return_getPerformanceAnimation); return _return_getPerformanceAnimation; } else return _implementation->getPerformanceAnimation(); } String CreatureObject::getMoodString() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETMOODSTRING__); String _return_getMoodString; method.executeWithAsciiReturn(_return_getMoodString); return _return_getMoodString; } else return _implementation->getMoodString(); } unsigned long long CreatureObject::getWeaponID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETWEAPONID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getWeaponID(); } WeaponObject* CreatureObject::getWeapon() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETWEAPON__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getWeapon(); } GuildObject* CreatureObject::getGuildObject() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGUILDOBJECT__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getGuildObject(); } int CreatureObject::getGuildID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGUILDID__); return method.executeWithSignedIntReturn(); } else return _implementation->getGuildID(); } bool CreatureObject::isInGuild() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINGUILD__); return method.executeWithBooleanReturn(); } else return _implementation->isInGuild(); } void CreatureObject::setGuildObject(GuildObject* guildobj) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETGUILDOBJECT__GUILDOBJECT_); method.addObjectParameter(guildobj); method.executeWithVoidReturn(); } else _implementation->setGuildObject(guildobj); } unsigned long long CreatureObject::getGroupID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGROUPID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getGroupID(); } unsigned long long CreatureObject::getGroupInviterID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGROUPINVITERID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getGroupInviterID(); } GroupObject* CreatureObject::getGroup() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGROUP__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getGroup(); } unsigned long long CreatureObject::getGroupInviteCounter() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGROUPINVITECOUNTER__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getGroupInviteCounter(); } unsigned long long CreatureObject::getTargetID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETTARGETID__); return method.executeWithUnsignedLongReturn(); } else return _implementation->getTargetID(); } byte CreatureObject::getMoodID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETMOODID__); return method.executeWithByteReturn(); } else return _implementation->getMoodID(); } float CreatureObject::getSlopeModPercent() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSLOPEMODPERCENT__); return method.executeWithFloatReturn(); } else return _implementation->getSlopeModPercent(); } int CreatureObject::getPerformanceCounter() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETPERFORMANCECOUNTER__); return method.executeWithSignedIntReturn(); } else return _implementation->getPerformanceCounter(); } int CreatureObject::getInstrumentID() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETINSTRUMENTID__); return method.executeWithSignedIntReturn(); } else return _implementation->getInstrumentID(); } byte CreatureObject::getFrozen() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETFROZEN__); return method.executeWithByteReturn(); } else return _implementation->getFrozen(); } float CreatureObject::getHeight() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETHEIGHT__); return method.executeWithFloatReturn(); } else return _implementation->getHeight(); } int CreatureObject::getSpecies() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSPECIES__); return method.executeWithSignedIntReturn(); } else return _implementation->getSpecies(); } String CreatureObject::getSpeciesName() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSPECIESNAME__); String _return_getSpeciesName; method.executeWithAsciiReturn(_return_getSpeciesName); return _return_getSpeciesName; } else return _implementation->getSpeciesName(); } int CreatureObject::getGender() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETGENDER__); return method.executeWithSignedIntReturn(); } else return _implementation->getGender(); } DeltaVector* CreatureObject::getBaseHAM() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getBaseHAM(); } SkillList* CreatureObject::getSkillList() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getSkillList(); } int CreatureObject::getSkillMod(const String& skillmod) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSKILLMOD__STRING_); method.addAsciiParameter(skillmod); return method.executeWithSignedIntReturn(); } else return _implementation->getSkillMod(skillmod); } bool CreatureObject::hasSkill(const String& skill) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HASSKILL__STRING_); method.addAsciiParameter(skill); return method.executeWithBooleanReturn(); } else return _implementation->hasSkill(skill); } SkillModList* CreatureObject::getSkillModList() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { throw ObjectNotLocalException(this); } else return _implementation->getSkillModList(); } void CreatureObject::setWatchToID(unsigned long long id) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETWATCHTOID__LONG_); method.addUnsignedLongParameter(id); method.executeWithVoidReturn(); } else _implementation->setWatchToID(id); } bool CreatureObject::isCreatureObject() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISCREATUREOBJECT__); return method.executeWithBooleanReturn(); } else return _implementation->isCreatureObject(); } bool CreatureObject::isNextActionPast() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISNEXTACTIONPAST__); return method.executeWithBooleanReturn(); } else return _implementation->isNextActionPast(); } bool CreatureObject::isTrainerCreature() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISTRAINERCREATURE__); return method.executeWithBooleanReturn(); } else return _implementation->isTrainerCreature(); } bool CreatureObject::isSwimming() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISSWIMMING__); return method.executeWithBooleanReturn(); } else return _implementation->isSwimming(); } ZoneClientSession* CreatureObject::getClient() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCLIENT__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getClient(); } bool CreatureObject::isRidingMount() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISRIDINGMOUNT__); return method.executeWithBooleanReturn(); } else return _implementation->isRidingMount(); } ManagedWeakReference CreatureObject::getControlDevice() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCONTROLDEVICE__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getControlDevice(); } float CreatureObject::getSwimHeight() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETSWIMHEIGHT__); return method.executeWithFloatReturn(); } else return _implementation->getSwimHeight(); } bool CreatureObject::isIncapacitated() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINCAPACITATED__); return method.executeWithBooleanReturn(); } else return _implementation->isIncapacitated(); } bool CreatureObject::isDead() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISDEAD__); return method.executeWithBooleanReturn(); } else return _implementation->isDead(); } bool CreatureObject::isKnockedDown() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISKNOCKEDDOWN__); return method.executeWithBooleanReturn(); } else return _implementation->isKnockedDown(); } bool CreatureObject::isKneeling() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISKNEELING__); return method.executeWithBooleanReturn(); } else return _implementation->isKneeling(); } bool CreatureObject::isProne() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISPRONE__); return method.executeWithBooleanReturn(); } else return _implementation->isProne(); } bool CreatureObject::isStanding() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISSTANDING__); return method.executeWithBooleanReturn(); } else return _implementation->isStanding(); } bool CreatureObject::isSitting() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISSITTING__); return method.executeWithBooleanReturn(); } else return _implementation->isSitting(); } bool CreatureObject::isSkillAnimating() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISSKILLANIMATING__); return method.executeWithBooleanReturn(); } else return _implementation->isSkillAnimating(); } bool CreatureObject::isRallied() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISRALLIED__); return method.executeWithBooleanReturn(); } else return _implementation->isRallied(); } bool CreatureObject::isInCombat() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINCOMBAT__); return method.executeWithBooleanReturn(); } else return _implementation->isInCombat(); } bool CreatureObject::isDizzied() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISDIZZIED__); return method.executeWithBooleanReturn(); } else return _implementation->isDizzied(); } bool CreatureObject::isBerserked() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISBERSERKED__); return method.executeWithBooleanReturn(); } else return _implementation->isBerserked(); } bool CreatureObject::isStunned() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISSTUNNED__); return method.executeWithBooleanReturn(); } else return _implementation->isStunned(); } bool CreatureObject::isBlinded() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISBLINDED__); return method.executeWithBooleanReturn(); } else return _implementation->isBlinded(); } bool CreatureObject::isIntimidated() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINTIMIDATED__); return method.executeWithBooleanReturn(); } else return _implementation->isIntimidated(); } bool CreatureObject::isSnared() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISSNARED__); return method.executeWithBooleanReturn(); } else return _implementation->isSnared(); } bool CreatureObject::isImmobilized() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISIMMOBILIZED__); return method.executeWithBooleanReturn(); } else return _implementation->isImmobilized(); } bool CreatureObject::isRooted() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISROOTED__); return method.executeWithBooleanReturn(); } else return _implementation->isRooted(); } bool CreatureObject::isFrozen() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISFROZEN__); return method.executeWithBooleanReturn(); } else return _implementation->isFrozen(); } bool CreatureObject::isDiseased() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISDISEASED__); return method.executeWithBooleanReturn(); } else return _implementation->isDiseased(); } bool CreatureObject::isPoisoned() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISPOISONED__); return method.executeWithBooleanReturn(); } else return _implementation->isPoisoned(); } bool CreatureObject::isBleeding() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISBLEEDING__); return method.executeWithBooleanReturn(); } else return _implementation->isBleeding(); } bool CreatureObject::isOnFire() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISONFIRE__); return method.executeWithBooleanReturn(); } else return _implementation->isOnFire(); } bool CreatureObject::isMounted() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISMOUNTED__); return method.executeWithBooleanReturn(); } else return _implementation->isMounted(); } bool CreatureObject::isRidingCreature() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISRIDINGCREATURE__); return method.executeWithBooleanReturn(); } else return _implementation->isRidingCreature(); } bool CreatureObject::isPeaced() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISPEACED__); return method.executeWithBooleanReturn(); } else return _implementation->isPeaced(); } bool CreatureObject::isMeditating() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISMEDITATING__); return method.executeWithBooleanReturn(); } else return _implementation->isMeditating(); } bool CreatureObject::isAiming() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISAIMING__); return method.executeWithBooleanReturn(); } else return _implementation->isAiming(); } bool CreatureObject::isInCover() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINCOVER__); return method.executeWithBooleanReturn(); } else return _implementation->isInCover(); } bool CreatureObject::isRunning() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISRUNNING__); return method.executeWithBooleanReturn(); } else return _implementation->isRunning(); } bool CreatureObject::isNonPlayerCreatureObject() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISNONPLAYERCREATUREOBJECT__); return method.executeWithBooleanReturn(); } else return _implementation->isNonPlayerCreatureObject(); } bool CreatureObject::isCreature() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISCREATURE__); return method.executeWithBooleanReturn(); } else return _implementation->isCreature(); } bool CreatureObject::isPlayerCreature() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISPLAYERCREATURE__); return method.executeWithBooleanReturn(); } else return _implementation->isPlayerCreature(); } bool CreatureObject::isAiActor() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISAIACTOR__); return method.executeWithBooleanReturn(); } else return _implementation->isAiActor(); } bool CreatureObject::isInformantCreature() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINFORMANTCREATURE__); return method.executeWithBooleanReturn(); } else return _implementation->isInformantCreature(); } CampSiteActiveArea* CreatureObject::getCurrentCamp() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCURRENTCAMP__); return static_cast(method.executeWithObjectReturn()); } else return _implementation->getCurrentCamp(); } byte CreatureObject::getCurrentWeather() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCURRENTWEATHER__); return method.executeWithByteReturn(); } else return _implementation->getCurrentWeather(); } void CreatureObject::setCurrentWeather(byte value) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCURRENTWEATHER__BYTE_); method.addByteParameter(value); method.executeWithVoidReturn(); } else _implementation->setCurrentWeather(value); } byte CreatureObject::getCurrentWind() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_GETCURRENTWIND__); return method.executeWithByteReturn(); } else return _implementation->getCurrentWind(); } void CreatureObject::setCurrentWind(byte value) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETCURRENTWIND__BYTE_); method.addByteParameter(value); method.executeWithVoidReturn(); } else _implementation->setCurrentWind(value); } int CreatureObject::handleObjectMenuSelect(CreatureObject* player, byte selectedID) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_HANDLEOBJECTMENUSELECT__CREATUREOBJECT_BYTE_); method.addObjectParameter(player); method.addByteParameter(selectedID); return method.executeWithSignedIntReturn(); } else return _implementation->handleObjectMenuSelect(player, selectedID); } void CreatureObject::fillAttributeList(AttributeListMessage* msg, CreatureObject* object) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_FILLATTRIBUTELIST__ATTRIBUTELISTMESSAGE_CREATUREOBJECT_); method.addObjectParameter(msg); method.addObjectParameter(object); method.executeWithVoidReturn(); } else _implementation->fillAttributeList(msg, object); } void CreatureObject::destroyObjectFromWorld(bool sendSelfDestroy) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_DESTROYOBJECTFROMWORLD__BOOL_); method.addBooleanParameter(sendSelfDestroy); method.executeWithVoidReturn(); } else _implementation->destroyObjectFromWorld(sendSelfDestroy); } bool CreatureObject::isInvisible() { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_ISINVISIBLE__); return method.executeWithBooleanReturn(); } else return _implementation->isInvisible(); } void CreatureObject::setInvisible(bool invis) { CreatureObjectImplementation* _implementation = static_cast(_getImplementation()); if (_implementation == NULL) { if (!deployed) throw ObjectNotDeployedException(this); DistributedMethod method(this, RPC_SETINVISIBLE__BOOL_); method.addBooleanParameter(invis); method.executeWithVoidReturn(); } else _implementation->setInvisible(invis); } DistributedObjectServant* CreatureObject::_getImplementation() { if (!_updated) _updated = true; return _impl; } void CreatureObject::_setImplementation(DistributedObjectServant* servant) { _impl = servant; } /* * CreatureObjectImplementation */ CreatureObjectImplementation::CreatureObjectImplementation(DummyConstructorParameter* param) : TangibleObjectImplementation(param) { _initializeImplementation(); } CreatureObjectImplementation::~CreatureObjectImplementation() { CreatureObjectImplementation::finalize(); } void CreatureObjectImplementation::_initializeImplementation() { _setClassHelper(CreatureObjectHelper::instance()); _this = NULL; _serializationHelperMethod(); } void CreatureObjectImplementation::_setStub(DistributedObjectStub* stub) { _this = static_cast(stub); TangibleObjectImplementation::_setStub(stub); } DistributedObjectStub* CreatureObjectImplementation::_getStub() { return _this.get(); } CreatureObjectImplementation::operator const CreatureObject*() { return _this.get(); } void CreatureObjectImplementation::lock(bool doLock) { _this.getReferenceUnsafeStaticCast()->lock(doLock); } void CreatureObjectImplementation::lock(ManagedObject* obj) { _this.getReferenceUnsafeStaticCast()->lock(obj); } void CreatureObjectImplementation::rlock(bool doLock) { _this.getReferenceUnsafeStaticCast()->rlock(doLock); } void CreatureObjectImplementation::wlock(bool doLock) { _this.getReferenceUnsafeStaticCast()->wlock(doLock); } void CreatureObjectImplementation::wlock(ManagedObject* obj) { _this.getReferenceUnsafeStaticCast()->wlock(obj); } void CreatureObjectImplementation::unlock(bool doLock) { _this.getReferenceUnsafeStaticCast()->unlock(doLock); } void CreatureObjectImplementation::runlock(bool doLock) { _this.getReferenceUnsafeStaticCast()->runlock(doLock); } void CreatureObjectImplementation::_serializationHelperMethod() { TangibleObjectImplementation::_serializationHelperMethod(); _setClassName("CreatureObject"); } void CreatureObjectImplementation::readObject(ObjectInputStream* stream) { uint16 _varCount = stream->readShort(); for (int i = 0; i < _varCount; ++i) { String _name; _name.parseFromBinaryStream(stream); uint32 _varSize = stream->readInt(); int _currentOffset = stream->getOffset(); if(CreatureObjectImplementation::readObjectMember(stream, _name)) { } stream->setOffset(_currentOffset + _varSize); } initializeTransientMembers(); } bool CreatureObjectImplementation::readObjectMember(ObjectInputStream* stream, const String& _name) { if (TangibleObjectImplementation::readObjectMember(stream, _name)) return true; if (_name == "CreatureObject.bankCredits") { TypeInfo::parseFromBinaryStream(&bankCredits, stream); return true; } if (_name == "CreatureObject.cashCredits") { TypeInfo::parseFromBinaryStream(&cashCredits, stream); return true; } if (_name == "CreatureObject.gender") { TypeInfo::parseFromBinaryStream(&gender, stream); return true; } if (_name == "CreatureObject.species") { TypeInfo::parseFromBinaryStream(&species, stream); return true; } if (_name == "CreatureObject.baseHAM") { TypeInfo >::parseFromBinaryStream(&baseHAM, stream); return true; } if (_name == "CreatureObject.posture") { TypeInfo::parseFromBinaryStream(&posture, stream); return true; } if (_name == "CreatureObject.locomotion") { TypeInfo::parseFromBinaryStream(&locomotion, stream); return true; } if (_name == "CreatureObject.factionRank") { TypeInfo::parseFromBinaryStream(&factionRank, stream); return true; } if (_name == "CreatureObject.invisible") { TypeInfo::parseFromBinaryStream(&invisible, stream); return true; } if (_name == "CreatureObject.linkedCreature") { TypeInfo >::parseFromBinaryStream(&linkedCreature, stream); return true; } if (_name == "CreatureObject.controlDevice") { TypeInfo >::parseFromBinaryStream(&controlDevice, stream); return true; } if (_name == "CreatureObject.shockWounds") { TypeInfo::parseFromBinaryStream(&shockWounds, stream); return true; } if (_name == "CreatureObject.wounds") { TypeInfo >::parseFromBinaryStream(&wounds, stream); return true; } if (_name == "CreatureObject.stateBitmask") { TypeInfo::parseFromBinaryStream(&stateBitmask, stream); return true; } if (_name == "CreatureObject.encumbrances") { TypeInfo >::parseFromBinaryStream(&encumbrances, stream); return true; } if (_name == "CreatureObject.wearablesVector") { TypeInfo::parseFromBinaryStream(&wearablesVector, stream); return true; } if (_name == "CreatureObject.accelerationMultiplierBase") { TypeInfo::parseFromBinaryStream(&accelerationMultiplierBase, stream); return true; } if (_name == "CreatureObject.accelerationMultiplierMod") { TypeInfo::parseFromBinaryStream(&accelerationMultiplierMod, stream); return true; } if (_name == "CreatureObject.speedMultiplierBase") { TypeInfo::parseFromBinaryStream(&speedMultiplierBase, stream); return true; } if (_name == "CreatureObject.speedMultiplierModChanges") { TypeInfo::parseFromBinaryStream(&speedMultiplierModChanges, stream); return true; } if (_name == "CreatureObject.speedMultiplierMod") { TypeInfo::parseFromBinaryStream(&speedMultiplierMod, stream); return true; } if (_name == "CreatureObject.turnScale") { TypeInfo::parseFromBinaryStream(&turnScale, stream); return true; } if (_name == "CreatureObject.runSpeed") { TypeInfo::parseFromBinaryStream(&runSpeed, stream); return true; } if (_name == "CreatureObject.walkSpeed") { TypeInfo::parseFromBinaryStream(&walkSpeed, stream); return true; } if (_name == "CreatureObject.currentSpeed") { TypeInfo::parseFromBinaryStream(¤tSpeed, stream); return true; } if (_name == "CreatureObject.terrainNegotiation") { TypeInfo::parseFromBinaryStream(&terrainNegotiation, stream); return true; } if (_name == "CreatureObject.runAcceleration") { TypeInfo::parseFromBinaryStream(&runAcceleration, stream); return true; } if (_name == "CreatureObject.walkAcceleration") { TypeInfo::parseFromBinaryStream(&walkAcceleration, stream); return true; } if (_name == "CreatureObject.height") { TypeInfo::parseFromBinaryStream(&height, stream); return true; } if (_name == "CreatureObject.swimHeight") { TypeInfo::parseFromBinaryStream(&swimHeight, stream); return true; } if (_name == "CreatureObject.slopeModPercent") { TypeInfo::parseFromBinaryStream(&slopeModPercent, stream); return true; } if (_name == "CreatureObject.slopeModAngle") { TypeInfo::parseFromBinaryStream(&slopeModAngle, stream); return true; } if (_name == "CreatureObject.listenToID") { TypeInfo::parseFromBinaryStream(&listenToID, stream); return true; } if (_name == "CreatureObject.watchToID") { TypeInfo::parseFromBinaryStream(&watchToID, stream); return true; } if (_name == "CreatureObject.performanceAnimation") { TypeInfo::parseFromBinaryStream(&performanceAnimation, stream); return true; } if (_name == "CreatureObject.moodString") { TypeInfo::parseFromBinaryStream(&moodString, stream); return true; } if (_name == "CreatureObject.weapon") { TypeInfo >::parseFromBinaryStream(&weapon, stream); return true; } if (_name == "CreatureObject.group") { TypeInfo >::parseFromBinaryStream(&group, stream); return true; } if (_name == "CreatureObject.groupInviterID") { TypeInfo::parseFromBinaryStream(&groupInviterID, stream); return true; } if (_name == "CreatureObject.groupInviteCounter") { TypeInfo::parseFromBinaryStream(&groupInviteCounter, stream); return true; } if (_name == "CreatureObject.guild") { TypeInfo >::parseFromBinaryStream(&guild, stream); return true; } if (_name == "CreatureObject.targetID") { TypeInfo::parseFromBinaryStream(&targetID, stream); return true; } if (_name == "CreatureObject.moodID") { TypeInfo::parseFromBinaryStream(&moodID, stream); return true; } if (_name == "CreatureObject.performanceCounter") { TypeInfo::parseFromBinaryStream(&performanceCounter, stream); return true; } if (_name == "CreatureObject.instrumentID") { TypeInfo::parseFromBinaryStream(&instrumentID, stream); return true; } if (_name == "CreatureObject.hamList") { TypeInfo >::parseFromBinaryStream(&hamList, stream); return true; } if (_name == "CreatureObject.maxHamList") { TypeInfo >::parseFromBinaryStream(&maxHamList, stream); return true; } if (_name == "CreatureObject.frozen") { TypeInfo::parseFromBinaryStream(&frozen, stream); return true; } if (_name == "CreatureObject.templateString") { TypeInfo::parseFromBinaryStream(&templateString, stream); return true; } if (_name == "CreatureObject.skillList") { TypeInfo::parseFromBinaryStream(&skillList, stream); return true; } if (_name == "CreatureObject.skillModList") { TypeInfo::parseFromBinaryStream(&skillModList, stream); return true; } if (_name == "CreatureObject.nextAction") { TypeInfo