SA-MP Forums Archive
[Ayuda] No me compila - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [Ayuda] No me compila (/showthread.php?tid=406581)



[Ayuda] No me compila - RodriiK - 10.01.2013

Bueno, recien empeze con esto del SAMP, hice un "Sistema" de marihuana, pero me tira unos errores que no se como arreglarlos. Le arregle como 4 erorres y warnings que tenia, pero me ayude con el tutorial de the_chaoz y no se que esta mal. Sн alguien me puede ayudar asi aprendo:

PHP код:
#include <a_players>
#include <a_samp>
#pragma tabsize 0
#define COLOR_ROJO 0xFF0000FF
#define COLOR_AZUL 0x0000FFFF
forward Maria();
new 
Marihuana[MAX_PLAYERS];
new 
Cosecha[MAX_PLAYERS];
public 
OnPlayerCommandText(playeridcmdtext[])
{
       if (
strcmp("/marihuana"cmdtexttrue10) == 0)
       {
           
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Para comprar Marihuana tienes que poner el comando: /comprar");
           return 
1;
       }
       if (
strcmp("/comprar"cmdtexttrue10) == 0)
       {
           if(
Marihuana[playerid])
           {
               
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Ya tienes marihuana para plantar");
               return 
1;
           }
           if(
GetPlayerMoney(playerid) <= 49)
           {
               
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] No tienes dinero suficiente");
           }
           else
           {
                
Marihuana[playerid] = 1;
                
GivePlayerMoney(playerid, -50);
                
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Haz comprado Marihuana");
            }
            if (
strcmp("/plantar"cmdtexttrue10) == 0)
            {
                
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Haz plantado correctamente la marihuana. Espera 1 dнa para recojerla");
                
SetTimer("Maria"86.400.000false);
                    return 
1;
                }
            }
            if (
strcmp("/vender"cmdtexttrue10) == 0)
            {
                if(
Cosecha[playerid])
                {
                    
GivePlayerMoney(playerid200);
                    
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Vendiste tu marihuana satisfactoriamente. Ganaste $200");
                }
            }
       }
       return 
1;
}
public 
Maria(playerid)
{
    
SendClientMessageForPlayer(playerid, -1"[ ATENCION ] Tu marihuana ha crecido. Para venderla utiliza el comando: /vender");
    
Cosecha[playerid] = 1;
    return 
1;

Gracias de antemano

PD: Los errores:

Код:
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : warning 213: tag mismatch
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : error 001: expected token: ",", but found "."
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : error 029: invalid expression, assumed zero
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : warning 215: expression has no effect
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : warning 215: expression has no effect
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : error 001: expected token: ";", but found ")"
C:\Users\Rodrigo\Desktop\Scripts\FS\Sistema de Marihuana - by RodriiK.pwn(46) : fatal error 107: too many error messages on one line



Re: [Ayuda] No me compila - Fabio11 - 10.01.2013

Todo muy bonito pero cual es la linea 46?


Re: [Ayuda] No me compila - RodriiK - 10.01.2013

Quote:
Originally Posted by Fabio11
Посмотреть сообщение
Todo muy bonito pero cual es la linea 46?
Код:
SetTimer("Maria", 86.400.000, false);



Respuesta: [Ayuda] No me compila - El Bardo - 10.01.2013

їQuй tiempo querйs asignarle al timer? No le pongas los puntos.


Respuesta: Re: [Ayuda] No me compila - EduGTA - 10.01.2013

Quote:
Originally Posted by RodriiK
Посмотреть сообщение
Код:
SetTimer("Maria", 86.400.000, false);
їPor quй usas 86.400.000?

El error es que se esperaba un nъmero completo y tu le pusiste puntos

EDIT: PLUS: A tu "forward Maria();" le falta el parбmetro "playerid", lo que quedarнa siendo "forward Maria(playerid);"

Sin el parбmetro playerid, te puede dar un "error 025: function heading differs from prototype"



Re: [Ayuda] No me compila - Fabio11 - 10.01.2013

Para usar tu funcciуn (Maria(playerid)) debes usar un SetTimerEx asi:
pawn Код:
SetTimerEx("Maria", 1000, false, "i", playerid); // El 1000 es el tiempo en milisegundos (1000 = 1 segundo)
Mirate esto para mas info: https://sampwiki.blast.hk/wiki/SetTimerEx


Re: [Ayuda] No me compila - RodriiK - 10.01.2013

Pero yo lo quiero en 1 dia, por eso le puse ese numero xD


Re: [Ayuda] No me compila - Fabio11 - 10.01.2013

ї1 dia? їY si el jugador se desconecta entretanto?


Re: [Ayuda] No me compila - RodriiK - 10.01.2013

Quote:
Originally Posted by Fabio11
Посмотреть сообщение
ї1 dia? їY si el jugador se desconecta entretanto?
Ammm, no lo pense. Ya con la ayuda que me dieron esta muy bien.

Muchas gracias


Re: [Ayuda] No me compila - RodriiK - 10.01.2013

Lo arregle pero me tira errores todabia:

PHP код:
#include <a_players>
#include <a_samp>

#pragma tabsize 0

#define COLOR_ROJO 0xFF0000FF

#define COLOR_AZUL 0x0000FFFF

forward maria(secondmsg[]);

new 
Marihuana[MAX_PLAYERS];
new 
Cosecha[MAX_PLAYERS];

public 
OnPlayerCommandText(playeridcmdtext[])
{
       if (
strcmp("/marihuana"cmdtexttrue10) == 0)
       {
           
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Para comprar Marihuana tienes que poner el comando: /comprar");
           return 
1;
       }
       if (
strcmp("/comprar"cmdtexttrue10) == 0)
       {
           if(
Marihuana[playerid])
           {
               
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Ya tienes marihuana para plantar");
               return 
1;
           }

           if(
GetPlayerMoney(playerid) <= 49)
           {
               
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] No tienes dinero suficiente");
           }
           else
           {
                
Marihuana[playerid] = 1;
                
GivePlayerMoney(playerid, -50);
                
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Haz comprado Marihuana");
            }

            if (
strcmp("/plantar"cmdtexttrue10) == 0)
            {
                
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Haz plantado correctamente la marihuana. Espera 1 dнa para recojerla");
                
SetTimerEx("maria"1000false"is"playerid);

                    return 
1;
                }
            }

            if (
strcmp("/vender"cmdtexttrue10) == 0)
            {
                if(
Cosecha[playerid])
                {
                    
GivePlayerMoney(playerid200);
                    
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Vendiste tu marihuana satisfactoriamente. Ganaste $200");
                }
            }
            return 
1;
       }
       return 
1;
}

public 
maria(secondmsg[]);
{
    
SendClientMessage(playerid,0xFF0000FF,"[ ATENCION ] Se ha cosechado tu marihuana. Para venderla usa el comando: /vender");
    
Cosecha[playerid] = 1;