Você não está conectado. Conecte-se ou registre-se

[PUBLICO] SA:MP Server

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 [PUBLICO] SA:MP Server em Sex Dez 28, 2012 3:27 pm

Olá, eu participo do fórum sa:mp e encontrei um cara que ele disse para eu vir aqui que iriam me ajudar com muito prazer...
Pois bem, eu estou criando um servidor de GTA: San Andreas, e tenho alguns problemas no meu gamemode...
Código:
   if(strcmp(cmd, "/vida", true) == 0)
   {
       if(IsPlayerConnected(playerid))
      {
         tmp = strtok(cmdtext, idx);
         GetPlayerName(playerid, sendername, sizeof(sendername));
         new location = PlayerInfo[playerid][pLocal];
         if(!strlen(tmp))
         {
            if(location != 255)
            {
               if(location < 99)
               {
                  if(HouseInfo[location][hArm] == 1 && IsACop(playerid))
                  {
                     format(string, sizeof(string), "* %s pega seu colete.", PlayerName(playerid));
                     ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                     Controle(playerid, 0);
                     GetPlayerPos(playerid, Unspec[playerid][sPx], Unspec[playerid][sPy], Unspec[playerid][sPz]);
                     Unspec[playerid][sPint] = PlayerInfo[playerid][pInt];
                     Unspec[playerid][sLocal] = PlayerInfo[playerid][pLocal];
                     XXAirBreak[playerid] += 3;SetPlayerPos(playerid,1527.5,-12.1,1002.0);
                     PlayerInfo[playerid][pLocal] = 255;
                     SetPlayerInterior(playerid,99);
                     Spectate[playerid] = 257;
                  }
                  else if(HouseInfo[location][hHel] == 1)
                  {
                      VidaDoCara[playerid] = 2; AXITERCOLETE[playerid] = 3;
                     SetPlayerHealth(playerid,100.0);
                     PlayerInfo[playerid][pDoenca] = 0;
                     SetPlayerDrunkLevel (playerid, 0);
                     PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
                     SendClientMessage(playerid, COLOR_LIGHTBLUE,"Você foi curado.");
                  }
                  else
                  {
                     SendClientMessage(playerid, COLOR_GREY,"Este lugar nao tem lugar de se curar.");
                  }
                  return true;
               }
               else if(location == 101)//Restaurant
               {
                   VidaDoCara[playerid] = 2; AXITERCOLETE[playerid] = 3;
                   SetPlayerHealth(playerid,100.0);
                  SetPlayerArmour(playerid,100.0);
                  PlayerInfo[playerid][pDoenca] = 0;
                  SetPlayerDrunkLevel (playerid, 0);
                  PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
                  SendClientMessage(playerid, COLOR_LIGHTBLUE,"Você foi curado.");
               }
               else if(location == 102 && IsACop(playerid))//Police Armorry
               {
                   VidaDoCara[playerid] = 2; AXITERCOLETE[playerid] = 3;
                   SetPlayerHealth(playerid,100.0);
                   format(string, sizeof(string), "* %s Foi Curado.", PlayerName(playerid));
                  ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                  Controle(playerid, 0);
                  GetPlayerPos(playerid, Unspec[playerid][sPx], Unspec[playerid][sPy], Unspec[playerid][sPz]);
                  Unspec[playerid][sPint] = PlayerInfo[playerid][pInt];
                  Unspec[playerid][sLocal] = PlayerInfo[playerid][pLocal];
                  XXAirBreak[playerid] += 3;SetPlayerPos(playerid,1527.5,-12.1,1002.0);
                  PlayerInfo[playerid][pLocal] = 255;
                  SetPlayerInterior(playerid,99);
                  Spectate[playerid] = 257;
               }
            }
            else
            {
               SendClientMessage(playerid, COLOR_GRAD2, "USE: /vida [id] [preço]");
               return true;
            }
         }
         giveplayerid = ReturnUser(tmp);
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp))
         {
             SendClientMessage(playerid, COLOR_GRAD2, "USE: /vida [id] [price]");
            return true;
         }
         moneys = strval(tmp);
         if(moneys < 1 || moneys > 5000) { SendClientMessage(playerid, COLOR_GREY, "  O Preço não pode passar de 5000 !"); return true; }
         if (giveplayerid == playerid)
         {
            SendClientMessage(playerid, COLOR_GRAD1, "  Você não pode se curar!");
            return true;
         }
         if (IsPlayerConnected(giveplayerid))
         {
             if(giveplayerid != INVALID_PLAYER_ID)
             {
               GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
               GetPlayerName(playerid, sendername, sizeof(sendername));
               if(gTeam[playerid] == TEAM_CYAN||PlayerInfo[playerid][pMembro]==4||PlayerInfo[playerid][pLider]==4||PlayerInfo[playerid][pMembro]==31||PlayerInfo[playerid][pLider]==31)//model
               {
                  new Veh = GetPlayerVehicleID(playerid);
                  if(IsAnAmbulanceCar(Veh)|| IsAMedicosSFCar(Veh))
                  {
                     format(string, sizeof(string), "~y~Voce foi curado ~n~~w~%s~n~~g~R$%d", giveplayer,moneys);
                     GameTextForPlayer(playerid, string, 5000, 1);
                     GivePlayerMoney(playerid,moneys);
                     GivePlayerMoney(giveplayerid,-moneys);
                     new hp = 0;
                      if(PlayerInfo[playerid][pPainPerk] > 0)
                      {
                          VidaDoCara[giveplayerid] = 2; AXITERCOLETE[giveplayerid] = 3;
                          hp = 20 * PlayerInfo[playerid][pPainPerk]; hp += 100;
                        SetPlayerHealth(giveplayerid, hp);
                      }
                      else
                      {
                          VidaDoCara[giveplayerid] = 2; AXITERCOLETE[giveplayerid] = 3;
                          hp = 100;
                          SetPlayerHealth(giveplayerid, 100);
                          PlayerInfo[giveplayerid][pDoenca] = 0;
                      }
                      new colete = 0;
                      if(PlayerInfo[playerid][pPainPerk] > 0)
                      {
                          VidaDoCara[giveplayerid] = 2; AXITERCOLETE[giveplayerid] = 3;
                          colete = 0 * PlayerInfo[playerid][pPainPerk]; colete += 100;
                        SetPlayerArmour(giveplayerid, colete);
                      }
                      else
                      {
                          VidaDoCara[giveplayerid] = 2; AXITERCOLETE[giveplayerid] = 3;
                          colete = 100;
                          SetPlayerArmour(giveplayerid, 100);
                          PlayerInfo[giveplayerid][pDoenca] = 0;
                      }
                     PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
                     PlayerPlaySound(giveplayerid, 1150, 0.0, 0.0, 0.0);
                     format(string, sizeof(string), "Você foi curado, %d de saude e %d de colete por -R$%d",hp,colete,moneys);
                     SendClientMessage(giveplayerid, COLOR_LIGHTBLUE,string);
                     if(PlayerInfo[giveplayerid][pDoenca] > 0)
                        {
                        PlayerInfo[giveplayerid][pDoenca] = 0;
                        SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "* Você não está infectado com nenhuma doença, por causa de cuidados medicos!");
                     }
                  }
                  else
                  {
                     SendClientMessage(playerid, COLOR_GRAD1, "  Vocês dois precisam estar no veículo!");
                     return true;
                  }
               }
               else
               {
                  SendClientMessage(playerid, COLOR_GRAD1, "Você não está autorizado a usar o comando!");
                  return true;
               }
            }
         }
         else
         {
            SendClientMessage(playerid, COLOR_GRAD1, " Esse jogador está offline");
         }
      }
      return true;
   }


Este comando /vida faz com que quando ele use, ele pode roubar todos os players, pois não pede autorização para curá-los, ele coloca o preço e automaticamente é retirado do player, alguém pode me ajudar a fazer um comando para pedir autorização?

Ver perfil do usuário

2 Re: [PUBLICO] SA:MP Server em Sex Dez 28, 2012 4:06 pm

[iPs]BrunoSilva

avatar
Administrador
[Somente administradores podem ver este link]

Ver perfil do usuário http://www.brunodasilva.com

3 Re: [PUBLICO] SA:MP Server em Sex Dez 28, 2012 7:35 pm

"[Somente administradores podem ver este link]"

Ver perfil do usuário

Conteúdo patrocinado


Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum