ayuda comando con espacio
#1

bueno estoy haciendo este comando pero el problema esque al poner /clan invitar 3 (3 es un ejemplo de alguna id de un jugador) pero no pasa nada D: osea no manda ningun mensaje ni las funciones que deberia de mandar

Код:
CMD:clan(playerid, params[])
{

        if(!strcmp(params, "invitar", true))
	{

		new id;
  		if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "* Uso: /clan invitar [id o nombre]");
		if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Error, jugador no conectado");

		SendClientMessage(id, -1, "Tienes una invitacion a clan, usa /aceptar para unirte");
		SendClientMessage(playerid, -1, "Invitaste a alguien a tu clan");
		//demas funciones, pero no envia mensaje ni nada
		//..
	}
muchas gracias
Reply
#2

Intenta asн:
PHP код:
CMD:clan(playeridparams[])
{
    new 
item[32],id;
    if(
sscanf(params"s[32]d",item,id)) return SendClientMessage(playerid, -1"* Uso: /clan invitar [id o nombre]");
     if(!
strcmp(item"invitar"true))
    {
        if(
id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1"Error, jugador no conectado");
        
SendClientMessage(id, -1"Tienes una invitacion a clan, usa /aceptar para unirte");
        
SendClientMessage(playerid, -1"Invitaste a alguien a tu clan");
        
//demas funciones, pero no envia mensaje ni nada
        //..
    
}

Reply
#3

Pero no solo tengo la opcion invitar .___. Tambien la opcion /clan aceptar qe no usaria el parametro de id
Reply
#4

Quote:
Originally Posted by Pipe98
Посмотреть сообщение
Pero no solo tengo la opcion invitar .___. Tambien la opcion /clan aceptar qe no usaria el parametro de id
Pon todo el comando completo para poder ayudarte y dбrtelo haciendo .
Reply
#5

Код:
CMD:clan(playerid, params[])
{

	if(!strcmp(params, "invitar", true))
	{

		new id;
  		if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "* Uso: /clan invitar [id o nombre]");
		if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Error, jugador no conectado");

		SendClientMessage(id, -1, "Tienes una invitacion a clan, usa /aceptar para unirte");
		SendClientMessage(playerid, -1, "Invitaste a alguien a tu clan");
		//demas funciones, pero no envia mensaje ni nada
		//..
	}
	if(!strcmp(params, "aceptar", true)) //este no usaria el parametro [id]
	{
	    SendClientMessage(playerid, -1, "Aceptaste la invitacion al clan");
	    //..
	    //.. otras funciones
	}
	return 1;
}
tengo pensado en poner mas opciones pero por el momento llevo esas
Reply
#6

pawn Код:
CMD:clan(playerid, params[])
{
    new opcion[16],parametros[128];
    sscanf(params,"s[16]p<\1>s[128]",opcion,parametros);
   
    if(!strcmp(opcion, "invitar", true)) {
        new id;
        if(sscanf(parametros, "d", id)) return SendClientMessage(playerid, -1, "* Uso: /clan invitar [id o nombre]");
        if(id == INVALID_PLAYER_ID)     return SendClientMessage(playerid, -1, "Error, jugador no conectado");

        SendClientMessage(id, -1, "Tienes una invitacion a clan, usa /aceptar para unirte");
        SendClientMessage(playerid, -1, "Invitaste a alguien a tu clan");
        //demas funciones, pero no envia mensaje ni nada
        //..
    }
    if(!strcmp(opcion, "aceptar", true)) //este no usaria el parametro [id]
    {
        SendClientMessage(playerid, -1, "Aceptaste la invitacion al clan");
        //..
        //.. otras funciones
    }
    return 1;
}
Reply
#7

Esto es un ejemplo, tienes que poner mas variables para que pertecesca a x clan.
pawn Код:
new Aceptar_Clan[MAX_PLAYERS];//global

CMD:clan(playerid, params[])
{
    if(!sscanf(params, "s[10]D",params[0], params[1]))// return SendClientMessage(playerid, -1, "* Uso: /clan invitar [playerid]");
    {
        new nombre[24], cadena[80];
        if(params[1] == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Error, jugador no conectado");
        if(strcmp(params[0],"invitar",true) == 0)
        {
            GetPlayerName(playerid,nombre,24);
            format(cadena,80,"%s te invitу a un clan, usa /clan aceptar",nombre);
            SendClientMessage(params[1], -1, cadena);
            GetPlayerName(params[1],nombre,24);
            format(cadena,80,"Invitaste a %s a tu clan espera que acepte.",nombre);
            SendClientMessage(playerid, -1, cadena);
            Aceptar_Clan[params[1]] = playerid;
        }
        else if(strcmp(params[0],"aceptar",true) == 0)
        {
            if(Aceptar_Clan[playerid])
            {
                SendClientMessage(playerid, -1, "Aceptaste la invitacion al clan");
            }else SendClientMessage(playerid, -1, "Nadie te a enviado una invitacion");
        }
    }else SendClientMessage(playerid, -1, "* Uso: /clan invitar [playerid] /clan aceptar");
    return 1;
}
Reply
#8

y como hacer para que detecte el segundo parametro, osea el de invitar, porque si uso /clan invitar y aunque no pongo la ID manda una invitacion, quiero que se pueda detectar si se ingreso la ID?? gracias me sirvio tu comando jotajeda
Reply
#9

Quote:
Originally Posted by pep_25
Посмотреть сообщение
y como hacer para que detecte el segundo parametro, osea el de invitar, porque si uso /clan invitar y aunque no pongo la ID manda una invitacion, quiero que se pueda detectar si se ingreso la ID?? gracias me sirvio tu comando jotajeda
pawn Код:
CMD:clan(playerid, params[])
{
    if(!sscanf(params, "s[10]D",params[0], params[1]))// return SendClientMessage(playerid, -1, "* Uso: /clan invitar [playerid]");
    {
        new nombre[24], cadena[80];
        if(params[1] == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Error, jugador no conectado");
        if(strcmp(params[0],"invitar",true) == 0)
        {
            if(isnull(params[1]) return SendClientMessage(playerid, -1, "/clan invitar playerid");
            GetPlayerName(playerid,nombre,24);
            format(cadena,80,"%s te invitу a un clan, usa /clan aceptar",nombre);
            SendClientMessage(params[1], -1, cadena);
            GetPlayerName(params[1],nombre,24);
            format(cadena,80,"Invitaste a %s a tu clan espera que acepte.",nombre);
            SendClientMessage(playerid, -1, cadena);
            Aceptar_Clan[params[1]] = playerid;
        }
        else if(strcmp(params[0],"aceptar",true) == 0)
        {
            if(Aceptar_Clan[playerid])
            {
                SendClientMessage(playerid, -1, "Aceptaste la invitacion al clan");
            }else SendClientMessage(playerid, -1, "Nadie te a enviado una invitacion");
        }
    }else SendClientMessage(playerid, -1, "* Uso: /clan invitar [playerid] /clan aceptar");
    return 1;
}
Reply
#10

me da error

linea:
Код:
if(isnull(params[1])) return SendClientMessage(playerid, -1, "/clan invitar [id]");
Код:
C:\Users\Samsung\Desktop\Server Freeroam\gamemodes\modificando.pwn(1816) : error 001: expected token: ")", but found "["
C:\Users\Samsung\Desktop\Server Freeroam\gamemodes\modificando.pwn(1816) : error 029: invalid expression, assumed zero
C:\Users\Samsung\Desktop\Server Freeroam\gamemodes\modificando.pwn(1816) : error 029: invalid expression, assumed zero
C:\Users\Samsung\Desktop\Server Freeroam\gamemodes\modificando.pwn(1816) : fatal error 107: too many error messages on one line
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)