[Ayuda] Crear un comando de (vender (id) (Cantidad)
#1

Hola amigos es que quiero editar un comando de una GM, para que quede
de esta forma por ejemplo:

/vender (id) (precio)

Quiero que el precio que exija al comprador darle la cantidad que el vendedor pide y agregarle un limite de dinero que
sea unos 3000$

Код:
zcmd(vpizza, playerid, params[])
    {
        if (PlayerInfo[playerid][pJob] != 6) return Message(playerid,COLOR_GRAD2, "Usted no es Pizzero.");
        if (sscanf(params, "u", params[0])) return Message(playerid,COLOR_GRAD2, "Utiliza: /vpizza <PlayerID>");
        if (sPizza[playerid] >= 1)
        {
            if (ProxDetectorS(8.0, playerid, params[0]))
            {
				new string[256]
       			format(string, sizeof(string), "* Ha entregado una pizza a %s", PlayerName(params[0]));
       			Message(playerid, COLOR_WHITE, string);
       			format(string, sizeof(string), "{A4D9EB}* Repartidor de Pizza %s le ha dado una pizza. {FF4564}/cpizza", PlayerName(playerid));
       			Message(params[0], -1, string);
       			format(string, sizeof(string), "* %s toma la pizza y se lo da a %s", PlayerName(playerid), PlayerName(params[0]));
       			ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
       			bPizza[params[0]] = 1;
       			sPizza[playerid] -= 1;
            } else Message(playerid, COLOR_GRAD2, "El jugador no esta cerca.");
		} else Message(playerid, COLOR_GRAD2, "* No tienes una pizza, ve a la cocina.");
		return 1;
	}
Y pues el comando con el que el usuario puede aceptarla:

Код:
zcmd(cpizza, playerid, params[])
	{
		if (bPizza[playerid] != 1) return Message(playerid, COLOR_GRAD2, "   Usted no tiene una pizza, antes llame al 111.");
		new string[64];
  		SetHP(playerid, 100);
  		format(string, sizeof(string), "* %s coge su pizza y se la come.", PlayerName(playerid));
  		ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
  		bPizza[playerid] = 0;
		return 1;
	}
Por favor necesito su ayuda, quisiera hacer eso lo mas pronto posible.
Reply
#2

їPor quй jesъs? їpor quй TODO el puto mundo utiliza el GM de CP? dios y despuйs se hacen llamar pro scripters.
En fin, sуlo tiene que comprobar que params[2] sea menor a 3000
Reply
#3

No me podrнa dar un ejemplo porfavor?

PD: No me creo un "Pro Scripter" solo quiero aprender y de casualidad escogн esa GM
sн no te gusta pues no tienes obligaciуn de ayudarme.
Reply
#4

pawn Код:
zcmd(vender, playerid, params[])
{
    if(sscanf(params, "rd", params[0], params[1])) return Message(playerid,COLOR_GRAD2, "Utiliza: /vender (id) (precio)");
    if(strval(params[1]) <= 3000) return Message(playerid,COLOR_GRAD2, "tienes menor o igual a 3000");
    //tu funcion...
    return true;
}
Reply
#5

Quote:
Originally Posted by OTACON
Посмотреть сообщение
pawn Код:
zcmd(vender, playerid, params[])
{
    if(sscanf(params, "rd", params[0], params[1])) return Message(playerid,COLOR_GRAD2, "Utiliza: /vender (id) (precio)");
    if(strval(params[1]) <= 3000) return Message(playerid,COLOR_GRAD2, "tienes menor o igual a 3000");
    //tu funcion...
    return true;
}
No me sirviу, pongo el comando pero me sale el "tienes menor o igual a 3000"
claramente con un precio menor, pues no deberia ir como una especia en la parte de:

Quote:

if(strval(params[1]) <= 3000)

їUna cosa que indique que de 0 a 3000?
Reply
#6

Creo que es 'srtlen' en vez de 'strval'.
Reply
#7

Quote:
Originally Posted by EnzoMetlc
Посмотреть сообщение
Creo que es 'srtlen' en vez de 'strval'.
Strlen
Strval

vamos, vamos leer no cuesta nada
Reply
#8

Quote:
Originally Posted by JimGorecky
Посмотреть сообщение
No me podrнa dar un ejemplo porfavor?

PD: No me creo un "Pro Scripter" solo quiero aprender y de casualidad escogн esa GM
sн no te gusta pues no tienes obligaciуn de ayudarme.
En realidad es una crнtica general, igualmente el mйtodo de otacon esta mal. Tendrнa que ser
pawn Код:
if(strval(params[1]) >= 3000) return (...)
Reply
#9

Just, tu mйtodo igual esta mal... strval transforma de cadena de carбcteres a nъmero entero, cierto? pero en sscanf estas obteniendo el nъmero entero directamente, por lo que el strval que usan, esta demбs.
Reply
#10

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
Just, tu mйtodo igual esta mal... strval transforma de cadena de carбcteres a nъmero entero, cierto? pero en sscanf estas obteniendo el nъmero entero directamente, por lo que el strval que usan, esta demбs.
Lol, no vi que utilizara sscanf.

Entonces serнa:

pawn Код:
zcmd(vender, playerid, params[])
{
    if(sscanf(params, "rd", params[0], params[1])) return Message(playerid,COLOR_GRAD2, "Utiliza: /vender (id) (precio)");
    if(params[1] >= 3000) return Message(playerid,COLOR_GRAD2, "tienes menor o igual a 3000");
    {
//cуdigo
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)