14.09.2017, 21:54
Bom, estou estudando sobre valores de variбveis.
Dкem uma olhada e me digam o que falta e o que posso melhorar...
Dкem uma olhada e me digam o que falta e o que posso melhorar...
PHP код:
#include <a_samp>
#include <zcmd>
#include <sscanf>
new a;
new b;
new c;
new d;
new z[MAX_PLAYERS];
new bool:deu[MAX_PLAYERS];
new kk[120];
new bool:precisa[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
a = 5;
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
deu[playerid] = false;
return 1;
}
CMD:pts(playerid)
{
a = a + 5;
b = 1;
c = 2;
d = 3;
SendClientMessage(playerid, -1, "Pontos inseridos!");
return 1;
}
CMD:life(playerid)
{
if(a > 0)
{
b = 1;
if(b >= 0)
{
c = 2;
if(c >= 1)
{
d = 3;
if(d > 3)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
format(kk, sizeof(kk), "O Player %s deu vida para todos do servidor!", nome);
SendClientMessageToAll(-1, kk);
SetPlayerHealth(i, 100);
}
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo possui pontos maiores que 3!");
SendClientMessage(playerid, -1, "Utilize '/queromais [motivo]' e agurade algum administrador te dar mais 3 pontos.");
precisa[playerid] = true;
}
}
}
}
else
{
SendClientMessage(playerid, -1, "Vocк precisa ter 0 pontos em A para utilizar estes comandos!");
}
return 1;
}
CMD:queromais(playerid, params[])
{
if(precisa[playerid] == true)
{
new texto[80];
if(sscanf(params, "s[80]", texto)) return SendClientMessage(playerid, -1, "Utilize '/queromais [texto]' para enviar sua solicitaзгo de receber mais 3 pontos 'D'");
format(kk, sizeof(kk), "Solicitaзгo de %s para receber mais 3 pontos em 'D' - %s", Nome(playerid), texto);
MsgAdm(-1, kk);
MsgAdm(-1, "Responda com '/darz' ou '/darD'");
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo precisa ou nгo solicitou.");
}
return 1;
}
CMD:darz(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Vocк nгo tem permissгo pra isso");
{
if(deu[playerid] == false)
{
new id, quanti, string[120];
if(sscanf(params, "ud", id, quanti)) return SendClientMessage(playerid, -1, "/darz -id- -quantidade-");
if(quanti < 0 || quanti > 5) return SendClientMessage(playerid, -1, "Quantidade vбlida de 0 б 5");
format(string, sizeof(string), "%s deu pontos Z para %s", Nome(playerid), Nome(id));
SendClientMessageToAll(-1, string);
z[id] = quanti;
deu[playerid] = true;
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo pode utilizar a funзгo mais de uma vez|somente quando morrer");
}
}
return 1;
}
CMD:darD(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Vocк nгo tem permissгo pra isso");
{
if(deu[playerid] == false)
{
new id, quanti, string[120];
if(sscanf(params, "ud", id, quanti)) return SendClientMessage(playerid, -1, "/darD -id- -quantidade-");
if(quanti < 0 || quanti > 5) return SendClientMessage(playerid, -1, "Quantidade vбlida de 0 б 5");
format(string, sizeof(string), "%s deu pontos D para %s", Nome(playerid), Nome(id));
SendClientMessageToAll(-1, string);
d = quanti;
deu[playerid] = true;
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo pode utilizar a funзгo mais de uma vez|somente quando morrer");
}
}
return 1;
}
CMD:colete(playerid)
{
if(z[playerid] > 0)
{
SetPlayerArmour(playerid, 100);
SendClientMessage(playerid, -1, "Colete inserido!");
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo tem pontos Z");
}
return 1;
}
stock Nome(playerid)
{
new pNome[MAX_PLAYER_NAME];
GetPlayerName(playerid, pNome, sizeof(pNome));
return pNome;
}
stock MsgAdm(cor, string[])
{
for(new fx = 0; fx < MAX_PLAYERS; fx++)
{
if(IsPlayerConnected(fx))
{
if(IsPlayerAdmin(fx))
{
SendClientMessage(fx, cor, string);
}
}
}
}