Planeshift
|
Any semi-autonomous object, either a player or an NPC. More...
#include <gem.h>
Classes | |
struct | ChatHistoryEntry |
Info: Stores a chat history element. More... | |
struct | DRstate |
Public Member Functions | |
int | ActiveSpellCount (const csString &name) |
void | AddActiveSpell (ActiveSpell *asp) |
void | AddAttackerHistory (gemActor *attacker, float damage) |
void | AddAttackerHistory (gemActor *attacker, float hpRate, csTicks duration) |
bool | AddChatReport (gemActor *reporter) |
Adds an active report (file logging session) to this actor. More... | |
bool | AtRest () const |
void | AttachScript (ProgressionScript *script, int type) |
virtual void | Broadcast (int clientnum, bool control) |
virtual void | BroadcastTargetStatDR (ClientConnectionSet *clients) |
bool | CanBeAttackedBy (gemActor *attacker, gemActor *&lastAttacker) const |
void | CancelActiveSpellsForDeath () |
void | CancelActiveSpellsWhichDamage () |
void | ClearDamageHistory () |
void | Defeat () |
void | DetachScript (ProgressionScript *script, int type) |
void | DoDamage (gemActor *attacker, float damage) |
void | EndAttack () |
void | FallBegan (const csVector3 &pos, iSector *sector) |
Called when the object began falling - 'fallBeginning' tells where the fall started displaceY is the displacement that needs to be added to due to passing through warping portals portalSector is the final sector of the player after passing through the warping portals. More... | |
float | FallEnded (const csVector3 &pos, iSector *sector) |
Called when the object has fallen down - sets its falling status to false. More... | |
ActiveSpell * | FindActiveSpell (const csString &name, SPELL_TYPE type) |
int | FindAnimIndex (const char *name) |
gemObject * | FindNearbyActorName (const char *name) |
Used by chat manager to identify an npc you are near if you talk to one. More... | |
virtual void | ForcePositionUpdate (int32_t loadDelay=0, csString background="", csVector2 point1=0, csVector2 point2=0, csString widget="") |
gemActor (GEMSupervisor *gemsupervisor, CacheManager *cachemanager, EntityManager *entitymanager, psCharacter *chardata, const char *factname, InstanceID myInstance, iSector *room, const csVector3 &pos, float rotangle, int clientnum) | |
uint32_t | GetActiveMagicSequence () |
Get the activeMagic sequence, updating to the next value;. More... | |
csArray< ActiveSpell * > & | GetActiveSpells () |
FrozenBuffable & | GetBuffableFrozen () |
virtual psCharacter * | GetCharacterData () |
virtual Client * | GetClient () const |
const Stance & | GetCombatStance () |
AttackerHistory * | GetDamageHistory (int pos) const |
size_t | GetDamageHistoryCount () const |
virtual unsigned | GetDefaultAttackID () |
virtual csString | GetDefaultBehavior (const csString &dfltBehaviors) |
csTicks | GetFallStartTime () |
bool | GetFiniteInventory () |
const char * | GetFirstName () |
csPtr< PlayerGroup > | GetGroup () |
int | GetGroupID () |
psGuildInfo * | GetGuild () |
psGuildLevel * | GetGuildLevel () |
psGuildMember * | GetGuildMembership () |
Gets the psguildmember structure refereed to this actor, if in a guild. More... | |
const char * | GetGuildName () |
virtual bool | GetInvincibility () |
void | GetLastLocation (csVector3 &pos, float &yrot, iSector *§or, InstanceID &instance) |
Get the last reported location this actor was at. More... | |
void | GetLastProductionPos (csVector3 &pos) |
virtual void | GetLastSuperclientPos (csVector3 &pos, InstanceID &instance, csTicks &last) const |
int | GetMasqueradeLevel () |
PSCHARACTER_MODE | GetMode () |
const char * | GetModeStr () |
Return a string name of the mode. More... | |
psCharacter * | GetMount () const |
virtual const char * | GetObjectType () |
virtual PID | GetPID () |
void | GetPrevTeleportLocation (csVector3 &pos, float &yrot, iSector *§or, InstanceID &instance) |
Get the location of the player before he was teleported. More... | |
const csVector3 & | GetProductionStartPos (void) const |
Returns the place where the player last started digging. More... | |
float | GetRelativeFaction (gemActor *speaker) |
int | GetSecurityLevel () |
bool | GetSpawnPos (csVector3 &pos, float &yrot, iSector *§or, bool useRange=false) |
Gets the player spawn position according to his race. More... | |
gemObject * | GetTargetObject () const |
int | GetTargetType (gemObject *target) |
Get the target type in regards to attacks. More... | |
psWorkGameEvent * | GetTradeWork () |
Return trade work event so it can be stopped. More... | |
void | GetValidPos (csVector3 &pos, float &yrot, iSector *§or, InstanceID &instance) |
virtual float | GetVelocity () |
Get the z velocity of the actor. More... | |
bool | GetViewAllObjects () |
Flag to determine of this player can see all objects. More... | |
virtual bool | GetVisibility () |
void | HandleDeath () |
virtual bool | HasBeenAttackedBy (gemActor *attacker) |
Checks the attacker history to see if the attacker has actually attacked the entity. More... | |
bool | InGroup () const |
virtual bool | InsideGuardedArea (gemObject *object) |
Check if object is inside guarded area. More... | |
void | InterruptSpellCasting () |
void | InvokeAttackScripts (gemActor *defender, psItem *weapon) |
void | InvokeDefenseScripts (gemActor *attacker, psItem *weapon) |
void | InvokeMovementScripts () |
void | InvokeNearlyDeadScripts (gemActor *defender, psItem *weapon) |
bool | IsAllowedToAttack (gemObject *target, csString &msg) |
Checks if our actor can attack given target. More... | |
bool | IsAllowedToMove () |
bool | IsFalling () |
Checks if the object is falling. More... | |
bool | IsFrozen () |
bool | IsGroupedWith (gemActor *other, bool IncludePets=false) const |
bool | IsLoggingChat () const |
Returns /report file logging status. More... | |
bool | IsMounted () |
bool | IsMyPet (gemActor *other) const |
bool | IsSpellCasting () |
void | Kill (gemActor *attacker) |
bool | LogChatMessage (const char *who, const psChatMessage &msg) |
Adds the chat message to the history and optionally to the log file. More... | |
bool | LogLine (const char *szLine) |
Saves a line to this actor's chat history and logs it to a file, if there are active reports. More... | |
bool | LogSystemMessage (const char *szLine) |
Saves a system message to this actor's chat history and logs it to a file, if there are active reports. More... | |
void | MoveToLastPos () |
Moves player to his last reported location. More... | |
bool | MoveToSpawnPos (int32_t delay=0, csString background="", csVector2 point1=0, csVector2 point2=0, csString widget="") |
Moves player to his spawn position. More... | |
bool | MoveToValidPos (bool force=false) |
Restores actor to his last valid position. More... | |
void | MulticastDRUpdate () |
void | ProcessStamina () |
void | ProcessStamina (const csVector3 &velocity, bool force=false) |
void | RegisterCallback (iDeathCallback *receiver) |
bool | RemoveActiveSpell (ActiveSpell *asp) |
void | RemoveAttackerHistory (gemActor *attacker) |
void | RemoveChatReport () |
Removes an active report (file logging session) for this actor. More... | |
void | RemoveFromGroup () |
void | Resurrect () |
virtual bool | SeesObject (gemObject *object, float range) |
virtual bool | Send (int clientnum, bool control, bool to_superclients, psPersistAllEntities *allEntities=NULL) |
Send this object to the given client. More... | |
void | SendActiveSpells () |
virtual void | SendBehaviorMessage (const csString &str, gemObject *obj) |
virtual void | SendGroupMessage (MsgEntry *me) |
Distribute this object to all members of a group. More... | |
virtual void | SendGroupStats () |
virtual void | SendTargetStatDR (Client *client) |
void | SetAction (const char *anim, csTicks &timeDelay) |
void | SetAllowedToDisconnect (bool allowed) |
Call this to ask the actor to set allowed to disconnect in the connected client. More... | |
void | SetAllowedToMove (bool newvalue) |
virtual void | SetCombatStance (const Stance &stance) |
virtual void | SetDefaultAttackID (unsigned) |
void | SetDefaults (bool player) |
Set attributes back to default. More... | |
bool | SetDRData (psDRMessage &drmsg) |
void | SetEquipment (const char *equip) |
void | SetFiniteInventory (bool v) |
void | SetFrozen (bool flag) |
Check whether the actor is frozen. More... | |
void | SetGroup (PlayerGroup *group) |
void | SetInstance (InstanceID worldInstance) |
virtual void | SetInvincibility (bool invincible) |
void | SetLastProductionPos (csVector3 &pos) |
virtual void | SetLastSuperclientPos (const csVector3 &pos, InstanceID instance, const csTicks &now) |
void | SetMasqueradeLevel (int level) |
bool | SetMesh (const char *meshname) |
void | SetMode (PSCHARACTER_MODE newmode, uint32_t extraData=0) |
void | SetMount (psCharacter *newMount) |
void | SetPosition (const csVector3 &pos, float angle, iSector *sector) |
void | SetPrevTeleportLocation (const csVector3 &pos, float yrot, iSector *sector, InstanceID instance) |
Record the location of this actor before he was teleported. More... | |
void | SetProductionStartPos (const csVector3 &pos) |
Sets the place where the player started digging. More... | |
void | SetSecurityLevel (int level) |
void | SetSpellCasting (psSpellCastGameEvent *event) |
void | SetTargetObject (gemObject *object) |
void | SetTextureParts (const char *parts) |
void | SetTradeWork (psWorkGameEvent *event) |
Assign trade work event so it can be accessed. More... | |
bool | SetupCharData () |
void | SetViewAllObjects (bool v) |
virtual void | SetVisibility (bool visible) |
void | Sit () |
Make the character sit. More... | |
void | Stand () |
Makes the character stand up. More... | |
bool | StartAttack () |
void | StopMoving (bool worldVel=false) |
void | Teleport (const char *sec, const csVector3 &pos, float yrot, InstanceID instance, int32_t loadDelay=0, csString background="", csVector2 point1=0, csVector2 point2=0, csString widget="") |
void | Teleport (iSector *sector, const csVector3 &pos, float yrot, InstanceID instance, int32_t loadDelay=0, csString background="", csVector2 point1=0, csVector2 point2=0, csString widget="") |
void | Teleport (iSector *sector, const csVector3 &pos, float yrot, int32_t loadDelay=0, csString background="", csVector2 point1=0, csVector2 point2=0, csString widget="") |
void | UnregisterCallback (iDeathCallback *receiver) |
virtual bool | UpdateDR () |
void | UpdateStats () |
Checks the vitals (hp, mana, ...) for the specific gemActor If there are updates to publish, it then uses SendStatDRMessage to inform all actors client side. More... | |
void | UpdateValidLocation (const csVector3 &pos, float yrot, iSector *sector, InstanceID instance, bool force=false) |
virtual | ~gemActor () |
iScriptableVar implementation | |
Functions that implement the iScriptableVar interface. | |
virtual double | GetProperty (MathEnvironment *env, const char *ptr) |
virtual double | CalcFunction (MathEnvironment *env, const char *functionName, const double *params) |
![]() | |
virtual void | Disconnect () |
Called when a client disconnects. More... | |
virtual void | Dump () |
Dump debug information. More... | |
gemActor * | GetActorPtr () |
gemActionLocation * | GetALPtr () |
virtual float | GetBaseAdvertiseRange () |
This value indicates the range that this entity would become visible to other entities if no other modifiers were taken into consideration. More... | |
uint32_t | GetClientID () |
EID | GetEID () |
InstanceID | GetInstance () |
psItem * | GetItem () |
gemItem * | GetItemPtr () |
const char * | GetName () |
gemNPC * | GetNPCPtr () |
gemPet * | GetPetPtr () |
bool | IsAlive () const |
Returns whether the object is alive. More... | |
virtual bool | IsUpdateReq (csVector3 const &pos, csVector3 const &oldPos) |
virtual bool | IsValid (void) |
float | RangeTo (gemObject *obj, bool ignoreY=false, bool ignoreInstance=false) |
void | RegisterCallback (iDeleteObjectCallback *receiver) |
void | SetAlive (bool flag, bool queue=true) |
Set needed stats for alive or dead for object. More... | |
void | SetInstance (InstanceID newInstance) |
void | SetName (const char *n) |
void | UnregisterCallback (iDeleteObjectCallback *receiver) |
virtual | ~gemObject () |
virtual const char * | ToString () |
iMeshWrapper * | GetMeshWrapper () |
csString | GetMesh () |
void | Move (const csVector3 &pos, float rotangle, iSector *room) |
bool | IsNear (gemObject *obj, float radius, bool ignoreY=false) |
const csVector3 & | GetPosition () |
void | GetPosition (csVector3 &pos, float &yrot, iSector *§or) |
void | GetPosition (csVector3 &pos, iSector *§or) |
float | GetAngle () |
Get rotation of entity as returned by psWorld::Matrix2YRot. More... | |
iSector * | GetSector () |
const char * | GetSectorName () |
csArray< gemObject * > * | GetObjectsInRange (float range) |
ProximityList * | GetProxList () |
csArray< PublishDestination > & | GetMulticastClients () |
Returns all the clients which are inside our proxy list. More... | |
void | UpdateProxList (bool force=false) |
Generates proxlist if needed (or forced). More... | |
void | RemoveFromAllProx () |
void | SetAlwaysWatching (bool w) |
bool | AlwaysWatching () |
virtual int | GetGuildID () |
virtual psNPCDialog * | GetNPCDialogPtr () |
virtual void | AddLootablePlayer (PID playerID) |
virtual void | RemoveLootablePlayer (PID playerID) |
virtual bool | IsLootablePlayer (PID playerID) |
virtual Client * | GetRandomLootClient (int range) |
virtual AccountID | GetSuperclientID () |
virtual void | SetSuperclientID (AccountID id) |
virtual gemObject * | GetOwner () |
virtual bool | HasKillStealProtection () |
Returns if the object has killsteal protection. More... | |
![]() | |
virtual | ~iDeleteNotificationObject () |
![]() | |
virtual | ~iScriptableVar () |
![]() | |
virtual | ~iDeathNotificationObject () |
Public Attributes | |
psLinearMovement * | pcmove |
GM/debug abilities | |
Turn on and of features used for GMs/debuging. | |
bool | nevertired |
These flags are for GM/debug abilities. More... | |
bool | infinitemana |
infinite mana More... | |
bool | instantcast |
cast spells instantly More... | |
bool | safefall |
no fall damage More... | |
bool | questtester |
no quest lockouts More... | |
bool | givekillexp |
give exp if killed More... | |
Protected Member Functions | |
virtual void | ApplyStaminaCalculations (const csVector3 &velocity, float times) |
bool | CanSwitchMode (PSCHARACTER_MODE from, PSCHARACTER_MODE to) |
bool | InitCharData (Client *c) |
bool | InitLinMove (const csVector3 &pos, float angle, iSector *sector) |
Determines the right size and height for the collider for the sprite and sets the actual position of the sprite. More... | |
void | SetGMDefaults () |
Set initial attributes for GMs. More... | |
![]() | |
gemObject (GEMSupervisor *gemsupervisor, EntityManager *entitymanager, CacheManager *cachemanager, const char *name, const char *factname, InstanceID myinstance, iSector *room, const csVector3 &pos, float rotangle, int clientnum) | |
void | InitMesh (const char *name, const csVector3 &pos, const float rotangle, iSector *room) |
bool | InitProximityList (float radius, int clientnum) |
Protected Attributes | |
uint32_t | activeMagic_seq |
active magic message seq More... | |
unsigned int | activeReports |
unsigned int activeReports Info: Total /report commands filed against this player that are still active (logging). More... | |
csArray< ActiveSpell * > | activeSpells |
bool | atRest |
Is this character stationary or moving? More... | |
uint8_t | attack_cnt |
Count of attack events in CS event queue. More... | |
csVector3 | bottom |
csArray< ChatHistoryEntry > | chatHistory |
csArray<ChatHistoryEntry> chatHistory Info: Chat history for this player. A chat line stays in history for CHAT_HISTORY_LIFETIME (defined in gem.cpp). More... | |
csWeakRef< Client > | clientRef |
Stance | combat_stance |
csArray< iDeathCallback * > | deathReceivers |
List of objects which are to be notified when this actor dies. More... | |
csPDelArray< AttackerHistory > | dmgHistory |
uint8_t | DRcounter |
increments in loop to prevent out of order packet overwrites of better data More... | |
csVector3 | fallStartPos |
the position where the fall began More... | |
iSector * | fallStartSector |
the sector where the fall began More... | |
csTicks | fallStartTime |
uint8_t | forceDRcounter |
sequence number for forced position updates More... | |
iSector * | forcedSector |
Needed to force the effect of a psForcePositionMessage since sectors are tied to instances and force position messages may be lost on crash, loading failure, etc. This ensures that a DR message containing the new sector is received at least once. More... | |
csRef< PlayerGroup > | group |
bool | invincible |
cannot be attacked More... | |
bool | isAllowedToMove |
Is a movement lockout in effect? More... | |
bool | isFalling |
is this object falling down ? More... | |
FrozenBuffable | isFrozen |
Whether the actor is frozen or not. More... | |
DRstate | last_location |
csVector3 | last_production_pos |
csTicks | lastDR |
unsigned int | lastSentSuperclientInstance |
csVector3 | lastSentSuperclientPos |
csTicks | lastSentSuperclientTick |
csVector3 | lastV |
csRef< iFile > | logging_chat_file |
csRef<iFile> logging_chat_file Info: log file handle. More... | |
int | masqueradeLevel |
psCharacter * | mount |
uint8_t | movementMode |
Actor movement mode from DB table movement_modes. More... | |
DRstate | newvalid_location |
csVector3 | offset |
csPDelArray< ProgressionScript > | onAttackScripts |
csPDelArray< ProgressionScript > | onDefenseScripts |
csPDelArray< ProgressionScript > | onMovementScripts |
csPDelArray< ProgressionScript > | onNearlyDeadScripts |
PID | pid |
Player ID (also known as character ID or PID) More... | |
PSCHARACTER_MODE | player_mode |
DRstate | prev_teleport_location |
csVector3 | productionStartPos |
Production Start Pos is used to record the place where people started digging. More... | |
psCharacter * | psChar |
int | securityLevel |
What commands the actor can access. Normally only for a player controlled object. More... | |
psSpellCastGameEvent * | spellCasting |
Hold a pointer to the game event < for the spell currently cast. More... | |
csWeakRef< gemObject > | targetObject |
Is the current targeted object for this actor. More... | |
csVector3 | top |
struct gemActor::DRstate | valid_location |
bool | viewAllObjects |
can view invisible objects? More... | |
bool | visible |
is visible to clients ? More... | |
psWorkGameEvent * | workEvent |
![]() | |
bool | alwaysWatching |
True if this object always watches (proxlists) regardless of owner. More... | |
CacheManager * | cacheManager |
EID | eid |
Entity ID (unique identifier for object) More... | |
EntityManager * | entityManager |
csString | factname |
Name of CS Mesh Factory used to create this object. More... | |
bool | is_alive |
Flag indicating whether object is alive or not. More... | |
csString | matname |
Name of base material used by this object. More... | |
csString | name |
Name of this object, used mostly for debugging. More... | |
csRef< iMeshFactoryWrapper > | nullfact |
Null factory for our mesh instances. More... | |
gemMesh * | pcmesh |
link to mesh class More... | |
float | prox_distance_current |
What is the current actual range for proxlists (they adjust when the # of objects gets too high) More... | |
float | prox_distance_desired |
What is the maximum range of proxlist we want. More... | |
ProximityList * | proxlist |
Proximity List for this object. More... | |
csArray< iDeleteObjectCallback * > | receivers |
List of objects which are to be notified when this object is deleted. More... | |
bool | valid |
Is object fully loaded. More... | |
InstanceID | worldInstance |
Only objects which match instances can see each other. More... | |
Additional Inherited Members | |
![]() | |
static GEMSupervisor * | cel |
Static ptr back to main collection of all objects. More... | |
gemActor::gemActor | ( | GEMSupervisor * | gemsupervisor, |
CacheManager * | cachemanager, | ||
EntityManager * | entitymanager, | ||
psCharacter * | chardata, | ||
const char * | factname, | ||
InstanceID | myInstance, | ||
iSector * | room, | ||
const csVector3 & | pos, | ||
float | rotangle, | ||
int | clientnum | ||
) |
|
virtual |
int gemActor::ActiveSpellCount | ( | const csString & | name | ) |
void gemActor::AddActiveSpell | ( | ActiveSpell * | asp | ) |
bool gemActor::AddChatReport | ( | gemActor * | reporter | ) |
Adds an active report (file logging session) to this actor.
[in] | reporter | The client actor issuing /report |
|
protectedvirtual |
Reimplemented in gemNPC.
void gemActor::AttachScript | ( | ProgressionScript * | script, |
int | type | ||
) |
|
virtual |
|
virtual |
Reimplemented from gemObject.
|
virtual |
Reimplemented from gemObject.
void gemActor::CancelActiveSpellsForDeath | ( | ) |
void gemActor::CancelActiveSpellsWhichDamage | ( | ) |
|
protected |
void gemActor::Defeat | ( | ) |
void gemActor::DetachScript | ( | ProgressionScript * | script, |
int | type | ||
) |
void gemActor::FallBegan | ( | const csVector3 & | pos, |
iSector * | sector | ||
) |
Called when the object began falling - 'fallBeginning' tells where the fall started displaceY is the displacement that needs to be added to due to passing through warping portals portalSector is the final sector of the player after passing through the warping portals.
float gemActor::FallEnded | ( | const csVector3 & | pos, |
iSector * | sector | ||
) |
Called when the object has fallen down - sets its falling status to false.
ActiveSpell* gemActor::FindActiveSpell | ( | const csString & | name, |
SPELL_TYPE | type | ||
) |
int gemActor::FindAnimIndex | ( | const char * | name | ) |
gemObject* gemActor::FindNearbyActorName | ( | const char * | name | ) |
Used by chat manager to identify an npc you are near if you talk to one.
|
virtual |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
|
inlinevirtual |
|
virtual |
csPtr<PlayerGroup> gemActor::GetGroup | ( | ) |
int gemActor::GetGroupID | ( | ) |
|
inlinevirtual |
|
inline |
|
inline |
Gets the psguildmember structure refereed to this actor, if in a guild.
const char* gemActor::GetGuildName | ( | ) |
void gemActor::GetLastLocation | ( | csVector3 & | pos, |
float & | yrot, | ||
iSector *& | sector, | ||
InstanceID & | instance | ||
) |
Get the last reported location this actor was at.
|
inline |
|
virtual |
Reimplemented from gemObject.
|
inline |
const char* gemActor::GetModeStr | ( | ) |
Return a string name of the mode.
|
inline |
|
inlinevirtual |
|
inlinevirtual |
void gemActor::GetPrevTeleportLocation | ( | csVector3 & | pos, |
float & | yrot, | ||
iSector *& | sector, | ||
InstanceID & | instance | ||
) |
Get the location of the player before he was teleported.
|
inline |
|
virtual |
Reimplemented from gemObject.
bool gemActor::GetSpawnPos | ( | csVector3 & | pos, |
float & | yrot, | ||
iSector *& | sector, | ||
bool | useRange = false |
||
) |
Gets the player spawn position according to his race.
pos | A csVector where to store the player position. |
yrot | A float where to store the rotation of the player. |
sector | An iSector where to store the sector of the position the player. |
useRange | A boolean which says if we have to apply random range calculation in the positions. |
|
inline |
void gemActor::GetValidPos | ( | csVector3 & | pos, |
float & | yrot, | ||
iSector *& | sector, | ||
InstanceID & | instance | ||
) |
|
virtual |
Get the z velocity of the actor.
Reimplemented from gemObject.
|
inline |
|
inlinevirtual |
void gemActor::HandleDeath | ( | ) |
|
virtual |
Checks the attacker history to see if the attacker has actually attacked the entity.
Used to exclude from loot those who didn't actually partecipate in the attack even if they are grouped.
attacker | A pointer to the actor we are checking if it has attacked. |
bool gemActor::InGroup | ( | ) | const |
|
protected |
|
protected |
Determines the right size and height for the collider for the sprite and sets the actual position of the sprite.
|
virtual |
Check if object is inside guarded area.
Guarded are is a circle of RANGE_TO_GUARD around player and pet.
void gemActor::InvokeMovementScripts | ( | ) |
bool gemActor::IsAllowedToAttack | ( | gemObject * | target, |
csString & | msg | ||
) |
Checks if our actor can attack given target.
If not, send him some informative text message
|
inline |
|
inline |
bool gemActor::IsGroupedWith | ( | gemActor * | other, |
bool | IncludePets = false |
||
) | const |
|
inline |
bool gemActor::IsMyPet | ( | gemActor * | other | ) | const |
bool gemActor::LogChatMessage | ( | const char * | who, |
const psChatMessage & | msg | ||
) |
Adds the chat message to the history and optionally to the log file.
[in] | who | The name of the character who sent this message |
[in] | msg | The chat message |
bool gemActor::LogLine | ( | const char * | szLine | ) |
Saves a line to this actor's chat history and logs it to a file, if there are active reports.
bool gemActor::LogSystemMessage | ( | const char * | szLine | ) |
Saves a system message to this actor's chat history and logs it to a file, if there are active reports.
void gemActor::MoveToLastPos | ( | ) |
Moves player to his last reported location.
bool gemActor::MoveToSpawnPos | ( | int32_t | delay = 0 , |
csString | background = "" , |
||
csVector2 | point1 = 0 , |
||
csVector2 | point2 = 0 , |
||
csString | widget = "" |
||
) |
Moves player to his spawn position.
delay | The time to wait in the load screen even if the new position was already loaded. |
background | The background to use when the load screen is shown or if it's forced. |
point1 | Start point for animation |
point2 | Destination point for animation |
widget | The widget which will replace the normal loading one, if any is defined. |
bool gemActor::MoveToValidPos | ( | bool | force = false | ) |
Restores actor to his last valid position.
force | Force an update if set to true. |
void gemActor::MulticastDRUpdate | ( | ) |
void gemActor::ProcessStamina | ( | ) |
void gemActor::ProcessStamina | ( | const csVector3 & | velocity, |
bool | force = false |
||
) |
|
inlinevirtual |
Implements iDeathNotificationObject.
bool gemActor::RemoveActiveSpell | ( | ActiveSpell * | asp | ) |
void gemActor::RemoveAttackerHistory | ( | gemActor * | attacker | ) |
void gemActor::RemoveChatReport | ( | ) |
Removes an active report (file logging session) for this actor.
This function is invoked automatically after a specific amount of time from the report activation.
void gemActor::RemoveFromGroup | ( | ) |
void gemActor::Resurrect | ( | ) |
Reimplemented from gemObject.
|
virtual |
void gemActor::SendActiveSpells | ( | ) |
|
virtual |
|
virtual |
|
virtual |
Reimplemented in gemNPC.
void gemActor::SetAction | ( | const char * | anim, |
csTicks & | timeDelay | ||
) |
void gemActor::SetAllowedToDisconnect | ( | bool | allowed | ) |
Call this to ask the actor to set allowed to disconnect in the connected client.
void gemActor::SetAllowedToMove | ( | bool | newvalue | ) |
|
inlinevirtual |
void gemActor::SetDefaults | ( | bool | player | ) |
Set attributes back to default.
GMs use this commands to set attributes back to the default for either a player or a GM.
player | Set to true for players. False for GMs. |
bool gemActor::SetDRData | ( | psDRMessage & | drmsg | ) |
void gemActor::SetEquipment | ( | const char * | equip | ) |
|
inline |
|
protected |
Set initial attributes for GMs.
void gemActor::SetGroup | ( | PlayerGroup * | group | ) |
void gemActor::SetInstance | ( | InstanceID | worldInstance | ) |
|
virtual |
|
inline |
|
virtual |
Reimplemented from gemObject.
void gemActor::SetMasqueradeLevel | ( | int | level | ) |
bool gemActor::SetMesh | ( | const char * | meshname | ) |
void gemActor::SetMode | ( | PSCHARACTER_MODE | newmode, |
uint32_t | extraData = 0 |
||
) |
|
inline |
void gemActor::SetPosition | ( | const csVector3 & | pos, |
float | angle, | ||
iSector * | sector | ||
) |
void gemActor::SetPrevTeleportLocation | ( | const csVector3 & | pos, |
float | yrot, | ||
iSector * | sector, | ||
InstanceID | instance | ||
) |
Record the location of this actor before he was teleported.
|
inline |
void gemActor::SetSecurityLevel | ( | int | level | ) |
|
inline |
void gemActor::SetTextureParts | ( | const char * | parts | ) |
|
inline |
bool gemActor::SetupCharData | ( | ) |
void gemActor::SetViewAllObjects | ( | bool | v | ) |
|
virtual |
void gemActor::Sit | ( | ) |
Make the character sit.
void gemActor::Stand | ( | ) |
Makes the character stand up.
void gemActor::StopMoving | ( | bool | worldVel = false | ) |
void gemActor::Teleport | ( | const char * | sec, |
const csVector3 & | pos, | ||
float | yrot, | ||
InstanceID | instance, | ||
int32_t | loadDelay = 0 , |
||
csString | background = "" , |
||
csVector2 | point1 = 0 , |
||
csVector2 | point2 = 0 , |
||
csString | widget = "" |
||
) |
void gemActor::Teleport | ( | iSector * | sector, |
const csVector3 & | pos, | ||
float | yrot, | ||
InstanceID | instance, | ||
int32_t | loadDelay = 0 , |
||
csString | background = "" , |
||
csVector2 | point1 = 0 , |
||
csVector2 | point2 = 0 , |
||
csString | widget = "" |
||
) |
void gemActor::Teleport | ( | iSector * | sector, |
const csVector3 & | pos, | ||
float | yrot, | ||
int32_t | loadDelay = 0 , |
||
csString | background = "" , |
||
csVector2 | point1 = 0 , |
||
csVector2 | point2 = 0 , |
||
csString | widget = "" |
||
) |
|
inlinevirtual |
Implements iDeathNotificationObject.
|
virtual |
Reimplemented from gemObject.
void gemActor::UpdateStats | ( | ) |
Checks the vitals (hp, mana, ...) for the specific gemActor If there are updates to publish, it then uses SendStatDRMessage to inform all actors client side.
void gemActor::UpdateValidLocation | ( | const csVector3 & | pos, |
float | yrot, | ||
iSector * | sector, | ||
InstanceID | instance, | ||
bool | force = false |
||
) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Needed to force the effect of a psForcePositionMessage since sectors are tied to instances and force position messages may be lost on crash, loading failure, etc. This ensures that a DR message containing the new sector is received at least once.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
bool gemActor::nevertired |
|
protected |
|
protected |
|
protected |
|
protected |
psLinearMovement* gemActor::pcmove |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |