Planeshift
AttackPerception Class Reference

Whenever an NPC is attacked by a player, this perception is passed to the attacked npc. More...

#include <perceptions.h>

Public Member Functions

 AttackPerception (const char *n, gemNPCObject *attack)
 
virtual void ExecutePerception (NPC *npc, float weight)
 All preconditions has been checked, now excecute the perception. More...
 
virtual gemNPCObjectGetTarget ()
 Some perception has a target/source. More...
 
virtual PerceptionMakeCopy ()
 Make a copy of this perception. More...
 
- Public Member Functions inherited from Perception
virtual bool GetLocation (csVector3 &pos, iSector *&sector)
 Get a location assosiated with the perception. More...
 
virtual const csString & GetName () const
 Get the name of the perception. More...
 
virtual float GetRadius () const
 Get the radius of the perception. More...
 
const csString & GetType () const
 Get the type of the perception. More...
 
 Perception (const char *name)
 Constructor. More...
 
 Perception (const char *name, const char *type)
 Constructor. More...
 
void SetType (const char *type)
 Set the type of the perception. More...
 
virtual bool ShouldReact (Reaction *reaction, NPC *npc)
 Check if this perception should react to a reaction. More...
 
virtual csString ToString (NPC *npc)
 Get a text description of the perception. More...
 
virtual ~Perception ()
 Destructor. More...
 

Protected Attributes

csWeakRef< gemNPCActorattacker
 
- Protected Attributes inherited from Perception
csString name
 The name of this perception. More...
 
csString type
 Type used by perceptions. Usally they correspond to the same value in a reaction. More...
 

Detailed Description

Whenever an NPC is attacked by a player, this perception is passed to the attacked npc.

The npc should use this to build an initial hate list for the player and his group (if any). If the designer wants to cheat, he can start attacking back on this event instead of on first damage, and save a few seconds in response time.

Definition at line 308 of file perceptions.h.

Constructor & Destructor Documentation

AttackPerception::AttackPerception ( const char *  n,
gemNPCObject attack 
)
inline

Definition at line 314 of file perceptions.h.

Member Function Documentation

virtual void AttackPerception::ExecutePerception ( NPC npc,
float  weight 
)
virtual

All preconditions has been checked, now excecute the perception.

Parameters
npcThe target of the percpetion.
weightIndicate how much the HateList of the npc should be changed. Value comes from the reaction.

Reimplemented from Perception.

virtual gemNPCObject* AttackPerception::GetTarget ( )
inlinevirtual

Some perception has a target/source.

See also
DamagePerception
Returns
the target of this perception.

Reimplemented from Perception.

Definition at line 319 of file perceptions.h.

virtual Perception* AttackPerception::MakeCopy ( )
virtual

Make a copy of this perception.

Returns
the copy.

Reimplemented from Perception.

Member Data Documentation

csWeakRef<gemNPCActor> AttackPerception::attacker
protected

Definition at line 311 of file perceptions.h.


The documentation for this class was generated from the following file: