Dawn of Light - Class documentation 2900
This is the Dawn of Light project
DOL.GS.GameNPC Class Reference

This class is the baseclass for all Non Player Characters like Monsters, Merchants, Guards, Steeds ... More...

Inheritance diagram for DOL.GS.GameNPC:
DOL.GS.GameLiving DOL.GS.GameObject DOL.GS.Point3D DOL.GS.Point2D DOL.GS.IPoint3D DOL.GS.IPoint2D DOL.GS.IPoint2D DOL.GS.BaseProtector DOL.GS.Blacksmith DOL.GS.CLWeaponNPC DOL.GS.CraftNPC DOL.GS.EmblemNPC DOL.GS.Enchanter DOL.GS.FaceCustomiser DOL.GS.GameConsignmentMerchant DOL.GS.GameDecoy DOL.GS.GameDragon DOL.GS.GameGuard DOL.GS.GameHastener DOL.GS.GameHealer DOL.GS.GameMerchant DOL.GS.GameMovingObject DOL.GS.GamePet DOL.GS.GameTaxi DOL.GS.GameTeleporter DOL.GS.GameTrainer DOL.GS.GameTrainingDummy DOL.GS.GameVaultKeeper DOL.GS.GuildRegistrar DOL.GS.Keeps.FrontiersPortalStone.TeleporterEffect DOL.GS.Keeps.GameKeepGuard DOL.GS.KingNPC DOL.GS.MarketExplorer DOL.GS.NameRegistrar DOL.GS.Recharger DOL.GS.Researcher DOL.GS.RoyalTreasuryClerk DOL.GS.TaskMaster DOL.GS.ThroneRoomTeleporter

List of all members.

Classes

class  ArriveAtTargetAction
 Delayed action that fires an event when an NPC arrives at its target. More...
class  RestoreHeadingAction
 Restores the NPC heading after some time. More...
class  SpellAction
 The spell action of this living. More...
class  WaypointDelayAction
 Delays movement to the next waypoint. More...

Public Types

enum  eFormationType { Line, Triangle, Protect }
 Used for that formation type if a GameNPC has a formation. More...
enum  eFlags {
  GHOST = 0x01, STEALTH = 0x02, DONTSHOWNAME = 0x04, CANTTARGET = 0x08,
  PEACE = 0x10, FLYING = 0x20, TORCH = 0x40, STATUE = 0x80,
  SWIMMING = 0x100
}
 Various flags for this npc. More...
enum  eAmbientTrigger {
  spawning, dieing, aggroing, fighting,
  roaming, killing, moving, interact
}
 The possible triggers for GameNPC ambient actions. More...

Public Member Functions

virtual void AutoSetStats ()
override void ChangeBaseStat (eStat stat, short val)
 Change a stat value (delegate to GameNPC)
virtual void TurnTo (int tx, int ty)
 Turns the npc towards a specific spot.
virtual void TurnTo (int tx, int ty, bool sendUpdate)
 Turns the npc towards a specific spot optionally sends update to client.
virtual void TurnTo (ushort heading)
 Turns the npc towards a specific heading.
virtual void TurnTo (ushort heading, bool sendUpdate)
 Turns the npc towards a specific heading optionally sends update to client.
virtual void TurnTo (GameObject target)
 Turns the NPC towards a specific gameObject which can be anything ... a player, item, mob, npc ...
virtual void TurnTo (GameObject target, bool sendUpdate)
 Turns the NPC towards a specific gameObject which can be anything ... a player, item, mob, npc ... optionally sends update to client.
virtual void TurnTo (GameObject target, int duration)
 Turns the NPC towards a specific gameObject which can be anything ... a player, item, mob, npc ... and turn back after specified duration.
virtual void CancelWalkToTimer ()
virtual void WalkTo (int targetX, int targetY, int targetZ, short speed)
 Walk to a certain spot at a given speed.
virtual void WalkTo (IPoint3D target, short speed)
 Walk to a certain spot at a given speed.
virtual void WalkToSpawn ()
 Walk to the spawn point.
virtual void CancelWalkToSpawn ()
 Walk to the spawn point.
virtual void WalkToSpawn (short speed)
 Walk to the spawn point with specified speed.
virtual void Walk (short speed)
 This function is used to start the mob walking. It will walk in the heading direction until the StopMovement function is called.
virtual void StopMoving ()
 Stops the movement of the mob.
virtual void StopMovingAt (IPoint3D target)
 Stops the movement of the mob and forcibly moves it to the given target position.
virtual void Follow (GameObject target, int minDistance, int maxDistance)
 Follow given object.
virtual void StopFollowing ()
 Stop following.
virtual void FollowTargetInRange ()
 Will be called if follow mode is active and we reached the follow target.
override void DisableTurning (bool add)
 Disables the turning for this living.
void MoveOnPath (short speed)
 let the npc travel on its path
void StopMovingOnPath ()
 Stop moving on path.
virtual void LoadEquipmentTemplateFromDatabase (string equipmentTemplateID)
 Loads the equipment template of this npc.
override void LoadFromDatabase (DataObject obj)
 Load a npc from the npc template.
override void DeleteFromDatabase ()
 Deletes the mob from the database.
override void SaveIntoDatabase ()
 Saves a mob into the db if it exists, it is updated, else it creates a new object in the DB.
virtual void LoadTemplate (INpcTemplate template)
 Load a NPC template onto this NPC.
override void SwitchWeapon (eActiveWeaponSlot slot)
 Switches the active weapon to another one.
void UpdateNPCEquipmentAppearance ()
 Updates the items on a character.
void AddQuestToGive (Type questType)
 Adds a scripted quest type to the npc questlist.
bool RemoveQuestToGive (Type questType)
 removes a scripted quest from this npc
int CanGiveQuest (Type questType, GamePlayer player)
 Check if the npc can give the specified quest to a player Used for scripted quests.
eQuestIndicator SetQuestIndicator (Type questType, GamePlayer player)
 Return the proper indicator for quest TODO: check when finish indicator is set when you have done the NPC quest when you are at the last step.
virtual bool ShowQuestIndicator (GamePlayer player)
 Should the NPC show a quest indicator, this can be overriden for custom handling Checks both scripted and data quests.
bool CanGiveOneQuest (GamePlayer player)
 Check if the npc can give one quest to a player Checks both scripted and data quests.
bool GiveQuest (Type questType, GamePlayer player, int startStep)
 Give a quest a to specific player used for scripted quests.
virtual bool RiderMount (GamePlayer rider, bool forced)
 This function is called when a rider mounts this npc Since only players can ride NPC's you should use the GamePlayer.MountSteed function instead to make sure all callbacks are called correctly.
virtual bool RiderMount (GamePlayer rider, bool forced, int slot)
 This function is called when a rider mounts this npc Since only players can ride NPC's you should use the GamePlayer.MountSteed function instead to make sure all callbacks are called correctly.
virtual bool RiderDismount (bool forced, GamePlayer player)
 Called to dismount a rider from this npc. Since only players can ride NPC's you should use the GamePlayer.MountSteed function instead to make sure all callbacks are called correctly.
int GetFreeArrayLocation ()
 Get a free array location on the NPC.
int RiderArrayLocation (GamePlayer player)
 Get the riders array location.
int RiderSlot (GamePlayer player)
 Get the riders slot on the npc.
virtual void BroadcastUpdate ()
 Broadcasts the npc to all players around.
void NPCUpdatedCallback ()
 callback that npc was updated to the world so it must be visible to at least one player
override bool AddToWorld ()
 Adds the npc to the world.
override bool RemoveFromWorld ()
 Removes the npc from the world.
virtual bool MoveInRegion (ushort regionID, int x, int y, int z, ushort heading, bool forceMove)
 Move an NPC within the same region without removing from world.
override void Delete ()
 Marks this object as deleted!
virtual ABrain SetOwnBrain (ABrain brain)
 Sets the NPC own brain.
virtual void AddBrain (ABrain newBrain)
 Adds a temporary brain to Npc, last added brain is active.
virtual bool RemoveBrain (ABrain removeBrain)
 Removes a temporary brain from Npc.
virtual string GetAggroLevelString (GamePlayer player, bool firstLetterUppercase)
 How friendly this NPC is to player.
override string GetPronoun (int form, bool capitalize)
 Gets the proper pronoun including capitalization.
override IList GetExamineMessages (GamePlayer player)
 Adds messages to ArrayList which are sent when object is targeted.
override bool Interact (GamePlayer player)
 This function is called from the ObjectInteractRequestHandler.
override bool WhisperReceive (GameLiving source, string text)
 ToDo.
virtual void SayTo (GamePlayer target, string message, bool announce=true)
 Format "say" message and send it to target in popup window.
virtual void SayTo (GamePlayer target, eChatLoc loc, string message, bool announce=true)
 Format "say" message and send it to target.
override void StartAttack (GameObject target)
 Starts a melee attack on a target.
void NPCStartAttackCheckLOS (GamePlayer player, ushort response, ushort targetOID)
 We only attack if we have LOS.
virtual void ContinueStartAttack (GameObject target)
override void RangedAttackFinished ()
 When a ranged attack is finished this is called in order to check LOS for next attack.
void NPCStopRangedAttackCheckLOS (GamePlayer player, ushort response, ushort targetOID)
 If we don't have LOS we stop attack.
override void Die (GameObject killer)
 Called when this living dies.
override eDamageType AttackDamageType (InventoryItem weapon)
 Returns the damage type of the current attack.
override int CalculateLeftHandSwingCount ()
 Calculates how many times left hand swings.
void SwitchToMelee (GameObject target)
 Method to switch the npc to Melee attacks.
void SwitchToRanged (GameObject target)
 Method to switch the guard to Ranged attacks.
virtual void StartRespawn ()
 Starts the Respawn Timer.
override int AttackCriticalChance (InventoryItem weapon)
 The chance for a critical hit.
virtual void HoldAttack ()
 Stop attacking and following, but stay in attack mode (e.g. in order to cast a spell instead).
virtual void ContinueAttack (GameObject target)
 Continue a previously started attack.
override void StopAttack ()
 Stops all attack actions, including following target.
virtual void DropLoot (GameObject killer)
 This method is called to drop loot after this mob dies.
override void EnemyHealed (GameLiving enemy, GameObject healSource, GameLiving.eHealthChangeType changeType, int healAmount)
 The enemy is healed, so we add to the xp gainers list.
override void OnAfterSpellCastSequence (ISpellHandler handler)
 Callback after spell execution finished and next spell can be processed.
virtual void CastSpell (Spell spell, SpellLine line, bool checkLOS)
 Cast a spell, with optional LOS check.
override void CastSpell (Spell spell, SpellLine line)
 Cast a spell with LOS check to a player.
void StartSpellAttackCheckLOS (GamePlayer player, ushort response, ushort targetOID)
override void Notify (DOLEvent e, object sender, EventArgs args)
 Handle event notifications.
void FireAmbientSentence (eAmbientTrigger trigger, GameLiving living=null)
 Handle triggers for ambient sentences.
virtual bool AddControlledNpc (IControlledBrain controlledNpc)
 Adds a pet to the current array of pets.
virtual bool RemoveControlledNpc (IControlledBrain controlledNpc)
 Removes the brain from.
virtual bool IsFriend (GameNPC npc)
 Whether this NPC is a friend or not.
GameNPC Copy ()
GameNPC Copy (GameNPC copyTarget)
 Create a copy of the GameNPC.
 GameNPC ()
 Constructs a NPC.
 GameNPC (INpcTemplate template)
 create npc from template

Public Attributes

const int CONST_WALKTOTOLERANCE = 25
 Constant for determining if already at a point.
GamePlayer[] Riders
 Holds the rider of this NPC as weak reference.
IList< MobXAmbientBehaviour > ambientTexts
 The ambient texts.
const string CHARMED_TICK_PROP = "CharmedTick"
 The property that holds charmed tick if any.
const int CHARMED_NOEXP_TIMEOUT = 60000
 The duration of no exp after charmed, in game ticks.
const string Last_LOS_Target_Property = "last_LOS_checkTarget"
const string Last_LOS_Tick_Property = "last_LOS_checkTick"

Protected Member Functions

override void UpdateTickSpeed ()
 Updates the tick speed for this living.
virtual int FollowTimerCallback (RegionTimer callingTimer)
 Keep following a specific object at a max distance.
void OnArriveAtWaypoint (DOLEvent e, object n, EventArgs args)
 decides what to do on reached waypoint in path
AbstractQuest HasQuest (Type questType)
 Checks if this npc already has a specified quest used for scripted quests.
virtual void BuildAmbientTexts ()
 Fill the ambient text list for this NPC.
override bool OnInterruptTick (GameLiving attacker, AttackData.eAttackType attackType)
 If npcs cant move, they cant be interupted from range attack.
virtual int RespawnTimerCallback (RegionTimer respawnTimer)
 The callback that will respawn this mob.
override int HealthRegenerationTimerCallback (RegionTimer selfRegenerationTimer)
 Callback timer for health regeneration.
virtual void BroadcastLoot (ArrayList dropMessages)
 Broadcast loot to the raid.

Protected Attributes

byte m_size
 Holds the size of the NPC.
eFlags m_flags
 Holds various flags of this npc.
Point3D m_spawnPoint
 Spawn point.
ushort m_spawnHeading
 Spawn Heading.
string m_packageID
 package ID defined form this NPC
volatile uint m_lastUpdateTickCount = uint.MinValue
 The last time this NPC sent the 0x09 update packet.
volatile uint m_lastVisibleToPlayerTick = uint.MinValue
 The last time this NPC was actually updated to at least one player.
PathPoint m_currentWayPoint = null
 Stores the currentwaypoint that npc has to wander to.
short m_pathingNormalSpeed
 Stores the speed for traveling on path.
int m_maxdistance
int m_roamingRange
int m_tetherRange
ArriveAtTargetAction m_arriveAtTargetAction
 Timer to be set if an OnArriveAtTarget handler is set before calling the WalkTo function.
WeakReference m_followTarget
 Timer to be set if an OnCloseToTarget handler is set before calling the WalkTo function.
int m_followMaxDist
 Max range to keep following.
int m_followMinDist
 Min range to keep to the target.
RegionTimer m_followTimer
 Timer with purpose of follow updating.
const int MINHEALTHPERCENTFORRANGEDATTACK = 70
 At what health percent will npc give up range attack and rush the attacker.
const string RESTORE_HEADING_ACTION_PROP = "NpcRestoreHeadingAction"
 The property used to store the NPC heading restore action.
bool m_isReturningHome = false
bool m_IsMovingOnPath = false
 Stores if npc moving on path.
string m_equipmentTemplateID
 Equipment templateID.
readonly ArrayList m_questListToGive = new ArrayList()
 Holds all the quests this npc can give to players.
GameNPC m_teleporterIndicator = null
ABrain m_ownBrain
 Holds the own NPC brain.
GameObject m_targetLOSObject = null
eDamageType m_meleeDamageType = eDamageType.Slash
 Stores the melee damage type of this NPC.
byte m_evadeChance
 Stores the NPC evade chance.
byte m_blockChance
 Stores the NPC block chance.
byte m_parryChance
 Stores the NPC parry chance.
byte m_leftHandSwingChance
 Stores the NPC left hand swing chance.
int m_respawnInterval
 The time to wait before each mob respawn.
RegionTimer m_respawnTimer
 A timer that will respawn this mob.
readonly object m_respawnTimerLock = new object()
 The sync object for respawn timer modifications.

Static Protected Attributes

static readonly string FOLLOW_TARGET_IN_RANGE = "FollowTargetInRange"
 Property entry on follow timer, wether the follow target is in range.
static readonly int MIN_ALLOWED_FOLLOW_DISTANCE = 100
 Minimum allowed attacker follow distance to avoid issues with client / server resolution (herky jerky motion)
static readonly int MIN_ALLOWED_PET_FOLLOW_DISTANCE = 90
 Minimum allowed pet follow distance.

Properties

byte FormationSpacing [get, set]
 The Minions's x-offset from it's commander.
eFormationType Formation [get, set]
 How the minions line up with the commander.
byte Size [get, set]
 Gets or sets the size of the npc.
override ushort Model [get, set]
 Gets or sets the model of this npc.
override ushort Heading [get, set]
 Gets or sets the heading of this NPC.
override byte Level [get, set]
 Gets or sets the level of this NPC.
override int EffectiveLevel [get]
 Gets or Sets the effective level of the Object.
override eRealm Realm [get, set]
 Gets or sets the Realm of this NPC.
override string Name [get, set]
 Gets or sets the name of this npc.
override string GuildName [get, set]
 Gets or sets the guild name.
Faction Faction [get, set]
 Gets the Faction of the NPC.
ArrayList LinkedFactions [get, set]
 The linked factions for this NPC.
bool IsConfused [get, set]
 Is this NPC currently confused.
ushort BodyType [get, set]
 The NPC's body type.
ushort HouseNumber [get, set]
 The NPC's current house.
virtual short Constitution [get, set]
 Gets NPC's constitution.
virtual short Dexterity [get, set]
 Gets NPC's dexterity.
virtual short Strength [get, set]
 Gets NPC's strength.
virtual short Quickness [get, set]
 Gets NPC's quickness.
virtual short Intelligence [get, set]
 Gets NPC's intelligence.
virtual short Piety [get, set]
 Gets NPC's piety.
virtual short Empathy [get, set]
 Gets NPC's empathy.
virtual short Charisma [get, set]
 Gets NPC's charisma.
string PackageID [get, set]
virtual eFlags Flags [get, set]
 Gets or Sets the flags of this npc.
override bool IsUnderwater [get]
 Checks if object is underwater.
virtual bool IsVisibleToPlayers [get]
 Shows wether any player sees that mob we dont need to calculate things like AI if mob is in no way visible to at least one player.
virtual Point3D SpawnPoint [get, set]
 Gets or sets the spawnposition of this npc.
virtual int SpawnX [get, set]
 Gets or sets the spawnposition of this npc.
virtual int SpawnY [get, set]
 Gets or sets the spawnposition of this npc.
virtual int SpawnZ [get, set]
 Gets or sets the spawnposition of this npc.
virtual ushort SpawnHeading [get, set]
 Gets or sets the spawnheading of this npc.
override short CurrentSpeed [set]
 Gets or sets the current speed of the npc.
short PathingNormalSpeed [get, set]
 Gets sets the speed for traveling on path.
override int X [get]
 Gets the current X of this living. Don't modify this property to try to change position of the mob while active. Use the MoveTo function instead.
override int Y [get]
 Gets the current Y of this NPC. Don't modify this property to try to change position of the mob while active. Use the MoveTo function instead.
override int Z [get]
 Gets the current Z of this NPC. Don't modify this property to try to change position of the mob while active. Use the MoveTo function instead.
override bool IsStealthed [get]
 The stealth state of this NPC.
int MaxDistance [get, set]
 The Mob's max distance from its spawn before return automatically if MaxDistance > 0 ... the amount is the normal value if MaxDistance = 0 ... no maxdistance check if MaxDistance less than 0 ... the amount is calculated in procent of the value and the aggrorange (in StandardMobBrain)
int RoamingRange [get, set]
 radius for roaming
int TetherRange [get, set]
 The mob's tether range; if mob is pulled farther than this distance it will return to its spawn point. if TetherRange > 0 ... the amount is the normal value if TetherRange less or equal 0 ... no tether check.
bool IsOutOfTetherRange [get]
 True, if NPC is out of tether range, false otherwise; if no tether range is specified, this will always return false.
string PathID [get, set]
virtual IPoint3D TargetPosition [get, set]
 The target position.
override GameObject TargetObject [get, set]
 The target object.
bool IsAtTargetPosition [get]
 True if the mob is at its target position, else false.
uint LastUpdateTickCount [get]
 Gets the last time this mob was updated.
uint LastVisibleToPlayersTickCount [get]
 Gets the last this this NPC was actually update to at least one player.
GameObject CurrentFollowTarget [get]
 Gets the NPC current follow target.
PathPoint CurrentWayPoint [get, set]
 Gets sets the currentwaypoint that npc has to wander to.
bool IsReturningHome [get, set]
 Is the NPC returning home, if so, we don't want it to think.
bool IsReturningToSpawnPoint [get, set]
 Whether or not the NPC is on its way back to the spawn point. [Aredhel: I decided to add this property in order not to mess with SMB and IsReturningHome. Also, to prevent outside classes from interfering the setter is now protected.].
bool IsMovingOnPath [get]
 Gets if npc moving on path.
NpcTemplate NPCTemplate [get, set]
 The NPC's template.
bool LoadedFromScript [get, set]
string EquipmentTemplateID [get, set]
 The equipment template id of this npc.
IList QuestListToGive [get]
 Gets the questlist of this player.
virtual bool ShowTeleporterIndicator [get]
 Should this NPC have an associated teleporter indicator.
virtual int MAX_PASSENGERS [get]
 The maximum passengers the NPC can take.
virtual int REQUIRED_PASSENGERS [get]
 The minimum number of passengers required to move.
virtual int SLOT_OFFSET [get]
 The slot offset for this NPC.
GamePlayer[] CurrentRiders [get]
 Gets a list of the current riders.
override Region CurrentRegion [get, set]
 Gets or Sets the current Region of the Object.
object BrainSync [get]
 Gets the brain sync object.
ABrain Brain [get]
 Gets the current brain of this NPC.
override int Health [get, set]
 Gets/sets the object health.
override int Mana [get]
 npcs can always have mana to cast
override int MaxMana [get]
 The Max Mana for this NPC.
override int Concentration [get]
 The Concentration for this NPC.
virtual bool IsWorthReward [get, set]
 Tests if this MOB should give XP and loot based on the XPGainers.
virtual eDamageType MeleeDamageType [get, set]
 Gets or sets the melee damage type of this NPC.
virtual byte EvadeChance [get, set]
 Gets or sets the NPC evade chance.
virtual byte BlockChance [get, set]
 Gets or sets the NPC block chance.
virtual byte ParryChance [get, set]
 Gets or sets the NPC parry chance.
byte LeftHandSwingChance [get, set]
 Gets or sets the NPC left hand swing chance.
override bool CanUseLefthandedWeapon [get]
 Checks whether Living has ability to use lefthanded weapons.
virtual int RespawnInterval [get, set]
 The Respawn Interval of this mob in milliseconds.
override bool IsAlive [get]
 True if NPC is alive, else false.
bool IsRespawning [get]
 True, if the mob is respawning, else false.
override bool CanCastHarmfulSpells [get]
 Whether or not the NPC can cast harmful spells at the moment.
override IList< SpellHarmfulSpells [get]
IList Spells [get, set]
 property of spell array of NPC
IList Styles [get, set]
 The Styles for this NPC.
Dictionary< string, AbilityAbilities [get]
 The Abilities for this NPC.
SpellAction SpellTimer [get, set]
 The timer that controls an npc's spell casting.
override IControlledBrain ControlledBrain [get]
 Gets the controlled object of this NPC.
IControlledBrain[] ControlledNpcList [get]
 Gets the controlled array of this NPC.
virtual bool IsAvailable [get]
 Whether this NPC is available to add on a fight.
virtual bool IsAggressive [get]
 Whether this NPC is aggressive.
override eGender Gender [get, set]
 Gender of this NPC.

Detailed Description

This class is the baseclass for all Non Player Characters like Monsters, Merchants, Guards, Steeds ...


Member Enumeration Documentation

The possible triggers for GameNPC ambient actions.

Various flags for this npc.

Enumerator:
GHOST 

The npc is translucent (like a ghost)

STEALTH 

The npc is stealthed (nearly invisible, like a stealthed player; new since 1.71)

DONTSHOWNAME 

The npc doesn't show a name above its head but can be targeted.

CANTTARGET 

The npc doesn't show a name above its head and can't be targeted.

PEACE 

Not in nearest enemyes if different vs player realm, but can be targeted if model support this.

FLYING 

The npc is flying (z above ground permitted)

TORCH 

npc's torch is lit

STATUE 

npc is a statue (no idle animation, no target...)

SWIMMING 

npc is swimming

Used for that formation type if a GameNPC has a formation.


Constructor & Destructor Documentation

DOL.GS.GameNPC.GameNPC ( )

Constructs a NPC.

DOL.GS.GameNPC.GameNPC ( INpcTemplate  template)

create npc from template

Parameters:
templatetemplate of generator

Member Function Documentation

virtual void DOL.GS.GameNPC.AddBrain ( ABrain  newBrain) [virtual]

Adds a temporary brain to Npc, last added brain is active.

Parameters:
newBrain
virtual bool DOL.GS.GameNPC.AddControlledNpc ( IControlledBrain  controlledNpc) [virtual]

Adds a pet to the current array of pets.

Parameters:
controlledNpcThe brain to add to the list
Returns:
Whether the pet was added or not

Reimplemented in DOL.GS.CommanderPet.

void DOL.GS.GameNPC.AddQuestToGive ( Type  questType)

Adds a scripted quest type to the npc questlist.

Parameters:
questTypeThe quest type to add
Returns:
true if added, false if the npc has already the quest!
override int DOL.GS.GameNPC.AttackCriticalChance ( InventoryItem  weapon) [virtual]

The chance for a critical hit.

Reimplemented from DOL.GS.GameLiving.

override eDamageType DOL.GS.GameNPC.AttackDamageType ( InventoryItem  weapon) [virtual]

Returns the damage type of the current attack.

Parameters:
weaponattack weapon

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GamePet.

virtual void DOL.GS.GameNPC.BroadcastLoot ( ArrayList  dropMessages) [protected, virtual]

Broadcast loot to the raid.

Parameters:
dropMessagesList of drop messages to broadcast.
virtual void DOL.GS.GameNPC.BroadcastUpdate ( ) [virtual]

Broadcasts the npc to all players around.

virtual void DOL.GS.GameNPC.BuildAmbientTexts ( ) [protected, virtual]

Fill the ambient text list for this NPC.

Reimplemented in DOL.GS.TurretPet, DOL.GS.GamePet, and DOL.GS.TheurgistPet.

override int DOL.GS.GameNPC.CalculateLeftHandSwingCount ( ) [virtual]

Calculates how many times left hand swings.

Returns:

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GamePet, and DOL.GS.NecromancerPet.

virtual void DOL.GS.GameNPC.CancelWalkToSpawn ( ) [virtual]

Walk to the spawn point.

bool DOL.GS.GameNPC.CanGiveOneQuest ( GamePlayer  player)

Check if the npc can give one quest to a player Checks both scripted and data quests.

Parameters:
playerThe player to check
Returns:
true if yes, false if the npc can give any quest
int DOL.GS.GameNPC.CanGiveQuest ( Type  questType,
GamePlayer  player 
)

Check if the npc can give the specified quest to a player Used for scripted quests.

Parameters:
questTypeThe type of the quest
playerThe player who search a quest
Returns:
the number of time the quest can be done again
virtual void DOL.GS.GameNPC.CastSpell ( Spell  spell,
SpellLine  line,
bool  checkLOS 
) [virtual]

Cast a spell, with optional LOS check.

Parameters:
spell
line
checkLOS
override void DOL.GS.GameNPC.CastSpell ( Spell  spell,
SpellLine  line 
) [virtual]

Cast a spell with LOS check to a player.

Parameters:
spell
line

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.NecromancerPet.

override void DOL.GS.GameNPC.ChangeBaseStat ( eStat  stat,
short  val 
) [virtual]

Change a stat value (delegate to GameNPC)

Parameters:
statThe stat to change
valThe new value

Reimplemented from DOL.GS.GameLiving.

virtual void DOL.GS.GameNPC.ContinueAttack ( GameObject  target) [virtual]

Continue a previously started attack.

GameNPC DOL.GS.GameNPC.Copy ( GameNPC  copyTarget)

Create a copy of the GameNPC.

Parameters:
copyTargetA GameNPC to copy this GameNPC to (can be null)
Returns:
The GameNPC this GameNPC was copied to
override void DOL.GS.GameNPC.Delete ( ) [virtual]

Marks this object as deleted!

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.Keeps.GameKeepGuard.

override void DOL.GS.GameNPC.DeleteFromDatabase ( ) [virtual]

Deletes the mob from the database.

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.GameMerchant, and DOL.GS.Keeps.GameKeepGuard.

override void DOL.GS.GameNPC.Die ( GameObject  killer) [virtual]
override void DOL.GS.GameNPC.DisableTurning ( bool  add) [virtual]

Disables the turning for this living.

Parameters:
add

Reimplemented from DOL.GS.GameLiving.

virtual void DOL.GS.GameNPC.DropLoot ( GameObject  killer) [virtual]

This method is called to drop loot after this mob dies.

Parameters:
killerThe killer

Reimplemented in DOL.GS.GameGuard.

override void DOL.GS.GameNPC.EnemyHealed ( GameLiving  enemy,
GameObject  healSource,
GameLiving.eHealthChangeType  changeType,
int  healAmount 
)

The enemy is healed, so we add to the xp gainers list.

Parameters:
enemy
healSource
changeType
healAmount
void DOL.GS.GameNPC.FireAmbientSentence ( eAmbientTrigger  trigger,
GameLiving  living = null 
)

Handle triggers for ambient sentences.

Parameters:
actionThe trigger action
npcThe NPC to handle the trigger for
virtual void DOL.GS.GameNPC.Follow ( GameObject  target,
int  minDistance,
int  maxDistance 
) [virtual]

Follow given object.

Parameters:
targetTarget to follow
minDistanceMin distance to keep to the target
maxDistanceMax distance to keep following
virtual void DOL.GS.GameNPC.FollowTargetInRange ( ) [virtual]

Will be called if follow mode is active and we reached the follow target.

virtual int DOL.GS.GameNPC.FollowTimerCallback ( RegionTimer  callingTimer) [protected, virtual]

Keep following a specific object at a max distance.

virtual string DOL.GS.GameNPC.GetAggroLevelString ( GamePlayer  player,
bool  firstLetterUppercase 
) [virtual]

How friendly this NPC is to player.

Parameters:
playerGamePlayer that is examining this object
firstLetterUppercase
Returns:
aggro state as string

Reimplemented in DOL.GS.Researcher.

override IList DOL.GS.GameNPC.GetExamineMessages ( GamePlayer  player) [virtual]

Adds messages to ArrayList which are sent when object is targeted.

Parameters:
playerGamePlayer that is examining this object
Returns:
list with string messages

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.Researcher, DOL.GS.Blacksmith, DOL.GS.Enchanter, DOL.GS.GameTrainer, DOL.GS.GameHastener, DOL.GS.GameHealer, DOL.GS.GameHousingHastener, DOL.GS.NameRegistrar, DOL.GS.Recharger, DOL.GS.GameVaultKeeper, DOL.GS.GameGuard, DOL.GS.GameMerchant, DOL.GS.Keeps.GameKeepGuard, and DOL.GS.Keeps.FrontierHastener.

int DOL.GS.GameNPC.GetFreeArrayLocation ( )

Get a free array location on the NPC.

Returns:
override string DOL.GS.GameNPC.GetPronoun ( int  form,
bool  capitalize 
) [virtual]

Gets the proper pronoun including capitalization.

Parameters:
form1=his; 2=him; 3=he
capitalize
Returns:

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.Keeps.GameKeepGuard.

bool DOL.GS.GameNPC.GiveQuest ( Type  questType,
GamePlayer  player,
int  startStep 
)

Give a quest a to specific player used for scripted quests.

Parameters:
questTypeThe quest type
playerThe player that gets the quest
startStepThe starting quest step
Returns:
true if added, false if the player do already the quest!
AbstractQuest DOL.GS.GameNPC.HasQuest ( Type  questType) [protected]

Checks if this npc already has a specified quest used for scripted quests.

Parameters:
questTypeThe quest type
Returns:
the quest if the npc have the quest or null if not
override int DOL.GS.GameNPC.HealthRegenerationTimerCallback ( RegionTimer  selfRegenerationTimer) [protected, virtual]

Callback timer for health regeneration.

Parameters:
selfRegenerationTimerthe regeneration timer
Returns:
the new interval

Reimplemented from DOL.GS.GameLiving.

virtual void DOL.GS.GameNPC.HoldAttack ( ) [virtual]

Stop attacking and following, but stay in attack mode (e.g. in order to cast a spell instead).

override bool DOL.GS.GameNPC.Interact ( GamePlayer  player) [virtual]

This function is called from the ObjectInteractRequestHandler.

Parameters:
playerGamePlayer that interacts with this object
Returns:
false if interaction is prevented

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.Arbiter, DOL.GS.ArtifactCreditMerchant, DOL.GS.ArtifactScholar, DOL.GS.Researcher, DOL.GS.Scholar, DOL.GS.AncientBoundDjinn, DOL.GS.SummonedDjinn, DOL.GS.Blacksmith, DOL.GS.GameConsignmentMerchant, DOL.GS.CraftNPC, DOL.GS.EmblemNPC, DOL.GS.Enchanter, DOL.GS.FaceCustomiser, DOL.GS.KingNPC, DOL.GS.GameTrainer, DOL.GS.GuildRegistrar, DOL.GS.GameHastener, DOL.GS.GameHealer, DOL.GS.MarketExplorer, DOL.GS.NameRegistrar, DOL.GS.Recharger, DOL.GS.RoyalTreasuryClerk, DOL.GS.TaskMaster, DOL.GS.AlbionSITeleporter, DOL.GS.AlbionTeleporter, DOL.GS.HiberniaSITeleporter, DOL.GS.HiberniaTeleporter, DOL.GS.MidgardSITeleporter, DOL.GS.MidgardTeleporter, DOL.GS.SimpleTeleporter, DOL.GS.ThroneRoomTeleporter, DOL.GS.GameVaultKeeper, DOL.GS.GameBoat, DOL.GS.GameMerchant, DOL.GS.GameItemCurrencyMerchant, DOL.GS.GameSiegeWeapon, DOL.GS.GameTeleporter, DOL.GS.GameTrainingDummy, DOL.GS.Keeps.FrontierHastener, DOL.GS.Keeps.GuardLord, DOL.GS.Keeps.MissionMaster, DOL.GS.Trainer.AcolyteTrainer, DOL.GS.Trainer.AlbionMaulerTrainer, DOL.GS.Trainer.AlbionRogueTrainer, DOL.GS.Trainer.ArmsmanTrainer, DOL.GS.Trainer.CabalistTrainer, DOL.GS.Trainer.ClericTrainer, DOL.GS.Trainer.DiscipleTrainer, DOL.GS.Trainer.ElementalistTrainer, DOL.GS.Trainer.FighterTrainer, DOL.GS.Trainer.FriarTrainer, DOL.GS.Trainer.HereticTrainer, DOL.GS.Trainer.InfiltratorTrainer, DOL.GS.Trainer.MageTrainer, DOL.GS.Trainer.MercenaryTrainer, DOL.GS.Trainer.MinstrelTrainer, DOL.GS.Trainer.NecromancerTrainer, DOL.GS.Trainer.PaladinTrainer, DOL.GS.Trainer.ReaverTrainer, DOL.GS.Trainer.ScoutTrainer, DOL.GS.Trainer.SorcererTrainer, DOL.GS.Trainer.TheurgistTrainer, DOL.GS.Trainer.WizardTrainer, DOL.GS.Trainer.AnimistTrainer, DOL.GS.Trainer.BainsheeTrainer, DOL.GS.Trainer.BardTrainer, DOL.GS.Trainer.BlademasterTrainer, DOL.GS.Trainer.ChampionTrainer, DOL.GS.Trainer.DruidTrainer, DOL.GS.Trainer.EldritchTrainer, DOL.GS.Trainer.EnchanterTrainer, DOL.GS.Trainer.ForesterTrainer, DOL.GS.Trainer.GuardianTrainer, DOL.GS.Trainer.HeroTrainer, DOL.GS.Trainer.HiberniaMaulerTrainer, DOL.GS.Trainer.MagicianTrainer, DOL.GS.Trainer.MentalistTrainer, DOL.GS.Trainer.NaturalistTrainer, DOL.GS.Trainer.NightshadeTrainer, DOL.GS.Trainer.RangerTrainer, DOL.GS.Trainer.StalkerTrainer, DOL.GS.Trainer.ValewalkerTrainer, DOL.GS.Trainer.VampiirTrainer, DOL.GS.Trainer.WardenTrainer, DOL.GS.Trainer.BerserkerTrainer, DOL.GS.Trainer.BonedancerTrainer, DOL.GS.Trainer.HealerTrainer, DOL.GS.Trainer.HunterTrainer, DOL.GS.Trainer.MidgardMaulerTrainer, DOL.GS.Trainer.MidgardRogueTrainer, DOL.GS.Trainer.MysticTrainer, DOL.GS.Trainer.RunemasterTrainer, DOL.GS.Trainer.SavageTrainer, DOL.GS.Trainer.SeerTrainer, DOL.GS.Trainer.ShadowbladeTrainer, DOL.GS.Trainer.ShamanTrainer, DOL.GS.Trainer.SkaldTrainer, DOL.GS.Trainer.SpiritmasterTrainer, DOL.GS.Trainer.ThaneTrainer, DOL.GS.Trainer.ValkyrieTrainer, DOL.GS.Trainer.VikingTrainer, DOL.GS.Trainer.WarlockTrainer, and DOL.GS.Trainer.WarriorTrainer.

virtual bool DOL.GS.GameNPC.IsFriend ( GameNPC  npc) [virtual]

Whether this NPC is a friend or not.

Parameters:
npcThe NPC that is checked against.
Returns:
virtual void DOL.GS.GameNPC.LoadEquipmentTemplateFromDatabase ( string  equipmentTemplateID) [virtual]

Loads the equipment template of this npc.

Parameters:
equipmentTemplateIDThe template id
override void DOL.GS.GameNPC.LoadFromDatabase ( DataObject  obj) [virtual]

Load a npc from the npc template.

Parameters:
objtemplate to load from

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.GameDragon, DOL.GS.GameBoat, DOL.GS.GameMerchant, DOL.GS.GameSiegeWeapon, and DOL.GS.Keeps.GameKeepGuard.

virtual void DOL.GS.GameNPC.LoadTemplate ( INpcTemplate  template) [virtual]

Load a NPC template onto this NPC.

Parameters:
template

Reimplemented in DOL.GS.GameMerchant.

virtual bool DOL.GS.GameNPC.MoveInRegion ( ushort  regionID,
int  x,
int  y,
int  z,
ushort  heading,
bool  forceMove 
) [virtual]

Move an NPC within the same region without removing from world.

Parameters:
regionID
x
y
z
heading
forceMoveMove regardless of combat check
Returns:
true if npc was moved
void DOL.GS.GameNPC.MoveOnPath ( short  speed)

let the npc travel on its path

Parameters:
speedSpeed on path
override void DOL.GS.GameNPC.Notify ( DOLEvent  e,
object  sender,
EventArgs  args 
) [virtual]

Handle event notifications.

Parameters:
eThe event
senderThe sender
argsThe arguements

Reimplemented from DOL.GS.GameLiving.

void DOL.GS.GameNPC.NPCStartAttackCheckLOS ( GamePlayer  player,
ushort  response,
ushort  targetOID 
)

We only attack if we have LOS.

Parameters:
player
response
targetOID
void DOL.GS.GameNPC.NPCStopRangedAttackCheckLOS ( GamePlayer  player,
ushort  response,
ushort  targetOID 
)

If we don't have LOS we stop attack.

Parameters:
player
response
targetOID
void DOL.GS.GameNPC.NPCUpdatedCallback ( )

callback that npc was updated to the world so it must be visible to at least one player

override void DOL.GS.GameNPC.OnAfterSpellCastSequence ( ISpellHandler  handler) [virtual]

Callback after spell execution finished and next spell can be processed.

Parameters:
handler

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GamePet, and DOL.GS.NecromancerPet.

void DOL.GS.GameNPC.OnArriveAtWaypoint ( DOLEvent  e,
object  n,
EventArgs  args 
) [protected]

decides what to do on reached waypoint in path

Parameters:
e
n
args
override bool DOL.GS.GameNPC.OnInterruptTick ( GameLiving  attacker,
AttackData.eAttackType  attackType 
) [protected, virtual]

If npcs cant move, they cant be interupted from range attack.

Parameters:
attacker
attackType
Returns:

Reimplemented from DOL.GS.GameLiving.

override void DOL.GS.GameNPC.RangedAttackFinished ( ) [virtual]

When a ranged attack is finished this is called in order to check LOS for next attack.

Reimplemented from DOL.GS.GameLiving.

virtual bool DOL.GS.GameNPC.RemoveBrain ( ABrain  removeBrain) [virtual]

Removes a temporary brain from Npc.

Parameters:
removeBrainThe brain to remove
Returns:
True if brain was found
virtual bool DOL.GS.GameNPC.RemoveControlledNpc ( IControlledBrain  controlledNpc) [virtual]

Removes the brain from.

Parameters:
controlledNpcThe brain to find and remove
Returns:
Whether the pet was removed

Reimplemented in DOL.GS.CommanderPet.

override bool DOL.GS.GameNPC.RemoveFromWorld ( ) [virtual]

Removes the npc from the world.

Returns:
true if the npc has been successfully removed

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GameSiegeWeapon, and DOL.GS.Keeps.GameKeepGuard.

bool DOL.GS.GameNPC.RemoveQuestToGive ( Type  questType)

removes a scripted quest from this npc

Parameters:
questTypeThe questType to remove
Returns:
true if added, false if the npc has already the quest!
virtual int DOL.GS.GameNPC.RespawnTimerCallback ( RegionTimer  respawnTimer) [protected, virtual]

The callback that will respawn this mob.

Parameters:
respawnTimerthe timer calling this callback
Returns:
the new interval

Reimplemented in DOL.GS.Keeps.GameKeepGuard.

int DOL.GS.GameNPC.RiderArrayLocation ( GamePlayer  player)

Get the riders array location.

Parameters:
playerthe player to get location of
Returns:
virtual bool DOL.GS.GameNPC.RiderDismount ( bool  forced,
GamePlayer  player 
) [virtual]

Called to dismount a rider from this npc. Since only players can ride NPC's you should use the GamePlayer.MountSteed function instead to make sure all callbacks are called correctly.

Parameters:
forcedif true, the dismounting can't be prevented by handlers
playerthe player that is dismounting
Returns:
true if dismounted successfully

Reimplemented in DOL.GS.GameBoat, and DOL.GS.GameSiegeRam.

virtual bool DOL.GS.GameNPC.RiderMount ( GamePlayer  rider,
bool  forced 
) [virtual]

This function is called when a rider mounts this npc Since only players can ride NPC's you should use the GamePlayer.MountSteed function instead to make sure all callbacks are called correctly.

Parameters:
riderGamePlayer that is the rider
forcedif true, mounting can't be prevented by handlers
Returns:
true if mounted successfully

Reimplemented in DOL.GS.GameBoat, and DOL.GS.GameSiegeRam.

virtual bool DOL.GS.GameNPC.RiderMount ( GamePlayer  rider,
bool  forced,
int  slot 
) [virtual]

This function is called when a rider mounts this npc Since only players can ride NPC's you should use the GamePlayer.MountSteed function instead to make sure all callbacks are called correctly.

Parameters:
riderGamePlayer that is the rider
forcedif true, mounting can't be prevented by handlers
slotThe desired slot to mount
Returns:
true if mounted successfully
int DOL.GS.GameNPC.RiderSlot ( GamePlayer  player)

Get the riders slot on the npc.

Parameters:
player
Returns:
override void DOL.GS.GameNPC.SaveIntoDatabase ( ) [virtual]

Saves a mob into the db if it exists, it is updated, else it creates a new object in the DB.

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.GameBoat, DOL.GS.GameMerchant, and DOL.GS.BaseProtector.

virtual void DOL.GS.GameNPC.SayTo ( GamePlayer  target,
eChatLoc  loc,
string  message,
bool  announce = true 
) [virtual]

Format "say" message and send it to target.

Parameters:
target
locchat location of the message
message
virtual void DOL.GS.GameNPC.SayTo ( GamePlayer  target,
string  message,
bool  announce = true 
) [virtual]

Format "say" message and send it to target in popup window.

Parameters:
target
message
virtual ABrain DOL.GS.GameNPC.SetOwnBrain ( ABrain  brain) [virtual]

Sets the NPC own brain.

Parameters:
brainThe new brain
Returns:
The old own brain
eQuestIndicator DOL.GS.GameNPC.SetQuestIndicator ( Type  questType,
GamePlayer  player 
)

Return the proper indicator for quest TODO: check when finish indicator is set when you have done the NPC quest when you are at the last step.

Parameters:
questTypeType of quest
playerplayer requesting the quest
Returns:
virtual bool DOL.GS.GameNPC.ShowQuestIndicator ( GamePlayer  player) [virtual]

Should the NPC show a quest indicator, this can be overriden for custom handling Checks both scripted and data quests.

Parameters:
player
Returns:
True if the NPC should show quest indicator, false otherwise
override void DOL.GS.GameNPC.StartAttack ( GameObject  target) [virtual]

Starts a melee attack on a target.

Parameters:
targetThe object to attack

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.TurretPet, DOL.GS.GameGuard, DOL.GS.Keeps.GameKeepGuard, and DOL.GS.ArrektosProtector.

virtual void DOL.GS.GameNPC.StartRespawn ( ) [virtual]

Starts the Respawn Timer.

override void DOL.GS.GameNPC.StopAttack ( ) [virtual]

Stops all attack actions, including following target.

Reimplemented from DOL.GS.GameLiving.

virtual void DOL.GS.GameNPC.StopFollowing ( ) [virtual]

Stop following.

virtual void DOL.GS.GameNPC.StopMoving ( ) [virtual]

Stops the movement of the mob.

virtual void DOL.GS.GameNPC.StopMovingAt ( IPoint3D  target) [virtual]

Stops the movement of the mob and forcibly moves it to the given target position.

void DOL.GS.GameNPC.StopMovingOnPath ( )

Stop moving on path.

void DOL.GS.GameNPC.SwitchToMelee ( GameObject  target)

Method to switch the npc to Melee attacks.

Parameters:
target
void DOL.GS.GameNPC.SwitchToRanged ( GameObject  target)

Method to switch the guard to Ranged attacks.

Parameters:
target
override void DOL.GS.GameNPC.SwitchWeapon ( eActiveWeaponSlot  slot) [virtual]

Switches the active weapon to another one.

Parameters:
slotthe new eActiveWeaponSlot

Reimplemented from DOL.GS.GameLiving.

virtual void DOL.GS.GameNPC.TurnTo ( GameObject  target) [virtual]

Turns the NPC towards a specific gameObject which can be anything ... a player, item, mob, npc ...

Parameters:
targetGameObject to turn towards
virtual void DOL.GS.GameNPC.TurnTo ( GameObject  target,
bool  sendUpdate 
) [virtual]

Turns the NPC towards a specific gameObject which can be anything ... a player, item, mob, npc ... optionally sends update to client.

Parameters:
targetGameObject to turn towards
virtual void DOL.GS.GameNPC.TurnTo ( ushort  heading) [virtual]

Turns the npc towards a specific heading.

Parameters:
newHeadingthe new heading
virtual void DOL.GS.GameNPC.TurnTo ( int  tx,
int  ty 
) [virtual]

Turns the npc towards a specific spot.

Parameters:
txTarget X
tyTarget Y
virtual void DOL.GS.GameNPC.TurnTo ( GameObject  target,
int  duration 
) [virtual]

Turns the NPC towards a specific gameObject which can be anything ... a player, item, mob, npc ... and turn back after specified duration.

Parameters:
targetGameObject to turn towards
durationrestore heading after this duration
virtual void DOL.GS.GameNPC.TurnTo ( ushort  heading,
bool  sendUpdate 
) [virtual]

Turns the npc towards a specific heading optionally sends update to client.

Parameters:
newHeadingthe new heading
virtual void DOL.GS.GameNPC.TurnTo ( int  tx,
int  ty,
bool  sendUpdate 
) [virtual]

Turns the npc towards a specific spot optionally sends update to client.

Parameters:
txTarget X
tyTarget Y
void DOL.GS.GameNPC.UpdateNPCEquipmentAppearance ( )

Updates the items on a character.

override void DOL.GS.GameNPC.UpdateTickSpeed ( ) [protected, virtual]

Updates the tick speed for this living.

Reimplemented from DOL.GS.GameLiving.

virtual void DOL.GS.GameNPC.Walk ( short  speed) [virtual]

This function is used to start the mob walking. It will walk in the heading direction until the StopMovement function is called.

Parameters:
speedwalk speed
virtual void DOL.GS.GameNPC.WalkTo ( int  targetX,
int  targetY,
int  targetZ,
short  speed 
) [virtual]

Walk to a certain spot at a given speed.

Parameters:
tx
ty
tz
speed

Reimplemented in DOL.GS.Keeps.GameKeepGuard.

virtual void DOL.GS.GameNPC.WalkTo ( IPoint3D  target,
short  speed 
) [virtual]

Walk to a certain spot at a given speed.

Parameters:
p
speed
virtual void DOL.GS.GameNPC.WalkToSpawn ( ) [virtual]

Walk to the spawn point.

Reimplemented in DOL.GS.GameDragon, and DOL.GS.Keeps.GameKeepGuard.

virtual void DOL.GS.GameNPC.WalkToSpawn ( short  speed) [virtual]

Walk to the spawn point with specified speed.

override bool DOL.GS.GameNPC.WhisperReceive ( GameLiving  source,
string  text 
) [virtual]

ToDo.

Parameters:
source
text
Returns:

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.Arbiter, DOL.GS.ArtifactScholar, DOL.GS.Scholar, DOL.GS.CommanderPet, DOL.GS.CraftNPC, DOL.GS.FaceCustomiser, DOL.GS.KingNPC, DOL.GS.CLWeaponNPC, DOL.GS.GameTrainer, DOL.GS.GuildRegistrar, DOL.GS.GameHastener, DOL.GS.RoyalTreasuryClerk, DOL.GS.TaskMaster, DOL.GS.SimpleTeleporter, DOL.GS.ThroneRoomTeleporter, DOL.GS.GameTeleporter, DOL.GS.NecromancerPet, DOL.GS.Keeps.GuardLord, DOL.GS.Keeps.MissionMaster, DOL.GS.Trainer.AcolyteTrainer, DOL.GS.Trainer.AlbionMaulerTrainer, DOL.GS.Trainer.AlbionRogueTrainer, DOL.GS.Trainer.ArmsmanTrainer, DOL.GS.Trainer.CabalistTrainer, DOL.GS.Trainer.ClericTrainer, DOL.GS.Trainer.DiscipleTrainer, DOL.GS.Trainer.ElementalistTrainer, DOL.GS.Trainer.FighterTrainer, DOL.GS.Trainer.FriarTrainer, DOL.GS.Trainer.HereticTrainer, DOL.GS.Trainer.InfiltratorTrainer, DOL.GS.Trainer.MageTrainer, DOL.GS.Trainer.MercenaryTrainer, DOL.GS.Trainer.MinstrelTrainer, DOL.GS.Trainer.NecromancerTrainer, DOL.GS.Trainer.PaladinTrainer, DOL.GS.Trainer.ReaverTrainer, DOL.GS.Trainer.ScoutTrainer, DOL.GS.Trainer.SorcererTrainer, DOL.GS.Trainer.TheurgistTrainer, DOL.GS.Trainer.WizardTrainer, DOL.GS.Trainer.AnimistTrainer, DOL.GS.Trainer.BainsheeTrainer, DOL.GS.Trainer.BardTrainer, DOL.GS.Trainer.BlademasterTrainer, DOL.GS.Trainer.ChampionTrainer, DOL.GS.Trainer.DruidTrainer, DOL.GS.Trainer.EldritchTrainer, DOL.GS.Trainer.EnchanterTrainer, DOL.GS.Trainer.ForesterTrainer, DOL.GS.Trainer.GuardianTrainer, DOL.GS.Trainer.HeroTrainer, DOL.GS.Trainer.HiberniaMaulerTrainer, DOL.GS.Trainer.MagicianTrainer, DOL.GS.Trainer.MentalistTrainer, DOL.GS.Trainer.NaturalistTrainer, DOL.GS.Trainer.NightshadeTrainer, DOL.GS.Trainer.RangerTrainer, DOL.GS.Trainer.StalkerTrainer, DOL.GS.Trainer.ValewalkerTrainer, DOL.GS.Trainer.VampiirTrainer, DOL.GS.Trainer.WardenTrainer, DOL.GS.Trainer.BerserkerTrainer, DOL.GS.Trainer.BonedancerTrainer, DOL.GS.Trainer.HealerTrainer, DOL.GS.Trainer.HunterTrainer, DOL.GS.Trainer.MidgardMaulerTrainer, DOL.GS.Trainer.MidgardRogueTrainer, DOL.GS.Trainer.MysticTrainer, DOL.GS.Trainer.RunemasterTrainer, DOL.GS.Trainer.SavageTrainer, DOL.GS.Trainer.SeerTrainer, DOL.GS.Trainer.ShadowbladeTrainer, DOL.GS.Trainer.ShamanTrainer, DOL.GS.Trainer.SkaldTrainer, DOL.GS.Trainer.SpiritmasterTrainer, DOL.GS.Trainer.ThaneTrainer, DOL.GS.Trainer.ValkyrieTrainer, DOL.GS.Trainer.VikingTrainer, DOL.GS.Trainer.WarlockTrainer, and DOL.GS.Trainer.WarriorTrainer.


Member Data Documentation

IList<MobXAmbientBehaviour> DOL.GS.GameNPC.ambientTexts

The ambient texts.

The duration of no exp after charmed, in game ticks.

const string DOL.GS.GameNPC.CHARMED_TICK_PROP = "CharmedTick"

The property that holds charmed tick if any.

Constant for determining if already at a point.

This helps to reduce the turning of an npc while fighting or returning to a spawn Tested - min distance for mob sticking within combat range to player is 25

readonly string DOL.GS.GameNPC.FOLLOW_TARGET_IN_RANGE = "FollowTargetInRange" [static, protected]

Property entry on follow timer, wether the follow target is in range.

Timer to be set if an OnArriveAtTarget handler is set before calling the WalkTo function.

byte DOL.GS.GameNPC.m_blockChance [protected]

Stores the NPC block chance.

Stores the currentwaypoint that npc has to wander to.

Equipment templateID.

byte DOL.GS.GameNPC.m_evadeChance [protected]

Stores the NPC evade chance.

Holds various flags of this npc.

Max range to keep following.

Min range to keep to the target.

WeakReference DOL.GS.GameNPC.m_followTarget [protected]

Timer to be set if an OnCloseToTarget handler is set before calling the WalkTo function.

Object that this npc is following as weakreference

Timer with purpose of follow updating.

bool DOL.GS.GameNPC.m_IsMovingOnPath = false [protected]

Stores if npc moving on path.

volatile uint DOL.GS.GameNPC.m_lastUpdateTickCount = uint.MinValue [protected]

The last time this NPC sent the 0x09 update packet.

volatile uint DOL.GS.GameNPC.m_lastVisibleToPlayerTick = uint.MinValue [protected]

The last time this NPC was actually updated to at least one player.

Stores the NPC left hand swing chance.

eDamageType DOL.GS.GameNPC.m_meleeDamageType = eDamageType.Slash [protected]

Stores the melee damage type of this NPC.

Holds the own NPC brain.

string DOL.GS.GameNPC.m_packageID [protected]

package ID defined form this NPC

byte DOL.GS.GameNPC.m_parryChance [protected]

Stores the NPC parry chance.

Stores the speed for traveling on path.

readonly ArrayList DOL.GS.GameNPC.m_questListToGive = new ArrayList() [protected]

Holds all the quests this npc can give to players.

The time to wait before each mob respawn.

A timer that will respawn this mob.

readonly object DOL.GS.GameNPC.m_respawnTimerLock = new object() [protected]

The sync object for respawn timer modifications.

byte DOL.GS.GameNPC.m_size [protected]

Holds the size of the NPC.

ushort DOL.GS.GameNPC.m_spawnHeading [protected]

Spawn Heading.

Spawn point.

readonly int DOL.GS.GameNPC.MIN_ALLOWED_FOLLOW_DISTANCE = 100 [static, protected]

Minimum allowed attacker follow distance to avoid issues with client / server resolution (herky jerky motion)

readonly int DOL.GS.GameNPC.MIN_ALLOWED_PET_FOLLOW_DISTANCE = 90 [static, protected]

Minimum allowed pet follow distance.

At what health percent will npc give up range attack and rush the attacker.

const string DOL.GS.GameNPC.RESTORE_HEADING_ACTION_PROP = "NpcRestoreHeadingAction" [protected]

The property used to store the NPC heading restore action.

Holds the rider of this NPC as weak reference.


Property Documentation

Dictionary<string, Ability> DOL.GS.GameNPC.Abilities [get]

The Abilities for this NPC.

virtual byte DOL.GS.GameNPC.BlockChance [get, set]

Gets or sets the NPC block chance.

ushort DOL.GS.GameNPC.BodyType [get, set]

The NPC's body type.

ABrain DOL.GS.GameNPC.Brain [get]

Gets the current brain of this NPC.

object DOL.GS.GameNPC.BrainSync [get]

Gets the brain sync object.

override bool DOL.GS.GameNPC.CanCastHarmfulSpells [get]

Whether or not the NPC can cast harmful spells at the moment.

Reimplemented from DOL.GS.GameLiving.

override bool DOL.GS.GameNPC.CanUseLefthandedWeapon [get]

Checks whether Living has ability to use lefthanded weapons.

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GamePet, and DOL.GS.NecromancerPet.

virtual short DOL.GS.GameNPC.Charisma [get, set]

Gets NPC's charisma.

override int DOL.GS.GameNPC.Concentration [get]

The Concentration for this NPC.

Reimplemented from DOL.GS.GameLiving.

virtual short DOL.GS.GameNPC.Constitution [get, set]

Gets NPC's constitution.

Reimplemented in DOL.GS.GamePet, and DOL.GS.NecromancerPet.

override IControlledBrain DOL.GS.GameNPC.ControlledBrain [get]

Gets the controlled object of this NPC.

Reimplemented from DOL.GS.GameLiving.

IControlledBrain [] DOL.GS.GameNPC.ControlledNpcList [get]

Gets the controlled array of this NPC.

GameObject DOL.GS.GameNPC.CurrentFollowTarget [get]

Gets the NPC current follow target.

override Region DOL.GS.GameNPC.CurrentRegion [get, set]

Gets or Sets the current Region of the Object.

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.GameSiegeWeapon.

GamePlayer [] DOL.GS.GameNPC.CurrentRiders [get]

Gets a list of the current riders.

override short DOL.GS.GameNPC.CurrentSpeed [set]

Gets or sets the current speed of the npc.

Reimplemented from DOL.GS.GameLiving.

PathPoint DOL.GS.GameNPC.CurrentWayPoint [get, set]

Gets sets the currentwaypoint that npc has to wander to.

virtual short DOL.GS.GameNPC.Dexterity [get, set]

Gets NPC's dexterity.

Reimplemented in DOL.GS.GamePet, and DOL.GS.NecromancerPet.

override int DOL.GS.GameNPC.EffectiveLevel [get]

Gets or Sets the effective level of the Object.

Reimplemented from DOL.GS.GameLiving.

virtual short DOL.GS.GameNPC.Empathy [get, set]

Gets NPC's empathy.

string DOL.GS.GameNPC.EquipmentTemplateID [get, set]

The equipment template id of this npc.

virtual byte DOL.GS.GameNPC.EvadeChance [get, set]

Gets or sets the NPC evade chance.

Faction DOL.GS.GameNPC.Faction [get, set]

Gets the Faction of the NPC.

virtual eFlags DOL.GS.GameNPC.Flags [get, set]

Gets or Sets the flags of this npc.

Reimplemented in DOL.GS.GameHousingHastener, and DOL.GS.Keeps.FrontierHastener.

eFormationType DOL.GS.GameNPC.Formation [get, set]

How the minions line up with the commander.

byte DOL.GS.GameNPC.FormationSpacing [get, set]

The Minions's x-offset from it's commander.

override eGender DOL.GS.GameNPC.Gender [get, set]

Gender of this NPC.

Reimplemented from DOL.GS.GameObject.

override string DOL.GS.GameNPC.GuildName [get, set]

Gets or sets the guild name.

Reimplemented from DOL.GS.GameObject.

override ushort DOL.GS.GameNPC.Heading [get, set]

Gets or sets the heading of this NPC.

Reimplemented from DOL.GS.GameLiving.

override int DOL.GS.GameNPC.Health [get, set]

Gets/sets the object health.

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GameTrainingDummy, and DOL.GS.NecromancerPet.

ushort DOL.GS.GameNPC.HouseNumber [get, set]

The NPC's current house.

virtual short DOL.GS.GameNPC.Intelligence [get, set]

Gets NPC's intelligence.

virtual bool DOL.GS.GameNPC.IsAggressive [get]

Whether this NPC is aggressive.

override bool DOL.GS.GameNPC.IsAlive [get]

True if NPC is alive, else false.

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GameTrainingDummy.

bool DOL.GS.GameNPC.IsAtTargetPosition [get]

True if the mob is at its target position, else false.

virtual bool DOL.GS.GameNPC.IsAvailable [get]

Whether this NPC is available to add on a fight.

bool DOL.GS.GameNPC.IsConfused [get, set]

Is this NPC currently confused.

bool DOL.GS.GameNPC.IsMovingOnPath [get]

Gets if npc moving on path.

bool DOL.GS.GameNPC.IsOutOfTetherRange [get]

True, if NPC is out of tether range, false otherwise; if no tether range is specified, this will always return false.

bool DOL.GS.GameNPC.IsRespawning [get]

True, if the mob is respawning, else false.

bool DOL.GS.GameNPC.IsReturningHome [get, set]

Is the NPC returning home, if so, we don't want it to think.

bool DOL.GS.GameNPC.IsReturningToSpawnPoint [get, set]

Whether or not the NPC is on its way back to the spawn point. [Aredhel: I decided to add this property in order not to mess with SMB and IsReturningHome. Also, to prevent outside classes from interfering the setter is now protected.].

override bool DOL.GS.GameNPC.IsStealthed [get]

The stealth state of this NPC.

Reimplemented from DOL.GS.GameLiving.

override bool DOL.GS.GameNPC.IsUnderwater [get]

Checks if object is underwater.

Reimplemented from DOL.GS.GameObject.

virtual bool DOL.GS.GameNPC.IsVisibleToPlayers [get]

Shows wether any player sees that mob we dont need to calculate things like AI if mob is in no way visible to at least one player.

virtual bool DOL.GS.GameNPC.IsWorthReward [get, set]

Tests if this MOB should give XP and loot based on the XPGainers.

Returns:
true if it should deal XP and give loot

Reimplemented in DOL.GS.GameMovingObject.

uint DOL.GS.GameNPC.LastUpdateTickCount [get]

Gets the last time this mob was updated.

uint DOL.GS.GameNPC.LastVisibleToPlayersTickCount [get]

Gets the last this this NPC was actually update to at least one player.

byte DOL.GS.GameNPC.LeftHandSwingChance [get, set]

Gets or sets the NPC left hand swing chance.

override byte DOL.GS.GameNPC.Level [get, set]

Gets or sets the level of this NPC.

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.Keeps.GameKeepGuard.

ArrayList DOL.GS.GameNPC.LinkedFactions [get, set]

The linked factions for this NPC.

override int DOL.GS.GameNPC.Mana [get]

npcs can always have mana to cast

Reimplemented from DOL.GS.GameLiving.

Reimplemented in DOL.GS.GameSiegeWeapon, and DOL.GS.Keeps.GameKeepGuard.

virtual int DOL.GS.GameNPC.MAX_PASSENGERS [get]

The maximum passengers the NPC can take.

Reimplemented in DOL.GS.GameBoat, DOL.GS.GameTaxi, DOL.GS.GameTaxiBoat, and DOL.GS.GameSiegeRam.

int DOL.GS.GameNPC.MaxDistance [get, set]

The Mob's max distance from its spawn before return automatically if MaxDistance > 0 ... the amount is the normal value if MaxDistance = 0 ... no maxdistance check if MaxDistance less than 0 ... the amount is calculated in procent of the value and the aggrorange (in StandardMobBrain)

override int DOL.GS.GameNPC.MaxMana [get]

The Max Mana for this NPC.

Reimplemented from DOL.GS.GameLiving.

virtual eDamageType DOL.GS.GameNPC.MeleeDamageType [get, set]

Gets or sets the melee damage type of this NPC.

override ushort DOL.GS.GameNPC.Model [get, set]

Gets or sets the model of this npc.

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.GameBoat, and DOL.GS.GameMovingObject.

override string DOL.GS.GameNPC.Name [get, set]

Gets or sets the name of this npc.

Reimplemented from DOL.GS.GameObject.

Reimplemented in DOL.GS.GameBoat.

NpcTemplate DOL.GS.GameNPC.NPCTemplate [get, set]

The NPC's template.

virtual byte DOL.GS.GameNPC.ParryChance [get, set]

Gets or sets the NPC parry chance.

short DOL.GS.GameNPC.PathingNormalSpeed [get, set]

Gets sets the speed for traveling on path.

virtual short DOL.GS.GameNPC.Piety [get, set]

Gets NPC's piety.

IList DOL.GS.GameNPC.QuestListToGive [get]

Gets the questlist of this player.

virtual short DOL.GS.GameNPC.Quickness [get, set]

Gets NPC's quickness.

Reimplemented in DOL.GS.GamePet, and DOL.GS.NecromancerPet.

override eRealm DOL.GS.GameNPC.Realm [get, set]

Gets or sets the Realm of this NPC.

Reimplemented from DOL.GS.GameObject.

virtual int DOL.GS.GameNPC.REQUIRED_PASSENGERS [get]

The minimum number of passengers required to move.

Reimplemented in DOL.GS.GameBoat.

virtual int DOL.GS.GameNPC.RespawnInterval [get, set]

The Respawn Interval of this mob in milliseconds.

Reimplemented in DOL.GS.GameDragon, and DOL.GS.BaseProtector.

int DOL.GS.GameNPC.RoamingRange [get, set]

radius for roaming

virtual bool DOL.GS.GameNPC.ShowTeleporterIndicator [get]

Should this NPC have an associated teleporter indicator.

Reimplemented in DOL.GS.SimpleTeleporter.

byte DOL.GS.GameNPC.Size [get, set]

Gets or sets the size of the npc.

Reimplemented in DOL.GS.AncientBoundDjinn, and DOL.GS.PermanentDjinn.

virtual int DOL.GS.GameNPC.SLOT_OFFSET [get]

The slot offset for this NPC.

Reimplemented in DOL.GS.GameBoat, DOL.GS.GameTaxi, DOL.GS.GameTaxiBoat, and DOL.GS.GameSiegeRam.

virtual ushort DOL.GS.GameNPC.SpawnHeading [get, set]

Gets or sets the spawnheading of this npc.

virtual Point3D DOL.GS.GameNPC.SpawnPoint [get, set]

Gets or sets the spawnposition of this npc.

virtual int DOL.GS.GameNPC.SpawnX [get, set]

Gets or sets the spawnposition of this npc.

virtual int DOL.GS.GameNPC.SpawnY [get, set]

Gets or sets the spawnposition of this npc.

virtual int DOL.GS.GameNPC.SpawnZ [get, set]

Gets or sets the spawnposition of this npc.

IList DOL.GS.GameNPC.Spells [get, set]

property of spell array of NPC

SpellAction DOL.GS.GameNPC.SpellTimer [get, set]

The timer that controls an npc's spell casting.

virtual short DOL.GS.GameNPC.Strength [get, set]

Gets NPC's strength.

Reimplemented in DOL.GS.GameDragon, DOL.GS.GamePet, and DOL.GS.NecromancerPet.

IList DOL.GS.GameNPC.Styles [get, set]

The Styles for this NPC.

override GameObject DOL.GS.GameNPC.TargetObject [get, set]

The target object.

Reimplemented from DOL.GS.GameLiving.

virtual IPoint3D DOL.GS.GameNPC.TargetPosition [get, set]

The target position.

int DOL.GS.GameNPC.TetherRange [get, set]

The mob's tether range; if mob is pulled farther than this distance it will return to its spawn point. if TetherRange > 0 ... the amount is the normal value if TetherRange less or equal 0 ... no tether check.

override int DOL.GS.GameNPC.X [get]

Gets the current X of this living. Don't modify this property to try to change position of the mob while active. Use the MoveTo function instead.

Reimplemented from DOL.GS.GameLiving.

override int DOL.GS.GameNPC.Y [get]

Gets the current Y of this NPC. Don't modify this property to try to change position of the mob while active. Use the MoveTo function instead.

Reimplemented from DOL.GS.GameLiving.

override int DOL.GS.GameNPC.Z [get]

Gets the current Z of this NPC. Don't modify this property to try to change position of the mob while active. Use the MoveTo function instead.

Reimplemented from DOL.GS.GameLiving.


The documentation for this class was generated from the following file:
 All Classes Namespaces Functions Variables Enumerations Properties Events