![](images/misc/post_spacer.gif) |
Senior Member
Join Date: May 2021
Location: Uruguay
|
![Old](images/statusicon/post_old.svg)
04-17-2023
, 20:08
Re: Spawn with 25 HP
|
#10
|
Quote:
Originally Posted by Celena Luna
PHP Code:
#include <amxmodx>
#include <hamsandwich>
#include <fun>
new cvar_hp
new g_hambots; // This variable will check if the hams have been recorded
public plugin_init()
{
register_plugin("Low HP", "alliedmods", "0.1")
RegisterHam(Ham_Spawn, "player", "fwPlayerSpawn", 1)
cvar_hp = register_cvar("spawn_hp_amount", "25")
register_clcmd("say /bothp", "CMD_BotHP")
}
public CMD_BotHP(id)
{
new iPlayers[32], iPnum, iPlayer, sName[64];
get_players(iPlayers, iPnum, "ah")
for(new i = 0; i < iPnum; i++)
{
get_user_name(iPlayers[i], sName, charsmax(sName))
client_print(id, print_console, "%s: %i", sName, get_user_health(iPlayers[i]))
}
}
// Spawn event hook for bots: https://forums.alliedmods.net/showthread.php?t=294861
public client_putinserver(id)
{
if(!g_hambots && is_user_bot(id))
{
g_hambots = 1
set_task(0.1, "Do_RegisterHam", id)
}
}
public Do_RegisterHam(id)
{
// Ham Forwards
RegisterHamFromEntity(Ham_Spawn, id, "fwPlayerSpawn", 1); // In this case, Ham_TakeDamage
client_print(0, print_console, "Registered Bot: %i", id)
}
public fwPlayerSpawn(id)
{
if(is_user_alive(id))
{
set_user_health(id, get_pcvar_num(cvar_hp))
}
}
I am not sure why this work but as long as it work then it should be fine I guess....
I remove IsValid, add cmd to check and change client_putinserver a bit
Also, when testing, I notce that if other type of bot was used (ex:SyPB, PODBot,..) and they spawn first, they will "eat" the RegisterHamFromEntity and ZBot willl not get the RegisterHamFromEntity
![](https://forums.alliedmods.net/image-proxy/8c1986476d477d5260fcef5f9d5145da43cf7c7c/68747470733a2f2f692e696d6775722e636f6d2f6a523368446f712e706e67)
|
Thanks, it does somehow work if with the CZ bots, so thanks Celena
__________________
|
|
|
|