Hi,
alles funktioniert. Jedoch wird beim unfreeze nicht der Spieler unfreezed, der gefreezed wurde wegen C-Bug, sondern es wird immer ID 0 unfreezed.
Wie fixxe ich das?
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys & KEY_FIRE && oldkeys & KEY_CROUCH && IsCbugWeapon(playerid))
{
P_CBUG_TICKS[playerid] ++;
if(P_CBUG_TICKS[playerid] >= C_BUG_TIME)
{
P_CBUG_TICKS[playerid] = playerid;
new DerPlayer[MAX_PLAYER_NAME];
GetPlayerName(P_CBUG_TICKS[playerid],DerPlayer,sizeof(DerPlayer));
P_CBUG_TICKS[playerid] = 0;
TogglePlayerControllable(playerid,0);
SetTimer("Cbugfreeze",5000,0);
GameTextForPlayer(playerid,"~n~~r~Unterlasse das C-Buggen!",4950,4);
}
}
return 1;
}
Hier das Callback
public Cbugfreeze(playerid)
{
TogglePlayerControllable(playerid,1);
return 1;
}