public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ) { if(IsPlayerInRangeOfPoint(playerid, 30.0, X, Y, Z)) { // Mostrar mensagem, congelar jogador e agendar descongelamento GameTextForPlayer(playerid, "~r~P~w~roibido DM", 8000, 1); TogglePlayerControllable(playerid, false); give_control[playerid] = gettime() + 8; // Devolver munição e cancelar o dano GivePlayerWeapon(playerid, GetPlayerWeapon(playerid), 1); return 0; } return 1; } public OnPlayerUpdate(playerid) { if(give_control[playerid] && give_control[playerid] < gettime()) { TogglePlayerControllable(playerid, true); give_control[playerid] = 0; } return 1; }
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart){ if( playerid != INVALID_PLAYER_ID ) { if(IsPlayerInRangeOfPoint(playerid, 30.0, X, Y, Z)) { amount = 0.0; ApplyAnimation(playerid, "DAM_JUMP", "DAM_Dive_Loop", 4.1, 0, 0, 0, 1, 0, 1); TogglePlayerControllable(playerid, false); SetTimerEx("Controlavel2", 3000, false, "i", playerid); SendClientMessage(playerid, -1, "INFO: Proibido DM em Area Safe!"); ShowPlayerDialog(playerid, 5599, DIALOG_STYLE_MSGBOX, "INFO", "Proibido DM em Area Safe!", "OK", #); return 1; } }} // fim do gmFunction Controlavel2(playerid){ TogglePlayerControllable(playerid, true); ClearAnimations(playerid, 1); SetCameraBehindPlayer(playerid); return 1;}