06.02.2013, 19:00
I'm not even sure if this is the up to date hook method or if this works. I'm just giving you an example (I basically copied and pasted from the tutorial by Lordz™).
pawn Code:
#include <a_samp>
static
Float: g_PlayerToggleHealth[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
g_PlayerToggleHealth[playerid] = 0.00;
CallLocalFunction("L_OnPlayerConnect", "i", playerid);
}
#if defined _ALS_OnPlayerConnect
#undef OnPlayerConnect
#else
#define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect L_OnPlayerConnect
forward L_OnPlayerConnect(playerid);
stock TogglePlayerControllableEx(playerid, bool: toggle)
{
if(!toggle && g_PlayerToggleHealth[playerid] == 0.00)
{
GetPlayerHealth(playerid, g_PlayerToggleHealth[playerid]);
SetPlayerHealth(playerid, (Float:0x7F800000));
}
else if(toggle && g_PlayerToggleHealth[playerid] != 0.00)
{
SetPlayerHealth(playerid, g_PlayerToggleHealth[playerid]);
g_PlayerToggleHealth[playerid] = 0.00;
}
TogglePlayerControllable(playerid, toggle);
}
#if defined _ALS_TogglePlayerControllable
#undef TogglePlayerControllable
#else
#define _ALS_TogglePlayerControllable
#endif
#define TogglePlayerControllable TogglePlayerControllableEx