NPCClient math script: Difference between revisions
Jump to navigation
Jump to search
| Line 68: | Line 68: | ||
|PStamina | |PStamina | ||
|The Physical Stamina for the NPC | |The Physical Stamina for the NPC | ||
|- | |||
|TargetHP | |||
|The HP for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetMana | |||
|The Mana for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetMaxHP | |||
|The Max HP for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetMaxMana | |||
|The Max Mana for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetMaxMStamina | |||
|The Max Mental Stamina for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetMaxPStamina | |||
|The Max Physical Stamina for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetMStamina | |||
|The Mental Stamina for the NPC's current target. If no target 0.0 is returned | |||
|- | |||
|TargetPStamina | |||
|The Physical Stamina for the NPC's current target. If no target 0.0 is returned. | |||
|- | |- | ||
|} | |} | ||
| Line 73: | Line 97: | ||
Example: | Example: | ||
Health = NPC:HP/NPC:MaxHP; | Health = NPC:HP/NPC:MaxHP; | ||
TargetHealth = NPC:TargetHP/NPC:TargetMaxHP; | |||
== Examples == | == Examples == | ||
Revision as of 15:16, 22 May 2013
NPC Client Math scripts are used from the Percept Operation and Reaction for conditional behavior. The script environment is setup with a NPCClient and a NPC attribute.
Attributes
NPC Client
The NPCClient has the following properties:
| gameHour | The hour in game time |
| gameMinute | The minute in game time |
| gameMonth | The month in game time |
| gameYear | The year in game time |
Example Math Script (DiurnalNight):
if (NPCClient:gameHour > 22 | NPCClient:gameHour < 6)
{
Result = 1.0;
} else
{
Result = 0.0;
}
NPC
The NPC has the following properties:
| Hate | The hate for the current target. If no target 0.0 is returned. |
| HP | The HP for the NPC |
| InsideTribeHome | Return 1.0 if inside tribe home, otherwise 0.0. |
| InsideRegion | Return 1.0 if inside region, otherwise 0.0. |
| Mana | The Mana for the NPC |
| MaxHP | The Max HP for the NPC |
| MaxMana | The Max Mana for the NPC |
| MaxMStamina | The Max Mental Stamina for the NPC |
| MaxPStamina | The Max Physical Stamina for the NPC |
| MStamina | The Mental Stamina for the NPC |
| PStamina | The Physical Stamina for the NPC |
| TargetHP | The HP for the NPC's current target. If no target 0.0 is returned |
| TargetMana | The Mana for the NPC's current target. If no target 0.0 is returned |
| TargetMaxHP | The Max HP for the NPC's current target. If no target 0.0 is returned |
| TargetMaxMana | The Max Mana for the NPC's current target. If no target 0.0 is returned |
| TargetMaxMStamina | The Max Mental Stamina for the NPC's current target. If no target 0.0 is returned |
| TargetMaxPStamina | The Max Physical Stamina for the NPC's current target. If no target 0.0 is returned |
| TargetMStamina | The Mental Stamina for the NPC's current target. If no target 0.0 is returned |
| TargetPStamina | The Physical Stamina for the NPC's current target. If no target 0.0 is returned. |
Example:
Health = NPC:HP/NPC:MaxHP; TargetHealth = NPC:TargetHP/NPC:TargetMaxHP;
Examples
Perception Operation
Exampe Script using conditions:
... <percept condition="DiurnalNight" event="GoToSleep" failed_event="GoToRegion" /> ...
In this Percept Operation example the event GoToSleep is triggered if the DiurnalNight math script return true.
Reaction
Example:
<react event="damage" condition="DiurnalNight" behavior="NightFight" delta="20" weight="1" />
In this Reaction example the damage event will cause a NightFight behavior to be executed if received during DiurnalNight.