BossHP: HammerID support and more configs
This commit is contained in:
parent
81f79c51ca
commit
c932ee868c
59
BossHP/configs/bosshp/ze_pirates_port_royal_v3_6.cfg
Normal file
59
BossHP/configs/bosshp/ze_pirates_port_royal_v3_6.cfg
Normal file
@ -0,0 +1,59 @@
|
||||
"bosses"
|
||||
{
|
||||
"0" // Stage 2
|
||||
{
|
||||
"name" "Cannon"
|
||||
"method" "hpbar"
|
||||
"trigger" "delo_boss_hity:OnStartTouch"
|
||||
|
||||
"iterator" "boss_hp_iterations"
|
||||
"counter" "delo_counter"
|
||||
"backup" "boss_hp_backup"
|
||||
}
|
||||
"1" // Stage 3
|
||||
{
|
||||
"name" "Pirate"
|
||||
"method" "hpbar"
|
||||
"trigger" "pirate_add_hit:OnStartTouch"
|
||||
|
||||
"iterator" "pirate_hp_iterations"
|
||||
"counter" "pirate_counter"
|
||||
"backup" "pirate_hp_backup"
|
||||
}
|
||||
"2" // Stage 4
|
||||
{
|
||||
"name" "Barbossa"
|
||||
"method" "hpbar"
|
||||
"trigger" "barbossa2_pocty:OnStartTouch"
|
||||
|
||||
"iterator" "barbossa_hp_iterations"
|
||||
"counter" "barbossa_counter"
|
||||
"backup" "barbossa_hp_backup"
|
||||
}
|
||||
"3" // Stage 5
|
||||
{
|
||||
"name" "Kraken"
|
||||
"method" "hpbar"
|
||||
"trigger" "kraken_multipl:OnStartTouch"
|
||||
|
||||
"iterator" "kraken_hp_iterations"
|
||||
"counter" "kraken_counter"
|
||||
"backup" "kraken_hp_backup"
|
||||
}
|
||||
"4"
|
||||
{
|
||||
"name" "Barbossa"
|
||||
"method" "counter"
|
||||
"trigger" "final_barbossa_hity:OnStartTouch"
|
||||
|
||||
"counter" "final_barbossa_counter"
|
||||
}
|
||||
"5"
|
||||
{
|
||||
"name" "Barbossa"
|
||||
"method" "counter"
|
||||
"trigger" "bb_pocty:OnStartTouch"
|
||||
|
||||
"counter" "final_barbossa_counter2"
|
||||
}
|
||||
}
|
129
BossHP/configs/bosshp/ze_pkmn_adventure_v7_2s.cfg
Normal file
129
BossHP/configs/bosshp/ze_pkmn_adventure_v7_2s.cfg
Normal file
@ -0,0 +1,129 @@
|
||||
"bosses"
|
||||
{
|
||||
// Stage 1 - Bosses
|
||||
"0"
|
||||
{
|
||||
"name" "Nidoqueen"
|
||||
"method" "breakable"
|
||||
"trigger" "nidoqueen_template:OnEntitySpawned"
|
||||
|
||||
"breakable" "nidoqueen"
|
||||
}
|
||||
// Stage 2 - Bosses
|
||||
"1"
|
||||
{
|
||||
"name" "Regice"
|
||||
"method" "counter"
|
||||
"trigger" "addhealth_regi:OnStartTouch:3"
|
||||
"killtrigger" "regiiceboss:OnBreak"
|
||||
|
||||
"counter" "regicehealth"
|
||||
}
|
||||
// Stage 3 - Bosses
|
||||
"2"
|
||||
{
|
||||
"name" "Kirlia"
|
||||
"method" "breakable"
|
||||
"trigger" "KirliaSpawn:OnEntitySpawned"
|
||||
|
||||
"breakable" "kirlia"
|
||||
}
|
||||
"3"
|
||||
{
|
||||
"name" "Crobat"
|
||||
"method" "breakable"
|
||||
"trigger" "CrobatSpawn:OnEntitySpawned"
|
||||
|
||||
"breakable" "Crobat"
|
||||
}
|
||||
"4"
|
||||
{
|
||||
"name" "Groudon"
|
||||
"method" "counter"
|
||||
"trigger" "groudonaddhealth:OnStartTouch:1"
|
||||
"killtrigger" "Groudon:OnBreak"
|
||||
|
||||
"counter" "groudonhp"
|
||||
}
|
||||
"5"
|
||||
{
|
||||
"name" "Kirlia"
|
||||
"method" "counter"
|
||||
"trigger" "crobatfinalbossspawn:OnEntitySpawned"
|
||||
"killtrigger" "CrobatFinalboss:OnBreak"
|
||||
|
||||
"counter" "finalkirlia_hp"
|
||||
}
|
||||
"6" // Stage 4 - Bosses
|
||||
{
|
||||
"name" "Skuntank"
|
||||
"method" "counter"
|
||||
"trigger" "skuntank_spawn:OnEntitySpawned"
|
||||
"killtrigger" "Skuntank:OnBreak"
|
||||
|
||||
"counter" "skuntankhealth"
|
||||
}
|
||||
"7"
|
||||
{
|
||||
"name" "Purugly"
|
||||
"method" "counter"
|
||||
"trigger" "purugly_spawn:OnEntitySpawned"
|
||||
"killtrigger" "Purugly:OnBreak"
|
||||
|
||||
"counter" "puruglyhealth"
|
||||
}
|
||||
"8"
|
||||
{
|
||||
"name" "Honchkrow"
|
||||
"method" "counter"
|
||||
"trigger" "HonchkrowSpawn:OnEntitySpawned"
|
||||
"killtrigger" "Honchkrow:OnBreak"
|
||||
|
||||
"counter" "honchkrowhp"
|
||||
}
|
||||
"9"
|
||||
{
|
||||
"name" "Crobat"
|
||||
"method" "counter"
|
||||
"trigger" "CrobatSpawnCyrus:OnEntitySpawned"
|
||||
"killtrigger" "CrobatCyrus:OnBreak"
|
||||
|
||||
"counter" "crobatcyrushp"
|
||||
}
|
||||
"10"
|
||||
{
|
||||
"name" "Weavile"
|
||||
"method" "counter"
|
||||
"trigger" "WaevileSpawn:OnEntitySpawned"
|
||||
"killtrigger" "Weavile:OnBreak"
|
||||
|
||||
"counter" "weavilehp"
|
||||
}
|
||||
"11"
|
||||
{
|
||||
"name" "Giratina"
|
||||
"method" "counter"
|
||||
"trigger" "addhealth_gira:OnStartTouch"
|
||||
"killtrigger" "Giratina:OnBreak"
|
||||
|
||||
"counter" "giratinahp"
|
||||
}
|
||||
"12"
|
||||
{
|
||||
"name" "Crobat"
|
||||
"method" "counter"
|
||||
"trigger" "bottom_2_medium:OnStartTouch:1"
|
||||
"killtrigger" "CrobatFinalPart2:OnBreak"
|
||||
|
||||
"counter" "crobatfinal2_health"
|
||||
}
|
||||
"13"
|
||||
{
|
||||
"name" "Weavile"
|
||||
"method" "counter"
|
||||
"trigger" "cyrusfinalspawner:OnEntitySpawned"
|
||||
"killtrigger" "WeavileFinal:OnBreak"
|
||||
|
||||
"counter" "weavilefinalhp"
|
||||
}
|
||||
}
|
@ -1,11 +1,11 @@
|
||||
"bosses"
|
||||
{
|
||||
"0" // Glados
|
||||
{
|
||||
"name" "Glados"
|
||||
"method" "counter"
|
||||
"trigger" "lvl1_cts_counter_trigger:OnTrigger"
|
||||
|
||||
"counter" "lvl1_health_counter"
|
||||
}
|
||||
"bosses"
|
||||
{
|
||||
"0" // Glados
|
||||
{
|
||||
"name" "Glados"
|
||||
"method" "counter"
|
||||
"trigger" "lvl1_cts_counter_trigger:OnTrigger"
|
||||
|
||||
"counter" "lvl1_health_counter"
|
||||
}
|
||||
}
|
@ -23,7 +23,7 @@ public Plugin myinfo =
|
||||
name = "BossHP",
|
||||
author = "BotoX",
|
||||
description = "",
|
||||
version = "0.1",
|
||||
version = "0.2",
|
||||
url = ""
|
||||
};
|
||||
|
||||
@ -351,8 +351,9 @@ public void OnEntitySpawned(int entity)
|
||||
return;
|
||||
|
||||
char sTargetname[64];
|
||||
if(!GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname)))
|
||||
return;
|
||||
GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
|
||||
|
||||
int iHammerID = GetEntProp(entity, Prop_Data, "m_iHammerID");
|
||||
|
||||
for(int i = 0; i < g_aConfig.Length; i++)
|
||||
{
|
||||
@ -361,7 +362,11 @@ public void OnEntitySpawned(int entity)
|
||||
char sTrigger[64];
|
||||
Config.GetTrigger(sTrigger, sizeof(sTrigger));
|
||||
|
||||
if(StrEqual(sTargetname, sTrigger))
|
||||
int iTriggerHammerID = -1;
|
||||
if(sTrigger[0] == '#')
|
||||
iTriggerHammerID = StringToInt(sTrigger[1]);
|
||||
|
||||
if((iTriggerHammerID == -1 && sTargetname[0] && StrEqual(sTargetname, sTrigger)) || iTriggerHammerID == iHammerID)
|
||||
{
|
||||
char sOutput[64];
|
||||
Config.GetOutput(sOutput, sizeof(sOutput));
|
||||
@ -382,7 +387,11 @@ public void OnEntitySpawned(int entity)
|
||||
char sShowTrigger[64];
|
||||
Config.GetShowTrigger(sShowTrigger, sizeof(sShowTrigger));
|
||||
|
||||
if(sShowTrigger[0] && StrEqual(sTargetname, sShowTrigger))
|
||||
int iShowTriggerHammerID = -1;
|
||||
if(sShowTrigger[0] == '#')
|
||||
iShowTriggerHammerID = StringToInt(sShowTrigger[1]);
|
||||
|
||||
if((iShowTriggerHammerID == -1 && sShowTrigger[0] && StrEqual(sTargetname, sShowTrigger)) || iShowTriggerHammerID == iHammerID)
|
||||
{
|
||||
char sShowOutput[64];
|
||||
Config.GetShowOutput(sShowOutput, sizeof(sShowOutput));
|
||||
@ -403,7 +412,11 @@ public void OnEntitySpawned(int entity)
|
||||
char sKillTrigger[64];
|
||||
Config.GetKillTrigger(sKillTrigger, sizeof(sKillTrigger));
|
||||
|
||||
if(sKillTrigger[0] && StrEqual(sTargetname, sKillTrigger))
|
||||
int iKillTriggerHammerID = -1;
|
||||
if(sKillTrigger[0] == '#')
|
||||
iKillTriggerHammerID = StringToInt(sKillTrigger[1]);
|
||||
|
||||
if((iKillTriggerHammerID == -1 && sKillTrigger[0] && StrEqual(sTargetname, sKillTrigger)) || iKillTriggerHammerID == iHammerID)
|
||||
{
|
||||
char sKillOutput[64];
|
||||
Config.GetKillOutput(sKillOutput, sizeof(sKillOutput));
|
||||
@ -426,8 +439,11 @@ public void OnEntitySpawned(int entity)
|
||||
void OnTrigger(int entity, const char[] output, SDKHookType HookType = view_as<SDKHookType>(-1))
|
||||
{
|
||||
char sTargetname[64];
|
||||
if(!GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname)))
|
||||
return;
|
||||
GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
|
||||
|
||||
int iHammerID = GetEntProp(entity, Prop_Data, "m_iHammerID");
|
||||
|
||||
PrintToServer("OnTrigger(%d:\"%s\":#%d, \"%s\")", entity, sTargetname, iHammerID, output);
|
||||
|
||||
for(int i = 0; i < g_aConfig.Length; i++)
|
||||
{
|
||||
@ -436,7 +452,15 @@ void OnTrigger(int entity, const char[] output, SDKHookType HookType = view_as<S
|
||||
char sTrigger[64];
|
||||
Config.GetTrigger(sTrigger, sizeof(sTrigger));
|
||||
|
||||
if(!StrEqual(sTargetname, sTrigger))
|
||||
int iTriggerHammerID = -1;
|
||||
if(sTrigger[0] == '#')
|
||||
{
|
||||
iTriggerHammerID = StringToInt(sTrigger[1]);
|
||||
|
||||
if(iTriggerHammerID != iHammerID)
|
||||
continue;
|
||||
}
|
||||
else if(!sTargetname[0] || !StrEqual(sTargetname, sTrigger))
|
||||
continue;
|
||||
|
||||
char sOutput[64];
|
||||
@ -490,7 +514,10 @@ void OnTrigger(int entity, const char[] output, SDKHookType HookType = view_as<S
|
||||
if(Once)
|
||||
g_aHadOnce.SetValue(sTemp, true);
|
||||
|
||||
LogMessage("Triggered boss %s(%d) from output %s", sTargetname, entity, output);
|
||||
if(iTriggerHammerID == -1)
|
||||
LogMessage("Triggered boss %s(%d) from output %s", sTargetname, entity, output);
|
||||
else
|
||||
LogMessage("Triggered boss #%d(%d) from output %s", iTriggerHammerID, entity, output);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -498,8 +525,9 @@ void OnTrigger(int entity, const char[] output, SDKHookType HookType = view_as<S
|
||||
void OnShowTrigger(int entity, const char[] output, SDKHookType HookType = view_as<SDKHookType>(-1))
|
||||
{
|
||||
char sTargetname[64];
|
||||
if(!GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname)))
|
||||
return;
|
||||
GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
|
||||
|
||||
int iHammerID = GetEntProp(entity, Prop_Data, "m_iHammerID");
|
||||
|
||||
int iTemplateNum = -1;
|
||||
int iTemplateLoc = FindCharInString(sTargetname, '&', true);
|
||||
@ -516,7 +544,18 @@ void OnShowTrigger(int entity, const char[] output, SDKHookType HookType = view_
|
||||
char sShowTrigger[64];
|
||||
Config.GetShowTrigger(sShowTrigger, sizeof(sShowTrigger));
|
||||
|
||||
if(!StrEqual(sTargetname, sShowTrigger))
|
||||
if(!sShowTrigger[0])
|
||||
continue;
|
||||
|
||||
int iShowTriggerHammerID = -1;
|
||||
if(sShowTrigger[0] == '#')
|
||||
{
|
||||
iShowTriggerHammerID = StringToInt(sShowTrigger[1]);
|
||||
|
||||
if(iShowTriggerHammerID != iHammerID)
|
||||
continue;
|
||||
}
|
||||
else if(!sTargetname[0] || !StrEqual(sTargetname, sShowTrigger))
|
||||
continue;
|
||||
|
||||
char sShowOutput[64];
|
||||
@ -525,7 +564,10 @@ void OnShowTrigger(int entity, const char[] output, SDKHookType HookType = view_
|
||||
if(!StrEqual(output, sShowOutput))
|
||||
continue;
|
||||
|
||||
LogMessage("Triggered show boss %s(%d) from output %s", sTargetname, entity, output);
|
||||
if(iShowTriggerHammerID == -1)
|
||||
LogMessage("Triggered show boss %s(%d) from output %s", sTargetname, entity, output);
|
||||
else
|
||||
LogMessage("Triggered show boss #%d(%d) from output %s", iShowTriggerHammerID, entity, output);
|
||||
|
||||
if(HookType != view_as<SDKHookType>(-1) && !Config.bMultiTrigger)
|
||||
{
|
||||
@ -562,8 +604,9 @@ void OnShowTrigger(int entity, const char[] output, SDKHookType HookType = view_
|
||||
void OnKillTrigger(int entity, const char[] output, SDKHookType HookType = view_as<SDKHookType>(-1))
|
||||
{
|
||||
char sTargetname[64];
|
||||
if(!GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname)))
|
||||
return;
|
||||
GetEntPropString(entity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
|
||||
|
||||
int iHammerID = GetEntProp(entity, Prop_Data, "m_iHammerID");
|
||||
|
||||
int iTemplateNum = -1;
|
||||
int iTemplateLoc = FindCharInString(sTargetname, '&', true);
|
||||
@ -580,7 +623,18 @@ void OnKillTrigger(int entity, const char[] output, SDKHookType HookType = view_
|
||||
char sKillTrigger[64];
|
||||
Config.GetKillTrigger(sKillTrigger, sizeof(sKillTrigger));
|
||||
|
||||
if(!sKillTrigger[0] || !StrEqual(sTargetname, sKillTrigger))
|
||||
if(!sKillTrigger[0])
|
||||
continue;
|
||||
|
||||
int iKillTriggerHammerID = -1;
|
||||
if(sKillTrigger[0] == '#')
|
||||
{
|
||||
iKillTriggerHammerID = StringToInt(sKillTrigger[1]);
|
||||
|
||||
if(iKillTriggerHammerID != iHammerID)
|
||||
continue;
|
||||
}
|
||||
else if(!sTargetname[0] || !StrEqual(sTargetname, sKillTrigger))
|
||||
continue;
|
||||
|
||||
char sKillOutput[64];
|
||||
@ -589,7 +643,10 @@ void OnKillTrigger(int entity, const char[] output, SDKHookType HookType = view_
|
||||
if(!StrEqual(output, sKillOutput))
|
||||
continue;
|
||||
|
||||
LogMessage("Triggered kill boss %s(%d) from output %s", sTargetname, entity, output);
|
||||
if(iKillTriggerHammerID == -1)
|
||||
LogMessage("Triggered kill boss %s(%d) from output %s", sTargetname, entity, output);
|
||||
else
|
||||
LogMessage("Triggered kill boss #%d(%d) from output %s", iKillTriggerHammerID, entity, output);
|
||||
|
||||
if(HookType != view_as<SDKHookType>(-1) && !Config.bMultiTrigger)
|
||||
{
|
||||
@ -636,8 +693,8 @@ public void OnEnvEntityMakerEntitySpawned(const char[] output, int caller, int a
|
||||
|
||||
if(!StrEqual(sClassname, "env_entity_maker"))
|
||||
{
|
||||
//LogError("[SOURCEMOD BUG] output: \"%s\", caller: %d, activator: %d, delay: %f, classname: \"%s\"",
|
||||
// output, caller, activator, delay, sClassname);
|
||||
LogError("[SOURCEMOD BUG] output: \"%s\", caller: %d, activator: %d, delay: %f, classname: \"%s\"",
|
||||
output, caller, activator, delay, sClassname);
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user