[AJUDA] eventos no server -
Comando Thug - 12.01.2011
Meu amigo e eu decidimos fazer um sistema de evento para colocar como FS, (estamos criando um Blog com os nossos prуprios FS e scripts), pegou direitinho num gm que eu testei, mais porem.., vou mostrar o erro:
Код:
new dm1bloq[MAX_PLAYERS]; // topo do gm
//-------- em public OnPlayerCommandText
if(strcmp(cmd, "/irdm", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(dm1bloq[playerid] == 1)
{
SendClientMessage(playerid, COLOR_RED, "Evento DM nгo estб liberado.");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 0)
{
if(admtrampando[playerid] < 0)
{
SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб trabalhando! (/profadmin)");
return 1;
}
if (GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 1592.1980,-1222.6543,277.8721);
TelePos[playerid][0] = 0.0;TelePos[playerid][1] = 0.0;
}
else
{
SetPlayerPos(playerid, 1592.1980,-1222.6543,277.8721);
}
SendClientMessage(playerid, COLOR_GRAD1, "Evento DM!");
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Voce nгo estб autorizado a usar o comando!");
}
}
return 1;
}
//-----------------------BLOQUEANDO E DESBLOQUEANDO------------
//--------------------bloqueio-----------------------
if(strcmp(cmd,"/bloqdm",true) == 0 || strcmp(cmd,"/bloqdm1",true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[playerid][pAdmin] < 3000)
{
SendClientMessage(playerid, COLOR_GRAD2, " Vocк nгo esta autorizado a usar esse comando!");
return 1;
}
dm1bloq[playerid] = 1;
SendClientMessageToAll(COLOR_WHITE, "|__________Anъncio eventos__________|");
format(string, sizeof(string), "O evento DM foi fechado",sendername,PlayerInfo[playerid][pPnumber],playerid);
SendClientMessageToAll(0x00FF00AA, string);
}
}
return 1;
}
//------------Desbloqueio-----------------
if(strcmp(cmd,"/desbloqdm",true) == 0 || strcmp(cmd,"/desbloqdm1",true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[playerid][pAdmin] < 3000)
{
SendClientMessage(playerid, COLOR_GRAD2, " Vocк nгo esta autorizado a usar esse comando!");
return 1;
}
dm1bloq[playerid] = 0;
SendClientMessageToAll(COLOR_WHITE, "|__________Anъncio eventos__________|");
format(string, sizeof(string), "O evento DM foi aberto, para participar digite /irdm",sendername,PlayerInfo[playerid][pPnumber],playerid);
SendClientMessageToAll(0x00FF00AA, string);
}
}
return 1;
}
O problema й que quando digita /bloqdm e /desbloqdm aparece a msg duas vezes:
Код:
/desbloqdm >> aparece a msg no sv:
|__________Anъncio eventos__________|"
O evento DM foi aberto, para participar digite /irdm
|__________Anъncio eventos__________|"
O evento DM foi aberto, para participar digite /irdm
//-------------------------------------------------
/bloqdm > aparese a msg no sv:
|__________Anъncio eventos__________|"
O evento DM foi fechado
|__________Anъncio eventos__________|"
O evento DM foi fechado
e sу bloqueia o evento pra mim, pros outros eles conseguem entrar, alguйm pode me ajudaR? agradeзo

.
Re: [AJUDA] eventos no server -
syslogg - 13.01.2011
a soluзao estг obvia em seu codigo!
tire o playerid, ou melhor, caso queira otimizar isso, use variavel boleana, seria muito emlhor!
Re: [AJUDA] eventos no server -
Comando Thug - 13.01.2011
Ficou assim:
mais uma pequena dъvida se nгo for incomodo, aonde eu coloco no comando /irdm para dar armas e se tele-portar junto? desde jб agradeзo

й que sou iniciante em pwn, estou aprendendo ainda.
Re: [AJUDA] eventos no server -
TiagoPS - 13.01.2011
pawn Код:
new dm1bloq; // topo do gm
//-------- em public OnPlayerCommandText
if(strcmp(cmd, "/irdm", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(dm1bloq == 1)
{
return SendClientMessage(playerid, COLOR_RED, "Evento DM nгo estб liberado.");
}
if(PlayerInfo[playerid][pAdmin] >= 0)
{
if(admtrampando[playerid] < 0)
{
return SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб trabalhando! (/profadmin)");
}
if GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 1592.1980,-1222.6543,277.8721);
TelePos[playerid][0] = 0.0;TelePos[playerid][1] = 0.0;
}
else
{
SetPlayerPos(playerid, 1592.1980,-1222.6543,277.8721);
}
SendClientMessage(playerid, COLOR_GRAD1, "Evento DM!");
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
else
{
return SendClientMessage(playerid, COLOR_GRAD1, "Voce nгo estб autorizado a usar o comando!");
}
}
return 1;
}
//-----------------------BLOQUEANDO E DESBLOQUEANDO------------
//--------------------bloqueio-----------------------
if(strcmp(cmd,"/bloqdm",true) == 0 || strcmp(cmd,"/bloqdm1",true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[playerid][pAdmin] > 3000)
{
dm1bloq = 1;
SendClientMessageToAll(COLOR_WHITE, "|__________Anъncio eventos__________|");
format(string, sizeof(string), "O evento DM foi fechado",sendername,PlayerInfo[playerid][pPnumber],playerid);
SendClientMessageToAll(0x00FF00AA, string);
return 1;
}
else
{
return SendClientMessage(playerid, COLOR_GRAD2, " Vocк nгo esta autorizado a usar esse comando!");
}
}
}
}
//------------Desbloqueio-----------------
if(strcmp(cmd,"/desbloqdm",true) == 0 || strcmp(cmd,"/desbloqdm1",true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[playerid][pAdmin] > 3000)
{
dm1bloq = 0;
SendClientMessageToAll(COLOR_WHITE, "|__________Anъncio eventos__________|");
format(string, sizeof(string), "O evento DM foi aberto, para participar digite /irdm",sendername,PlayerInfo[playerid][pPnumber],playerid);
SendClientMessageToAll(0x00FF00AA, string);
return 1;
}
else
{
return SendClientMessage(playerid, COLOR_GRAD2, " Vocк nгo esta autorizado a usar esse comando!");
}
}
}
}
Re: [AJUDA] eventos no server -
Comando Thug - 13.01.2011
seu comando nгo funcionou, deu 3 erros, eu vou testar o comando arrumado e falo se funcionou.
@[EdiT]: Pegou perfeitamente o comando,minha dъvida й como implantar no comando /irdm para quando o player digitar o comando se teleportar e ganhar armas ao mesmo tempo?
Re: [AJUDA] eventos no server -
leandro123456 - 13.01.2011
Coloca GivePlayerWeapon(playerid,id da arma);
Re: [AJUDA] eventos no server -
Trinix_PoS [Bizu] - 13.01.2011
Uso Coreto :
pawn Код:
GivePlayerWeapon(playerid,id da arma,muniзгo);
Re: [AJUDA] eventos no server -
Comando Thug - 13.01.2011
Eu coloquei assim:
Код:
if(strcmp(cmd, "/irdm", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(dm1bloq == 0)
{
SendClientMessage(playerid, COLOR_RED, "Evento DM nгo estб liberado.");
return 1;
}
{
GivePlayerWeapon(playerid,24,8999);
GivePlayerWeapon(playerid,29,8999);
GivePlayerWeapon(playerid,31,8999);
GivePlayerAmmor(playerid,100);
}
if(PlayerInfo[playerid][pAdmin] >= 0)
{
if(admtrampando[playerid] < 0)
{
SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб trabalhando! (/profadmin)");
return 1;
}
if (GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 1592.1980,-1222.6543,277.8721);
TelePos[playerid][0] = 0.0;TelePos[playerid][1] = 0.0;
}
else
{
SetPlayerPos(playerid, 1592.1980,-1222.6543,277.8721);
}
SendClientMessage(playerid, COLOR_GRAD1, "Evento DM!");
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Voce nгo estб autorizado a usar o comando!");
}
}
return 1;
}
deu sу 1 erro, que й o GivePlayerAmmor, obrigado a todos e valeu por tudo, vou testar aqui e edito o post pra ver no que deu.
Re: [AJUDA] eventos no server -
Maltz - 13.01.2011
Tetna assim
sou novato xD
pawn Код:
if(strcmp(cmd, "/irdm", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(dm1bloq == 0)
{
SendClientMessage(playerid, COLOR_RED, "Evento DM nгo estб liberado.");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 0)
{
if(admtrampando[playerid] < 0)
{
SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб trabalhando! (/profadmin)");
return 1;
}
if (GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 1592.1980,-1222.6543,277.8721);
TelePos[playerid][0] = 0.0;TelePos[playerid][1] = 0.0;
GivePlayerWeapon(playerid,24,999);
GivePlayerWeapon(playerid,29,999);
GivePlayerWeapon(playerid,31,999);
GivePlayerArmour(playerid,100)
}
else
{
SetPlayerPos(playerid, 1592.1980,-1222.6543,277.8721);
GivePlayerWeapon(playerid,24,999);
GivePlayerWeapon(playerid,29,999);
GivePlayerWeapon(playerid,31,999);
GivePlayerArmour(playerid,100)
}
SendClientMessage(playerid, COLOR_GRAD1, "Evento DM!");
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Voce nгo estб autorizado a usar o comando!");
}
}
return 1;
}
Re: [AJUDA] eventos no server -
Comando Thug - 13.01.2011
O correto й o seguinte:
Код:
if(strcmp(cmd, "/irdm", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(dm1bloq == 0)
{
SendClientMessage(playerid, COLOR_RED, "Evento DM nгo estб liberado.");
return 1;
}
if(PlayerInfo[playerid][pAdmin] >= 0)
{
if(admtrampando[playerid] < 0)
{
SendClientMessage(playerid, COLOR_RED, "Vocк nгo estб trabalhando! (/profadmin)");
return 1;
}
{
GivePlayerWeapon(playerid,24,8999);
GivePlayerWeapon(playerid,29,8999);
GivePlayerWeapon(playerid,31,8999);
SetPlayerHealth(playerid, 100);
}
if (GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 1592.1980,-1222.6543,277.8721);
}
else
{
SetPlayerPos(playerid, 1592.1980,-1222.6543,277.8721);
}
SendClientMessage(playerid, COLOR_GRAD1, "Evento DM!");
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Voce nгo estб autorizado a usar o comando!");
}
}
return 1;
}
Sу nгo pegou uma coisinha: o colete, nгo sei como coloca colete ai, mais o cуdigo estб certo nй? sу confirma isso pra mim, e alguйm me passa o cуdigo de colocar colete ali junto tbm, vlws, desde ja agradeзo,
Marcelo.