new bool:TaX1[MAX_PLAYERS];
new PlayersX1;
new nome[MAX_PLAYER_NAME];
new nome2[MAX_PLAYER_NAME];
public OnPlayerDeath(playerid, killerid, reason)
{
if(TaX1[playerid] == true)
{
new string[128];
GetPlayerName(playerid, nome[playerid], 30);
GetPlayerName(killerid, nome2[killerid], 29);
TaX1[playerid] = false;
TaX1[killerid] = false;
PlayersX1 = 0;
format(string, sizeof(string), "{FF8900}[-X1-] {FFB300}%s {FF8900}foi derrotado pelo {FFB300}%s {FF8900}no duelo X1!", nome2, nome);
SendClientMessageToAll(Vermelho, string);
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/x1", cmdtext, true, 10) == 0 || strcmp("/x1r", cmdtext, true, 10) == 0)
{
new string[128];
if(TaX1[playerid] == true)
{
SendClientMessage(playerid, Vermelho, "[-X1-] Vocк jб estб no X1!");
return 1;
}
if(PlayersX1 == 2)
{
SendClientMessage(playerid, Vermelho, "{FFD500}[-X1-] O Duelo X1 jб estб cheio, espere atй que o duelo atual termine! ");
return 1;
}
ResetPlayerWeapons(playerid);
GivePlayerWeapon(playerid, 1, 999);
GivePlayerWeapon(playerid, 5, 999);
GivePlayerWeapon(playerid, 22, 150);
GivePlayerWeapon(playerid, 26, 600);
GivePlayerWeapon(playerid, 28, 600);
SetPlayerPos(playerid, 1416.107000,0.268620,1000.926000);
PlayersX1 ++;
TaX1[playerid] = true;
GetPlayerName(playerid, nome, sizeof(nome));
format(string, sizeof(string),"{FF8900}[-X1-] %s Foi duelar um x1 ( {FFC000}/X1 {FF8900})", nome);
SendClientMessageToAll(COR_BRANCO,string);
SetPlayerInterior(playerid, 1);
if(PlayersX1 == 2)
{
format(string, sizeof(string),"{B3FF00}[-X1-] Duelo X1 estб cheio [-X1-]");
SendClientMessage(playerid, COR_BRANCO,string);
return true;
}
return true;
}
TaX1[playerid] = false;
new bool: InDuel[MAX_PLAYERS char];
public OnPlayerDeath(playerid, killerid, reason)
{
if(InDuel{killerid} && InDuel{playerid}){
static string[128],Nome[24];
format(string, sizeof(string), "{FF8900}[-X1-] {FFB300}%s {FF8900}foi derrotado pelo {FFB300}%s {FF8900}no duelo X1!", (GetPlayerName(playerid, Nome, 24), Nome), (GetPlayerName(killerid, Nome, 24), Nome)); SendClientMessageToAll(0xFF0000FF, string);
InDuel{playerid} = false, InDuel{killerid} = false;
return true;
}
// resto da callback
return true;
}
// Comando:
static i, contar;
for(i = GetMaxPlayers(), contar = -1; !(i ^ 0); --i) if(InDuel{i}) contar ++;
if(contar >= 1) return SendClientMessage(playerid, -1,"Jб tem dois jogadores fazendo duelo agora jovem");
InDuel{playerid} = true;
Garfield, tmb nгo deu certo, tentei muitas vezes с deu, tentei colocar em OnPlayerSpawn, tmb nгo foi, serб q nгo poderiam me criar um novo, ta fods criar man, o negуcio ta certinho mas quando entra no jogo parece q falha o OnPlayerDeath
|
public OnPlayerDeath(playerid, killerid, reason) {
print("OnPlayerDeath was called");
printf("%d - %d", TaX1[playerid], TaX1[killerid]);
// resto do cуdigo
printf("%d - %d", TaX1[playerid], TaX1[killerid]);
return 1;
}
public OnPlayerSpawn(playerid) {
print("OnPlayerSpawn was called");
// resto do cуdigo
printf("%d", TaX1[playerid]);
return 1;
}
if (strcmp("/kill", cmdtext, true) == 0)
{
PlayersX1 --;
TaX1[playerid] = false;
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerHealth(playerid, 0.0);
new name[MAX_PLAYER_NAME];
new message[128];
GetPlayerName(playerid, name, sizeof(name));
format(message, sizeof(message), "[SUICIDA] %s se matou ( /KILL )", name);
SendClientMessageToAll(vermelho,message);
GameTextForPlayer ( playerid , "~r~SE FODEU." , 4000, 0);
return 1;
}
Nss, nгo funcionou tmb kra, eu nгo intendo, quando eu vou no X1 e o kra me mata ou eu morro sozinho aн nгo tem como voltar de jeito nenhum, apenas da pa voltar se digitar /kill
pawn Код:
Serб que nгo tem como automaticar essa funзгo ao jogador morrer ou se ele Spawnar sei lб, nгo mecho mt em Pawn, mas serб q teria como fazer isso ? O X1 й o ъnico problema pa eu nгo deixar meu servidor (DM) Online |