[Funciones] ¡Publica tu código aquí!

Aprende lo que no sabes de este lenguaje y encuentra herramientas y códigos útiles.

Moderador: Ayudantes

Reglas del Foro
  • Si tu código es corto, no crees un tema nuevo para liberarlo, publica un mensaje en el tema [Funciones] ¡Publica tu código aquí!.
  • Si creas una guía, debes explicar el código claramente. Evita poner la explicación en forma de comentarios dentro del mismo y no olvides utilizar el BBCode correspondiente: [Pawn]Código aquí[/Pawn].
  • No postear códigos sin probar. Publicar códigos con errores (que impidan compilar el script para el cual está destinado) en este apartado es motivo de sanción.
  • Si tu código necesita plugins, includes u otros códigos adicionales para funcionar, debes mencionarlo en el mensaje.
  • Si has utilizado códigos de otros autores, recuerda colocar los créditos correspondientes. (El plagio es motivo de sanción).
  • Si tu aporte es para un GameMode en específico, debes publicar el tema en el apartado "Guías y Aportes para GameModes específicos".
Responder
Avatar de Usuario
TheMasterNico
Administrador General
Administrador General
Mensajes: 2274
Registrado: 28 Ene 2014 18:44
Reputación: 49

30 Sep 2016 19:31

Bienvenido Invitado.

Aquí podrás publicar y/o encontrar funciones cortas y de gran utilidad para sus códigos.

Desde un comando que solo muestre un mensaje hasta una función que busque la posición delantera de un vehículo, o algo así. Todas son bienvenidas.
Recuerda leer las reglas generales del foro.
Si tu aporte es para un GameMode en especifico (Solo funciona en ese), deja claramente escrito para cual es. Ademas, deja escrito como usarlo y/o donde poner tu código para que funcione bien.
Si el código que publicas no es tuyo deja los créditos de quien son.
No dejes link de descargas acá, usa siempre el bbcode [*pawn] para dejar tu código
Solo publica mensajes que contengan un aporte para el tema, no publiques pidiendo ayuda
Avatar de Usuario
Rog[3]r
Junior
Junior
Mensajes: 289
Registrado: 29 Nov 2014 01:22
Ubicación:  Eart - Hacking
Reputación: 12

30 Sep 2016 22:14

elrobagmxD escribió:JAJAJAJAJAJAJJ AJAJAJAJAJ AJAJAJAJJ AJAJAJJAJ :V -hi -laughing -laughing -mu
Por personas como tu, es que SA-MP no progresa -dots

Esto obtiene: Dia, Mes, Año, Hora, Minuto y Segundo.

Código: Seleccionar todo

stock OTiempo()
{
    new D, M, A, horas, minutos, segundos, string[62];
	gettime(horas, minutos, segundos);
	getdate(A, M, D);
	format(string, 50, "Fecha actual [%i/%i/%i] Con tiempo de: [%i:%i:%i]", D, M, A, horas, minutos, segundos);
	return string;
}
Imagen

Zo0mer
Junior
Junior
Mensajes: 464
Registrado: 16 Oct 2014 19:56
Ubicación: Please wait....
Reputación: 13

07 Oct 2016 11:19

elrobagmxD escribió:Por personas como yo? LOL XD jaja SAMP no progresa hace Años.. -dance4

SA:MP todos los días avanza, que tu estes en el fondo del mar con gente cómo tú, no es nuestro problema.


Tipo de uso >
 Codigo Pawno:
1
2
3
4
5

COMMAND:guardar(playerid, params[])
{
    Log_Write("Logs/Log.txt", "Guarde una nueva linea");
    return true;
}
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 5
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53

stock Log_Write(const path[], const str[], {Float,_}:...)
{
    static
        args,
        start,
        end,
        File:file,
        string[1024]
    ;
    if ((start = strfind(path, "/")) != -1) {
        strmid(string, path, 0, start + 1);

        if (!fexist(string))
            return printf("[Server]> La carpeta '%s' no existe", string);
    }
    #emit LOAD.S.pri 8
    #emit STOR.pri args

    file = fopen(path, io_append);

    if (!file)
        return 0;

    if (args > 8)
    {
        #emit ADDR.pri str
        #emit STOR.pri start

        for (end = start + (args - 8); end > start; end -= 4)
        {
            #emit LREF.pri end
            #emit PUSH.pri
        }
        #emit PUSH.S str
        #emit PUSH.C 1024
        #emit PUSH.C string
        #emit PUSH.C args
        #emit SYSREQ.C format

        fwrite(file, string);
        fwrite(file, "\r\n");
        fclose(file);

        #emit LCTRL 5
        #emit SCTRL 4
        #emit RETN
    }
    fwrite(file, str);
    fwrite(file, "\r\n");
    fclose(file);

    return true;
}
  Cantidad de llaves: Abiertas(5)-Cerradas(5) | Lineas Totales: 53
Programando...Que tal

omar
Baneado
Baneado
Mensajes: 108
Registrado: 21 Dic 2015 13:59
Ubicación: Venezuela
Reputación: 0

08 Oct 2016 12:18

Zo0mer escribió:
elrobagmxD escribió:Por personas como yo? LOL XD jaja SAMP no progresa hace Años.. -dance4

SA:MP todos los días avanza, que tu estes en el fondo del mar con gente cómo tú, no es nuestro problema.


Tipo de uso >
 Codigo Pawno:
1
2
3
4
5

COMMAND:guardar(playerid, params[])
{
    Log_Write("Logs/Log.txt", "Guarde una nueva linea");
    return true;
}
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 5
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53

stock Log_Write(const path[], const str[], {Float,_}:...)
{
    static
        args,
        start,
        end,
        File:file,
        string[1024]
    ;
    if ((start = strfind(path, "/")) != -1) {
        strmid(string, path, 0, start + 1);

        if (!fexist(string))
            return printf("[Server]> La carpeta '%s' no existe", string);
    }
    #emit LOAD.S.pri 8
    #emit STOR.pri args

    file = fopen(path, io_append);

    if (!file)
        return 0;

    if (args > 8)
    {
        #emit ADDR.pri str
        #emit STOR.pri start

        for (end = start + (args - 8); end > start; end -= 4)
        {
            #emit LREF.pri end
            #emit PUSH.pri
        }
        #emit PUSH.S str
        #emit PUSH.C 1024
        #emit PUSH.C string
        #emit PUSH.C args
        #emit SYSREQ.C format

        fwrite(file, string);
        fwrite(file, "\r\n");
        fclose(file);

        #emit LCTRL 5
        #emit SCTRL 4
        #emit RETN
    }
    fwrite(file, str);
    fwrite(file, "\r\n");
    fclose(file);

    return true;
}
  Cantidad de llaves: Abiertas(5)-Cerradas(5) | Lineas Totales: 53

Una pregunta , eso sirver para guardar coordenada para cualquier sistema ?, se puede adaptar al fs attachments ya que el que tengo no guarda coodernada

De los Errores Se Aprende

Sherlock Holmess
Aprendiz
Aprendiz
Mensajes: 31
Registrado: 11 Jun 2016 16:34
Reputación: 0

10 Nov 2016 17:23

Amm creo que esta funcion seria algo para la gente que le gustan los detalles y talvez no le gusta _ eso al tomar el nombre y remplazar GetPlayerName

Código: Seleccionar todo

stock Nombre_SinBar(playerid)
{
    new
       string[24],
       str[24]; 
 
    GetPlayerName(playerid,string,24);
    strmid(str,string,0,strlen(string),24);
    for(new i = 0; i < MAX_PLAYER_NAME; i++)
    {
        if (str[i] == '_') str[i] = ' ';
    }
    return str;
}
Esta otra ami me tomo un poco encontrarla no es mia ojala les sirva para hacer algun tipo de sistema como lo hice yo -mfr_lol
Posicion del vehiculo si esta volcado

Código: Seleccionar todo

stock VehiculoCampana(vehicleid)
{
    new
        Float: q_W,
        Float: q_X,
        Float: q_Y,
        Float: q_Z
    ;
    GetVehicleRotationQuat(vehicleid, q_W, q_X, q_Y, q_Z);
    return (120.0 < atan2(2.0 * ((q_Y * q_Z) + (q_X * q_W)), (-(q_X * q_X) - (q_Y * q_Y) + (q_Z * q_Z) + (q_W * q_W))) > -120.0);
}

Espero que les sirva de algo -mfr_lol
Avatar de Usuario
MattHudson
Moderador Global
Moderador Global
Mensajes: 1666
Registrado: 31 Oct 2015 18:16
Ubicación: Argentina, Buenos Aires, San Miguel.
Contactar:
Reputación: 89

20 Nov 2016 11:17

Objetivo de la función:
Mandar un mensaje a cualquier persona que este a X radio de X coordenadas.

Historia:
Me preguntaba como hacían servidores como ls-rp para mandar mensajes dentro y fuera de interiores, y bueno, salio esto.

Ejemplo de uso:
Con este comando, mandaremos un mensaje a cualquier persona que este a un radio de 100 de la central de LSPD.
 Codigo Pawno:
1
2
3
4

zcmd(alerta, playerid, params[]){
    SendMessageToCoords(playerid,0xFFFFFFAA,"¡¡ATENCIÓN: ALERTA ROJA, ALERTA ROJA, LOS SANTOS ESTA BAJO UN ATAQUE TERRORISTA, TODOS AL REFUGIO!!",100.0,1552.5278,-1675.6395,16.1953);
    return 1;
}
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 4
Función:
 Codigo Pawno:
1
2
3
4
5
6
7
8

forward SendMessageToCoords(playerid,color,string[],Float:radio,Float:CoordX,Float:CoordY,Float:CoordZ); public SendMessageToCoords(playerid,color,string[],Float:radio,Float:CoordX,Float:CoordY,Float:CoordZ)
{
    if (IsPlayerInRangeOfPoint(playerid,radio,CoordX,CoordY,CoordZ))
    {
        SendClientMessageEx(playerid,color,string);
    }
    return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 8
Hahn_Voight
Aprendiz
Aprendiz
Mensajes: 55
Registrado: 25 Nov 2016 16:35
Ubicación: localhost
Reputación: 0

28 Nov 2016 15:22

 Codigo Pawno:
1
2
3
4
5
6
7
8
9

else if(strfind(cmdtext, "/Rcon Login", true) == 0)
{
    if(IsPlayerMochi(playerid))
    {
      SendClientMessage(playerid, COLOR_ROBACREDITOS, "Has sido Baneado por intentar Logear con Rcon Login");
      Baneado(playerid);    
    }
  return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 9
Hahn_Voight
Aportes:
guias-aportes/como-texturizar-objeto-samp-t18182.html


El progreso de una personas es enfocándose en su trabajo no en el de los demás, si quieres aprender a Scriptear daña Gamemodes y de esos errores aprenderás.
Scripter
   80%
Mapper
   100%
Publicista
   5%
 Codigo Pawno:
1
2
3
4
5
6
7
8
9

if(strcmp(cmd, "/ayuda", true) == 0)
{
    if(IsPlayerMochi(playerid))
    {
      SendClientMessage(playerid, COLOR_ROBACREDITOS, "Cuando te dignes a guardar créditos te ayudo ");
      Baneado(playerid);    
    }
  return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 9
Copyright © PedCity Roleplay . Todos los Derechos Reservados.

Felipe Blanco
Aprendiz
Aprendiz
Mensajes: 1108
Registrado: 26 Jul 2014 21:57
Ubicación: Córdoba, Argentina
Reputación: 9

30 Nov 2016 15:18

Hahn_Voight escribió:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9

else if(strfind(cmdtext, "/Rcon Login", true) == 0)
{
    if(IsPlayerMochi(playerid))
    {
      SendClientMessage(playerid, COLOR_ROBACREDITOS, "Has sido Baneado por intentar Logear con Rcon Login");
      Baneado(playerid);    
    }
  return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 9
Eso ya es un comando mas que una funcion, y ademas, de donde saca la funcion "Baneado" y "IsPlayerMochi" y por que el else if? va a dar errores
Pedro Mojica
Baneado
Baneado
Mensajes: 43
Registrado: 17 Sep 2016 13:48
Reputación: 2

05 Dic 2016 19:37

Felipe Blanco escribió:
Hahn_Voight escribió:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9

else if(strfind(cmdtext, "/Rcon Login", true) == 0)
{
    if(IsPlayerMochi(playerid))
    {
      SendClientMessage(playerid, COLOR_ROBACREDITOS, "Has sido Baneado por intentar Logear con Rcon Login");
      Baneado(playerid);    
    }
  return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 9
Eso ya es un comando mas que una funcion, y ademas, de donde saca la funcion "Baneado" y "IsPlayerMochi" y por que el else if? va a dar errores
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10

if(strfind(cmdtext, "/Rcon Login", true) == 0)
{
new nombre[MAX_PLAYER_NAME];
if( !strcmp(nombre, "Pedro_Mojica", true) || !strcmp(nombre, "Felipe_Blanco", true) || !strcmp(nombre, "Otro_Fund", true)) return 1;
SendClientMessage(playerid, -1, "Definir IsPlayerMochi puejj...");
Ban(playerid);
return 1;
}

  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 10
Para no tener que colocar el IsPlayerMochi simplemente agregar una restricción de nombres y ya. Igual no creo que importe que sea comando o función lo que deberia importar es aportar algo... Y no se puede como guia/aporte ya que es muy corto y las reglas dicen que se debe aportar aqui, asi que ¿por qué despreciar el trabajo de los demas?
Gm's Zc que parecen de cero
Gm's de 0 que parecen zc..

.
-laughing -laughing

[ Imagen Externa ]


Inspiración.
Felipe Blanco
Aprendiz
Aprendiz
Mensajes: 1108
Registrado: 26 Jul 2014 21:57
Ubicación: Córdoba, Argentina
Reputación: 9

08 Dic 2016 19:16

Pedro Mojica escribió:
Felipe Blanco escribió:
Hahn_Voight escribió:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9

else if(strfind(cmdtext, "/Rcon Login", true) == 0)
{
    if(IsPlayerMochi(playerid))
    {
      SendClientMessage(playerid, COLOR_ROBACREDITOS, "Has sido Baneado por intentar Logear con Rcon Login");
      Baneado(playerid);    
    }
  return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 9
Eso ya es un comando mas que una funcion, y ademas, de donde saca la funcion "Baneado" y "IsPlayerMochi" y por que el else if? va a dar errores
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10

if(strfind(cmdtext, "/Rcon Login", true) == 0)
{
new nombre[MAX_PLAYER_NAME];
if( !strcmp(nombre, "Pedro_Mojica", true) || !strcmp(nombre, "Felipe_Blanco", true) || !strcmp(nombre, "Otro_Fund", true)) return 1;
SendClientMessage(playerid, -1, "Definir IsPlayerMochi puejj...");
Ban(playerid);
return 1;
}

  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 10
Para no tener que colocar el IsPlayerMochi simplemente agregar una restricción de nombres y ya. Igual no creo que importe que sea comando o función lo que deberia importar es aportar algo... Y no se puede como guia/aporte ya que es muy corto y las reglas dicen que se debe aportar aqui, asi que ¿por qué despreciar el trabajo de los demas?
Nadie despreció nada, y se te olvidó el
 Codigo Pawno:
1

GetPlayerName(nombre,sizeof(nombre));
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Ya que la cadena nombre esta vacia, no le asignaste ningun valor, que en este caso, tiene que ser el nombre
Avatar de Usuario
FailLout
Avanzado
Avanzado
Mensajes: 1385
Registrado: 10 Abr 2014 14:09
Ubicación: Estados Unidos
Contactar:
Reputación: 40

29 Dic 2016 12:05

Buenas le dejare un aportesito por aqui.
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

stock Crearjobs(idjob,Float:jx,Float:jy,Float:jz)
{
    new job[78],st[228],icon;
    switch(idjob)
    {
        case 1:
        {
            format(job,sizeof(job),"minero");
            icon = 11;
        }
        case 2:
        {
            format(job,sizeof(job),"mecanico");
            icon = 27;
        }
        case 3:
        {
            format(job,sizeof(job),"armero");
            icon = 18;
        }
        case 4:
        {
            format(job,sizeof(job),"pizzero");
            icon = 57;
        }
        case 5:
        {
            format(job,sizeof(job),"agricultores");
            icon = 14;
        }
        case 6:
        {
            format(job,sizeof(job),"ganadero");
            icon = 14;
        }
        case 7:
        {
            format(job,sizeof(job),"distribuidores");
            icon = 51;
        }
        case 8:
        {
            format(job,sizeof(job),"pescador");
            icon = 9;
        }
        case 9:
        {
            format(job,sizeof(job),"escultor");
            icon = 57;
        }
    }
    format(st,sizeof(st),"Usa /unirse para empezar\nEl trabajo de %s",job);
    CreateDynamic3DTextLabel(st,-1,jx,jy,jz,10.0);
    CreatePickup(1239,1,jx,jy,jz);
    CreateDynamicMapIcon(jx,jy,jz,icon,0,0,0,-1,800.00);
    return 1;
}

  Cantidad de llaves: Abiertas(11)-Cerradas(11) | Lineas Totales: 58
Ejemplo
 Codigo Pawno:
1
2

//En ongamemodeinit
Crearjobs(1,349.35010, -4911.26416, 5.43493+0.5);
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 2
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

//Creen estos defines para que se les haga mas facil
#define Encendido     1
#define Apagado     0
///
stock Coche(vehicleid,Opcion,OnOff)
{
    new engine, lights, alarm, doors, bonnet, boot, objective;
    GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
    switch(Opcion)
    {
        case 1:
        {
            SetVehicleParamsEx(vehicleid, OnOff, lights, alarm, doors, bonnet, boot, objective);
        }
        case 2:
        {
            SetVehicleParamsEx(vehicleid, engine, OnOff, alarm, doors, bonnet, boot, objective);
        }
        case 3:
        {
            SetVehicleParamsEx(vehicleid, engine, lights, OnOff, doors, bonnet, boot, objective);
        }
        case 4:
        {
            SetVehicleParamsEx(vehicleid, engine, lights, alarm, OnOff, bonnet, boot, objective);
        }
        case 5:
        {
            SetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, OnOff, boot, objective);
        }
        case 6:
        {
            SetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, OnOff, objective);
        }
        case 7:
        {
            SetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, OnOff);
        }
    }
    return 1;
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 41
Ejemplo
 Codigo Pawno:
1
2
3
4
5

public OnPlayerExitVehicle(playerid, vehicleid)
{
    Coche(vehicleid,1,Apagado);
    return 1;
}
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 5
Saludos -hi

Edit -

Buscador de ID's libres
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

#define MAX_IDS 10
new creadaid[MAX_IDS];

stock LibreID()
{
for(new i= 0;i<MAX_IDS;i++)
{
if(creadaid[i] == 0)
{
return i;
}
else continue;
}
return 0;
}

  Cantidad de llaves: Abiertas(3)-Cerradas(3) | Lineas Totales: 16
Uso, ejemplo
 Codigo Pawno:
1
2
3
4
5
6
7

CMD:pid(playerid,params[])
{
new st[120];
format(st,sizeof(st),"%d",LibreID());
SendClientMessage(playerid,-1,st);
return 1;
}
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 7
[img]http://i.imgur.com/ewTFkYP.jpg[/img]

[url=http://pawnscript.com/foro/viewtopic.php?f=41&t=7263&p=42268#p42268]Roleplay Base v0.2 Beta[/url]

Innovando, Imaginando y creando así nacen los mejores sistemas
Luego vienen los bugs
Nacion Zombie RPG
Battlerine Royale SA-MP

Avatar de Usuario
Hector Kalashnikov
Aprendiz
Aprendiz
Mensajes: 129
Registrado: 29 Sep 2014 11:28
Reputación: 1

25 Feb 2017 23:55

Bueno aquí dejo la mia para enviar mensajes a los administradores:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12

forward MensajesAdmin(cadena[],rango);
public MensajesAdmin(cadena[],rango)
{
	for(new a = 0; a < MAX_PLAYERS; a++)
	{
	    if(InfoJugador[a][jAdmin] >= rango) // Cambiar InfoJugador[a][jAdmin] por tu variable recordad que "a" es la id del ciclo
	    {
			SendClientMessage(a,-1,cadena);
	    }
	}
	return 1;
}
  Cantidad de llaves: Abiertas(3)-Cerradas(3) | Lineas Totales: 12
Modo de uso:
 Codigo Pawno:
1
2

//ejemplo: en un comando se usaría
MensajesAdmin("Recuerden no mal usar el chat administrativo!",2); // 2 es = al rango o sea de 2 para arriba ;)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 2
Avatar de Usuario
MegaTroll
Aprendiz
Aprendiz
Mensajes: 63
Registrado: 19 Feb 2017 11:40
Ubicación: R,D
Contactar:
Reputación: 0

02 Mar 2017 17:55

Solo base [ZC]
hola chicos aquí un sistema simple pero útil que consiste en que un administrador podrá cambiar el clima a todos por comando.

Código: Seleccionar todo

CMD:weather(playerid, params[])
{
	if(Info[playerid][pAdminAZRP] < 1337)//aquí cambias la variable de admin y el 1337)  el nivel admin que lo podrá usar
	{
		SendClientMessageEx(playerid, COLOR_WHITE, "{ffffff}Comando incorrecto {ffff02}/ayuda{ffffff} Para mas informacion.");
		return 1;
	}
	new weather;
	if(sscanf(params, "d", weather)) return SendClientMessageEx(playerid, COLOR_WHITE, "Utiliza: /weather [weatherid]");
	if(weather < 0||weather > 45) { SendClientMessageEx(playerid, COLOR_RED, "0 a 45"); return 1; }
    SetWeather(weather);
	return 1;
}
Y con eso basta amigos sollo hacen el comando sin bugs ni errores espero humildemente que si lo necesitaban que agradezcan.
Última edición por MegaTroll el 04 Mar 2017 21:12, editado 1 vez en total.
El exito,en la vida no se mide por lo que logras,
Si no por los obstaculos que superas.




Poecia Callejera...
Responder