aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/EventAI.txt4
-rw-r--r--src/game/CreatureEventAI.cpp8
-rw-r--r--src/game/CreatureEventAI.h5
-rw-r--r--src/game/CreatureEventAIMgr.cpp10
4 files changed, 14 insertions, 13 deletions
diff --git a/doc/EventAI.txt b/doc/EventAI.txt
index c63fb9044cc..cf385643ba0 100644
--- a/doc/EventAI.txt
+++ b/doc/EventAI.txt
@@ -137,7 +137,7 @@ Each event type has its own specific interpretation of it's params, like every e
39 ACTION_T_CALL_FOR_HELP Radius Call any friendly out-of-combat creatures in a radius (Param1) to attack current creature's target.
40 ACTION_T_SET_SHEATH Sheath Sets sheath state for a creature (0 = no weapon, 1 = melee weapon, 2 = ranged weapon).
41 ACTION_T_FORCE_DESPAWN No Params Despawns the creature
-42 ACTION_T_SET_INVINCEABILITY_HP_LEVEL hp_level, is_percent Set min. health level for creature that can be set at damage as flat value or percent from max health
+42 ACTION_T_SET_INVINCIBILITY_HP_LEVEL hp_level, is_percent Set min. health level for creature that can be set at damage as flat value or percent from max health
* = Use -1 where the param is expected to do nothing. Random constant is generated for each event, so if you have a random yell and a random sound, they will be linked up with each other (ie. param2 with param2).
@@ -739,7 +739,7 @@ Despawns the creature (in or out of combat)
No parameters
-------------------------
-42 ACTION_T_SET_INVINCEABILITY_HP_LEVEL
+42 ACTION_T_SET_INVINCIBILITY_HP_LEVEL
-------------------------
Parameter 1: min. health level for creature that can be set at damage, 0 used as absent min. health value for apply damage.
Parameter 2: format of paramater 1 value
diff --git a/src/game/CreatureEventAI.cpp b/src/game/CreatureEventAI.cpp
index 6f7a8a89958..5c425217844 100644
--- a/src/game/CreatureEventAI.cpp
+++ b/src/game/CreatureEventAI.cpp
@@ -794,12 +794,12 @@ void CreatureEventAI::ProcessAction(CreatureEventAI_Action const& action, uint32
m_creature->ForcedDespawn();
break;
}
- case ACTION_T_SET_INVINCEABILITY_HP_LEVEL:
+ case ACTION_T_SET_INVINCIBILITY_HP_LEVEL:
{
- if(action.invinceability_hp_level.is_percent)
- InvinceabilityHpLevel = m_creature->GetMaxHealth()*100/action.invinceability_hp_level.hp_level;
+ if(action.invincibility_hp_level.is_percent)
+ InvinceabilityHpLevel = m_creature->GetMaxHealth()*action.invincibility_hp_level.hp_level/100;
else
- InvinceabilityHpLevel = action.invinceability_hp_level.hp_level;
+ InvinceabilityHpLevel = action.invincibility_hp_level.hp_level;
break;
}
}
diff --git a/src/game/CreatureEventAI.h b/src/game/CreatureEventAI.h
index de46fee3eae..7882e7542ec 100644
--- a/src/game/CreatureEventAI.h
+++ b/src/game/CreatureEventAI.h
@@ -113,7 +113,7 @@ enum EventAI_ActionType
ACTION_T_FORCE_DESPAWN = 41, // No Params
ACTION_T_END = 105,
- ACTION_T_SET_INVINCEABILITY_HP_LEVEL= 42, // MinHpValue, format(0-flat,1-percent from max health)
+ ACTION_T_SET_INVINCIBILITY_HP_LEVEL = 42, // MinHpValue, format(0-flat,1-percent from max health)
};
enum Target
@@ -380,11 +380,12 @@ struct CreatureEventAI_Action
{
uint32 sheath;
} set_sheath;
+ // ACTION_T_SET_INVINCIBILITY_HP_LEVEL = 42
struct
{
uint32 hp_level;
uint32 is_percent;
- } invinceability_hp_level;
+ } invincibility_hp_level;
// RAW
struct
{
diff --git a/src/game/CreatureEventAIMgr.cpp b/src/game/CreatureEventAIMgr.cpp
index 94f83296536..45bff09eb03 100644
--- a/src/game/CreatureEventAIMgr.cpp
+++ b/src/game/CreatureEventAIMgr.cpp
@@ -661,13 +661,13 @@ void CreatureEventAIMgr::LoadCreatureEventAI_Scripts()
action.set_sheath.sheath = SHEATH_STATE_UNARMED;
}
break;
- case ACTION_T_SET_INVINCEABILITY_HP_LEVEL:
- if(action.invinceability_hp_level.is_percent)
+ case ACTION_T_SET_INVINCIBILITY_HP_LEVEL:
+ if(action.invincibility_hp_level.is_percent)
{
- if(action.invinceability_hp_level.hp_level > 100)
+ if(action.invincibility_hp_level.hp_level > 100)
{
- sLog.outErrorDb("CreatureEventAI: Event %u Action %u uses wrong percent value %u.", i, j+1, action.invinceability_hp_level.hp_level);
- action.invinceability_hp_level.hp_level = 100;
+ sLog.outErrorDb("CreatureEventAI: Event %u Action %u uses wrong percent value %u.", i, j+1, action.invincibility_hp_level.hp_level);
+ action.invincibility_hp_level.hp_level = 100;
}
}
break;