[Ajuda] Comando - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (
https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Comando (
/showthread.php?tid=448802)
Comando -
ThiagoMK - 05.07.2013
Eu queria que quando o player usasse esse comando ele sу pudesse usar o comando novamente depois de 1 minuto..
pawn Код:
COMMAND:mecanico(playerid, params[])
{
// Setup local variables
new bool:AssistOnline = false, Msg[128], Name[24];
// Send the command to all admins so they can see it
SendAdminText(playerid, "/mecanico", params);
// Check if the player has logged in
if (APlayerData[playerid][LoggedIn] == true)
{
// Get the player's name
GetPlayerName(playerid, Name, sizeof(Name));
// Preset the message that needs to be sent to assistance players
format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);
// Check if there is at least one assistance player online
for (new i; i < MAX_PLAYERS; i++)
{
// Check if this player is connected
if (IsPlayerConnected(i))
{
// Check if this player is assistance class
if (APlayerData[i][PlayerClass] == ClassAssistance)
{
// Set the flag to indicate that at least one assistance player is online
AssistOnline = true;
// Send the assistance player a message to inform him who needs assistance
SendClientMessage(i, 0xFFFFFFFF, Msg);
}
}
}
// Check if there is at least one assistance player online
if (AssistOnline == true)
{
// Set yourself as "AssistanceNeeded"
APlayerData[playerid][AssistanceNeeded] = true;
// Let the player know he called for assistance
SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
}
else // No assistance is online
{
// Check if the player is the driver of a vehicle
if (GetPlayerVehicleSeat(playerid) == 0)
{
// Fully repair the vehicle (damage value and bodywork)
RepairVehicle(GetPlayerVehicleID(playerid));
// Also re-fuel the vehicle
AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
// Let the player pay for the repairs and refuel (default $700)
RewardPlayer(playerid, -700, 0);
// Let the player know he spent $2000 for auto-repair because there were no assistance players online
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
}
}
}
else
return 0;
// Let the server know that this was a valid command
return 1;
}
Re: Comando -
Chean - 05.07.2013
quer uma chupeta tbm ?
Re: Comando -
StrondA_ - 05.07.2013
pawn Код:
new bool:MecLiberado[MAX_PLAYERS];
public OnPlayerConnect(playerid) MecLiberado[playerid] = false;
COMMAND:mecanico(playerid, params[])
{
new bool:AssistOnline = false, Msg[128], Name[24];
SendAdminText(playerid, "/mecanico", params);
if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!");
if (APlayerData[playerid][LoggedIn] == true)
{
GetPlayerName(playerid, Name, sizeof(Name));
format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);
for (new i; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected(i))
{
if (APlayerData[i][PlayerClass] == ClassAssistance)
{
AssistOnline = true;
SendClientMessage(i, 0xFFFFFFFF, Msg);
}
}
}
if (AssistOnline == true)
{
APlayerData[playerid][AssistanceNeeded] = true;
SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
MecLiberado[playerid] = true;
SetTimerEx("LiberarMecanico", 60000, false, "i", playerid);
}
else
{
if (GetPlayerVehicleSeat(playerid) == 0)
{
RepairVehicle(GetPlayerVehicleID(playerid));
AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
RewardPlayer(playerid, -700, 0);
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
}
}
}
else return 0;
return 1;
}
forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Re : Re: Comando -
ThiagoMK - 05.07.2013
Quote:
Originally Posted by StrondA_
pawn Код:
new bool:MecLiberado[MAX_PLAYERS];
public OnPlayerConnect(playerid) MecLiberado[playerid] = false;
COMMAND:mecanico(playerid, params[]) { new bool:AssistOnline = false, Msg[128], Name[24]; SendAdminText(playerid, "/mecanico", params); if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!"); if (APlayerData[playerid][LoggedIn] == true) { GetPlayerName(playerid, Name, sizeof(Name)); format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name); for (new i; i < MAX_PLAYERS; i++) { if (IsPlayerConnected(i)) { if (APlayerData[i][PlayerClass] == ClassAssistance) { AssistOnline = true; SendClientMessage(i, 0xFFFFFFFF, Msg); } } } if (AssistOnline == true) { APlayerData[playerid][AssistanceNeeded] = true; SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica."); MecLiberado[playerid] = true; SetTimerEx("LiberarMecanico", 60000, false, "i", playerid); } else { if (GetPlayerVehicleSeat(playerid) == 0) { RepairVehicle(GetPlayerVehicleID(playerid)); AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel; RewardPlayer(playerid, -700, 0); SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700."); SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online."); } } } else return 0; return 1; }
forward LiberarMecanico(playerid); public LiberarMecanico(playerid) MecLiberado[playerid] = false;
|
Eu nгo tou conseguindo compila meu gamemode pq ta dando que nгo esta respondendo e eu nгo posso reiniciar pc agora...
Depois que eu reiniciar eu tento compila mais vlw por tentar ajudar
Re : Re: Comando -
ThiagoMK - 06.07.2013
Quote:
Originally Posted by StrondA_
pawn Код:
new bool:MecLiberado[MAX_PLAYERS];
public OnPlayerConnect(playerid) MecLiberado[playerid] = false;
COMMAND:mecanico(playerid, params[]) { new bool:AssistOnline = false, Msg[128], Name[24]; SendAdminText(playerid, "/mecanico", params); if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!"); if (APlayerData[playerid][LoggedIn] == true) { GetPlayerName(playerid, Name, sizeof(Name)); format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name); for (new i; i < MAX_PLAYERS; i++) { if (IsPlayerConnected(i)) { if (APlayerData[i][PlayerClass] == ClassAssistance) { AssistOnline = true; SendClientMessage(i, 0xFFFFFFFF, Msg); } } } if (AssistOnline == true) { APlayerData[playerid][AssistanceNeeded] = true; SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica."); MecLiberado[playerid] = true; SetTimerEx("LiberarMecanico", 60000, false, "i", playerid); } else { if (GetPlayerVehicleSeat(playerid) == 0) { RepairVehicle(GetPlayerVehicleID(playerid)); AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel; RewardPlayer(playerid, -700, 0); SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700."); SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online."); } } } else return 0; return 1; }
forward LiberarMecanico(playerid); public LiberarMecanico(playerid) MecLiberado[playerid] = false;
|
O seu nгo funfou lek.
Alguem ajuda ae?
Re: Comando -
Chean - 06.07.2013
^^
pawn Код:
new pexemplo;// coloca no topo do gm
forward exemplo;//coloca no topo do GM
if(strcmp(cmd, "/exemplo", true) == 0) // seu cmd (ONPLAYERCOMMAND...)
{
if(IsPlayerConnected(playerid))
{
if(pexemplo == 1)//aqui й que o comando ja foi utilizado e tem q esperar
{
SendClientMessage(playerid,0xFFFFFFFF,"Espere 60 para usa denovo!");
return 1;
}
else
{
SendClientMessageToAll(0xFFFFFFFF, "Teste CMD");//aqui sera o que o comando ira fazer
pexemplo = 1; // Vc colocarб o que definiu no TOPO do GM
SetTimer("exemplo", 60000, 0);//6000 й o tempo para anunciar no caso 60 seg e colocamos o nome q esta no forward
return 1;
}
}
return 1;
}
public exemplo() // cria essa public com o nome da forward e do settime
{
SendClientMessageToAll(0x33FF00FF, "COMANDO EXEMPLO LIBERADO");
pexemplo = 0;
}
Re: Comando -
Schocc - 06.07.2013
http://forum.sa-mp.com/showpost.php?...01&postcount=2
http://forum.sa-mp.com/showpost.php?...50&postcount=5
Re : Re: Comando -
ThiagoMK - 06.07.2013
Quote:
Originally Posted by StrondA_
pawn Код:
new bool:MecLiberado[MAX_PLAYERS];
public OnPlayerConnect(playerid) MecLiberado[playerid] = false;
COMMAND:mecanico(playerid, params[]) { new bool:AssistOnline = false, Msg[128], Name[24]; SendAdminText(playerid, "/mecanico", params); if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!"); if (APlayerData[playerid][LoggedIn] == true) { GetPlayerName(playerid, Name, sizeof(Name)); format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name); for (new i; i < MAX_PLAYERS; i++) { if (IsPlayerConnected(i)) { if (APlayerData[i][PlayerClass] == ClassAssistance) { AssistOnline = true; SendClientMessage(i, 0xFFFFFFFF, Msg); } } } if (AssistOnline == true) { APlayerData[playerid][AssistanceNeeded] = true; SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica."); MecLiberado[playerid] = true; SetTimerEx("LiberarMecanico", 60000, false, "i", playerid); } else { if (GetPlayerVehicleSeat(playerid) == 0) { RepairVehicle(GetPlayerVehicleID(playerid)); AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel; RewardPlayer(playerid, -700, 0); SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700."); SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online."); } } } else return 0; return 1; }
forward LiberarMecanico(playerid); public LiberarMecanico(playerid) MecLiberado[playerid] = false;
|
Onde eu coloco essas duas ultimas linhas:
pawn Код:
forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Alguem ajuda?
Re: Re : Re: Comando -
SkullFire - 06.07.2013
Quote:
Originally Posted by ThiagoMK
Onde eu coloco essas duas ultimas linhas:
pawn Код:
forward LiberarMecanico(playerid); public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Alguem ajuda?
|
Coloque a {forward LiberarMecanico} abaixo das defines do deu gm.
public LiberarMecanico coloque ela abaixo do comando,. Se nгo der coloque ela fora de uma callback