Bug en mi GM
#1

Miren, en mi gm hay un bug que podes duplicar armas de la siguiente manera: ofreces el arma a tu amigo y guardas el arma en el maletero. Luego el pone /aceptar arma y la recibe aunque yo sigo teniendo el arma en el maletero. Ayuda por favor!!! Les dejo el cmd del /aceptar arma
pawn Код:
else if(strcmp(params, "arma", true) == 0) {

                new
                    playerOffering = GetPVarInt(playerid,"gunID"),
                    weaponOffering = GetPVarInt(GetPVarInt(playerid,"gunID"),"gun"),
                    slotOffering = GetPVarInt(GetPVarInt(playerid,"gunID"),"slot"),
                    wstring[128];

                if(weaponOffering != 0 && slotOffering != 0) {
                    if(ProxDetectorS(6.0, playerid, playerOffering) && !IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(playerOffering)) {
                        if(Info[playerOffering][pEstado]!=0) {
                            return SendClientMessage(playerid, COLOR_GREY, "El jugador que quiere venderte estб tazeado, esposado o congelado.");
                        }
                        else if(Info[playerid][pEstado]!=0) {
                            return SendClientMessage(playerid, COLOR_GREY, "No puedes hacer esto mientras estas tazeado, esposado o congelado.");
                        }
                        else {
                            RemovePlayerWeapon(playerOffering, weaponOffering);
                            GivePlayerValidWeapon(playerid, weaponOffering);
                            format(wstring, sizeof(wstring), "Aceptas el %s de %s.", WeaponNames[weaponOffering], GetPlayerNameEx(playerOffering));
                            SendClientMessage(playerid, COLOR_WHITE, wstring);
                            format(wstring, sizeof(wstring), "%s aceptу tu %s que le ofreciste.", GetPlayerNameEx(playerid), WeaponNames[weaponOffering]);
                            SendClientMessage(playerOffering, COLOR_WHITE, wstring);
                            format(wstring, sizeof(wstring), "* %s le da su %s a %s.", GetPlayerNameEx(playerOffering), WeaponNames[weaponOffering], GetPlayerNameEx(playerid));
                            ProxDetector(30.0, playerid, wstring, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            DeletePVar(playerOffering,"gun");
                            DeletePVar(playerid,"gunID");
                            DeletePVar(playerOffering,"slot");
                        }
                    }
                    else SendClientMessage(playerid, COLOR_GREY, "Estбs muy lejos de la persona o estб en un vehнculo.");
                }
                else SendClientMessage(playerid, COLOR_GREY, "Nadie te ha ofrecido un arma.");
            }
Reply
#2

Proba ahora

pawn Код:
else if(strcmp(params, "arma", true) == 0) {
   new
      playerOffering = GetPVarInt(playerid,"gunID"),
      weaponOffering = GetPVarInt(GetPVarInt(playerid,"gunID"),"gun"),
      slotOffering = GetPVarInt(GetPVarInt(playerid,"gunID"),"slot"),
      wstring[256];
   if(weaponOffering != 0 && slotOffering != 0)
   {
       if(GetPlayerMoney(playerid) < Precio[playerid]) return SendClientMessage(playerid, COLOR_GREY, "No tienes la cantidad de dinero suficiente.");
      if(ProxDetectorS(6.0, playerid, playerOffering) && !IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(playerOffering))
      {
         if(Info[playerOffering][pEstado]!=0)
         {
            return SendClientMessage(playerid, COLOR_GREY, "{FF0000}El Jugador Que Te Quiere Vender Arma Esta Tazeado O Esposado");
         }
         else if(Info[playerid][pEstado]!=0)
         {
            return SendClientMessage(playerid, COLOR_GREY, "{FF0000}No Puedes Hacer Esto Mientras Estas Tazeado O Esposado");
         }
         else
         {
             GivePlayerCash(playerid, -Precio[playerid]);
GivePlayerCash(playerOffering, Precio[playerid]);
             Precio[playerid] = 0;
            RemovePlayerWeapon(playerOffering, weaponOffering);
            GivePlayerValidWeapon(playerid, weaponOffering);
            format(wstring, sizeof(wstring), "{FFFFFF}Aceptaste La/El {00FF00}%s {FFFFFF}De {00FF00}%s", WeaponNames2[weaponOffering], GetPlayerNameEx(playerOffering));
            SendClientMessage(playerid, COLOR_WHITE, wstring);
            format(wstring, sizeof(wstring), "{00FF00}%s {FFFFFF}Acepto La/El {00FF00}%s {FFFFFF}Que Le Ofreciste", GetPlayerNameEx(playerid), WeaponNames2[weaponOffering]);
            SendClientMessage(playerOffering, COLOR_WHITE, wstring);
            format(wstring, sizeof(wstring), "%s Le Da Un/Una %s A %s", GetPlayerNameEx(playerOffering), WeaponNames2[weaponOffering], GetPlayerNameEx(playerid));
            ProxDetector(30.0, playerid, wstring, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            DeletePVar(playerOffering,"gun");
            DeletePVar(playerid,"gunID");
            DeletePVar(playerOffering,"slot");
         }
      }
      else SendClientMessage(playerid, COLOR_GREY, "{FF0000}Jugador Muy Lejos O En Un Vehiculo");
   }
   else SendClientMessage(playerid, COLOR_GREY, "{FF0000}Nadie Te Ofrecio Un Arma");
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)