Ayuda con este comando..
#3

Que forma tenйis de hacer los sistemas que os complicбis vosotros solos.

pawn Код:
CMD:usar(playerid, cmdtext[])
{
    new string[256];
    if(PlayerInfo[playerid][jManoDer] == 0 && PlayerInfo[playerid][jManoIzq] == 0)  return SendClientMessage(playerid, Rojo, "* No tienes nada en ninguna mano.");
    new ManoDer = PlayerInfo[playerid][jManoDer], ManoDerCant = PlayerInfo[playerid][jManoDerCant];
    new ManoIzq = PlayerInfo[playerid][jManoIzq], ManoIzqCant = PlayerInfo[playerid][jManoIzqCant];
    if(ObjetoInfo[ManoDer][IDArma] > 0 && ObjetoInfo[ManoDer][Capacidad] > 1 && ManoIzq != 0) //Tiene un arma en mano derecha y algo en mano izquierda
    {
        ActualizarManos(playerid);
        new Cargador, ArmaID = ObjetoInfo[ManoDer][IDArma];
        switch(ArmaID)
        {
            case 22: Cargador = 39;
            case 23: Cargador = 39;
            case 24: Cargador = 40;
            case 25: Cargador = 50;
            case 26: Cargador = 50;
            case 27: Cargador = 50;
            case 28: Cargador = 41;
            case 29: Cargador = 42;
            case 30: Cargador = 44;
            case 31: Cargador = 45;
            case 32: Cargador = 43;
            case 33: Cargador = 46;
            case 34: Cargador = 46;
        }
        if(ManoIzq != Cargador)     return  SendClientMessage(playerid, Rojo, "* No puedes recargar este arma con este objeto.");
        if(RecargarTiempo[playerid] == 1)   return  SendClientMessage(playerid, Rojo, "* Espera 3 segundos antes de volver a recargar.");
        if(ArmaID != 25 && ArmaID != 26 && ArmaID != 27) //No es una escopeta
        {
            if(ManoIzqCant != 0){SendClientMessage(playerid, Rojo, "* Ese cargador estб vacio."); return 1;}
            ResetPlayerWeapons(playerid);
            GivePlayerWeapon(playerid, ArmaID, ManoIzqCant);
            PlayerInfo[playerid][jManoIzqCant] = ManoDerCant;
            format(string, sizeof(string), "* %s recarga su arma.", RPN(playerid));
            ProxDetector(5.0, playerid, string,Morado,Morado,Morado,Morado,Morado);
            RecargarTiempo[playerid] = 1;
            SetTimerEx("RecargarTimer", 3000, false, "i", playerid);
        }
        else
        {
            new n;
            switch(ArmaID)
            {
                case 25: n = 4;
                case 26: n = 2;
                case 27: n = 7;
            }
            if(GetPlayerWeaponAmmo(playerid, ArmaID) >= n)  return SendClientMessage(playerid, Rojo, "* No necesitas recargar este arma.");
            if(ManoIzqCant == 0)        return SendClientMessage(playerid, Rojo, "* No te queda municiуn.");
            new Municion = (n - GetPlayerWeaponAmmo(playerid, ArmaID));
            for(new a = 0; a < Municion; a++)
            {
                    if(PlayerInfo[playerid][jManoIzqCant] == 0){break;}
                    GivePlayerWeapon(playerid, ArmaID, 1);
                    PlayerInfo[playerid][jManoIzqCant] --;
            }
            format(string, sizeof(string), "* %s recarga su arma.", RPN(playerid));
            ProxDetector(5.0, playerid, string,Morado,Morado,Morado,Morado,Morado);
            RecargarTiempo[playerid] = 1;
            SetTimerEx("RecargarTimer", 3000, false, "i", playerid);
        }
        return 1;
    }
    return 1;
}
Siempre puedes aсadir:

pawn Код:
printf("ManoIzq %d - Cargador %d", ManoIzq, Cargador);
Encima de:
pawn Код:
if(ManoIzq != Cargador)     return  SendClientMessage(playerid, Rojo, "* No puedes recargar este arma con este objeto.");
Reply


Messages In This Thread
Ayuda con este comando.. - by flopjack - 15.09.2017, 00:07
Re: Ayuda con este comando.. - by FlaNy - 15.09.2017, 22:44
Respuesta: Ayuda con este comando.. - by Tirael - 16.09.2017, 02:10

Forum Jump:


Users browsing this thread: 1 Guest(s)