[Ayuda]: 4 errores y 1 warning
#1

Buenas:

Al compilar mi gamemode me saltan 4 errores y 1 warning. Estuve varias horas intentando averiguar la causa, pero me doy por vencido. Iluminadme, por favor xD

Gamemode: http://pastebin.com/F1nFk63R
Cуdigo de error:
Код:
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(103) : error 017: undefined symbol "EscudoAntidisturbios"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(103) : warning 215: expression has no effect
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(103) : error 001: expected token: ";", but found "]"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(103) : error 029: invalid expression, assumed zero
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(103) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


4 Errors.
Nota: Las lнneas de Pastebin coinciden con las del cуdigo de error.

Muchas gracias desde ya...
Reply
#2

Te falta aсadir esto arriba

pawn Код:
new EscudoAntidisturbios[MAX_PLAYERS];
Reply
#3

pawn Код:
new enforcer1;
new enforcer2;
new enforcer3;
new enforcer4;
new enforcer5;
new enforcer6;
#include <a_samp>
#define COLOR_GREY 0x00000035
new EscudoAntidisturbios[MAX_PLAYERS];

public OnFilterScriptInit()
{
    print("\n--------------------------------------");
    print(" Blank Filterscript by your name here");
    print("--------------------------------------\n");
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}



main()
{
    print("\n----------------------------------");
    print(" Blank Gamemode by your name here");
    print("----------------------------------\n");
}


public OnGameModeInit()
{
    SetGameModeText("Escudo antidisturbios TEST");
    AddPlayerClass(285, 1535.9851074219, -1670.3989257813, 7.79 , 269.1425, 3, 1, 0, 0, 0, 0);
    enforcer1 = AddStaticVehicle(427, 1527.0310058594, -1645.6783447266, 6.1386251449585, 0, 0, 1);
    enforcer2 = AddStaticVehicle(427, 1530.7795410156, -1645.6783447266, 6.1386251449585, 0, 0, 1);
    enforcer3 = AddStaticVehicle(427, 1534.7734375, -1645.678344726, 6.1386251449585, 0, 0, 1);
    enforcer4 = AddStaticVehicle(427, 1538.5179443359, -1645.678344726, 6.1386251449585, 0, 0, 1);
    enforcer5 = AddStaticVehicle(427, 1543.9224853516, -1651.3439941406, 6.1386251449585, 90, 0, 1);
    enforcer6 = AddStaticVehicle(427, 1543.9224853516, -1655.6350097656, 6.1386251449585, 90, 0, 1);
    return 1;
}

public OnGameModeExit()
{
    return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
}

public OnPlayerConnect(playerid)
{
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    return 1;
}

public OnPlayerSpawn(playerid)
{
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    return 1;
}

public OnVehicleSpawn(vehicleid)
{
    return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
    return 1;
}

public OnPlayerText(playerid, text[])
{
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/escudo", cmdtext, true, 10) == 0)
    {
        if(GetPlayerSkin(playerid) == 285)
        {
            if(EscudoAntidisturbios[playerid])
            {
            SendClientMessage(playerid, COLOR_GREY, "Te has quitado el escudo antidisturbios.");
            RemovePlayerAttachedObject(playerid, 19);
            return 1;
            }
            /*if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
            {
            SendClientMessage(playerid, COLOR_GREY, "No estбs de servicio.");
            return 1;
            }*/

            if(IsPlayerInRangeOfPoint(playerid, 30.0, 2204.0073,1421.0470,1106.8043) || IsPlayerInRangeOfPoint(playerid, 15.0, 323.0552,308.7016,999.1484))
            {
            SendClientMessage(playerid, COLOR_GREY, "Te equipaste con un escudo antidisturbios.");
            PlayerPlaySoundEx(playerid, 1036);
            SetPlayerAttachedObject(playerid, 19, 18637, 5);
            EscudoAntidisturbios[playerid] = 1;
            return 1;
            }
            else if(GetDistanceToCar(playerid, enforcer1) < 3 || GetDistanceToCar(playerid, enforcer2) < 3 GetDistanceToCar(playerid, enforcer3) < 3 || GetDistanceToCar(playerid, enforcer4) < 3 || GetDistanceToCar(playerid, enforcer5) < 3 || GetDistanceToCar(playerid, enforcer6) < 3);
            {
            SendClientMessage(playerid, COLOR_GREY, "Te equipaste con un escudo antidisturbios.");
            PlayerPlaySoundEx(playerid, 1036);
            SetPlayerAttachedObject(playerid, 19, 18637, 5);
            EscudoAntidisturbios[playerid] = 1;
            return 1;
            }
            else
            }
            SendClientMessage(playerid, COLOR_GREY, "ЎDebes coger el escudo de la armerнa o de un Enforcer!");
    }
    return 0;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
    return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
    return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
    return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
    return 1;
}

public OnRconCommand(cmd[])
{
    return 1;
}

public OnPlayerRequestSpawn(playerid)
{
    return 1;
}

public OnObjectMoved(objectid)
{
    return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
    return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
    return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
    return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
    return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
    return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
    return 1;
}

public OnPlayerExitedMenu(playerid)
{
    return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
    return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
    return 1;
}

public OnPlayerUpdate(playerid)
{
    return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
    return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
    return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
    return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    return 1;
}

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
    return 1;
}
Reply
#4

Exacto, era solo eso pero ponlo donde estбn los news para que quede mucho mбs ordenado el cуdigo, ya que a la hora de resolver problemas, es muy importante el orden, ayudarб muchнsimo en soluccionarlo.
Reply
#5

Muchas gracias, pero el cуdigo que me dio Mr.GeEk da los siguientes errores:

Код:
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(115) : error 017: undefined symbol "PlayerPlaySoundEx"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : error 017: undefined symbol "GetDistanceToCar"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : error 017: undefined symbol "GetDistanceToCar"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : error 029: invalid expression, assumed zero
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


5 Errors.
Y si ademбs subo el

pawn Код:
new EscudoAntidisturbios[MAX_PLAYERS]
con los demбs news, salen siete errores. Ese era el motivo por el que no lo juntй con los otros news:

Код:
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(7) : error 017: undefined symbol "MAX_PLAYERS"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(7) : error 009: invalid array size (negative, zero or out of bounds)
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(115) : error 017: undefined symbol "PlayerPlaySoundEx"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : error 017: undefined symbol "GetDistanceToCar"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : error 017: undefined symbol "GetDistanceToCar"
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : error 029: invalid expression, assumed zero
C:\Users\Administrador\Desktop\Escritorio\SAMPserver\gamemodes\escudo.pwn(120) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


7 Errors.
Algunas funciones que sн que existen me las toma como no definidas. їO es que GetDistanceToCar o PlayPlayerSoundEx no existen?

Muchas gracias.
Reply
#6

Pues esos errores son de no definidos, algo mal estarбs haciendo
Reply
#7

He retocado un poco el cуdigo y ya compila.
El problema es que al probarlo no carga absolutamente nada del script. Es decir, sуlo existe una clase: CJ en Blueberry y sin armas. Todos los comandos devuelven SERVER: UNKNOWN COMMAND y los vehнculos no aparecen. No aparecen pero al consultar los "bandwith statics" aparecen 7 vehнculos cargados...

їAlguien sabe a que se debe? Es como si no se estuviese ejecutando el gamemode...
Ya me asegurй de ponerlo en server.cfg, y de hecho el nombre del servidor y del script aparecen sin problemas.
Gracias por la ayuda.
Reply
#8

Ya descubrн el error, pero no como solucionarlo.
Al ejecutar samp-server.exe, aparece este mensaje en la consola:
Script[gamemodes/escudo.amx]: Run time error 20: "Invalid index parameter (bad entry point)"

Leн que se arregla aсadiendo main () {} delante de OnGameModeInit, pero eso no me solucionу el error.
Gracias, a ver si alguno sabe a quй se debe...
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)