Jump to content
  • 0

Problema undefined symbol la compilare


Question

Posted

Se pare ca vechiul topic este inchis pentru un motiv neclar. Dl. ![]stuntman[]! ar putea sa fie explicit si sa nu tranteasca un cuvant cu pretentia ca eu sa imi dau seama la ce se gandea.

Problema comanda - comanda aceea are o problema. Ce vrei mai mult sa zic in titlu ?

Am o problema pe care nu stiu sa o rezolv.

[pawn]// This is a comment

    // uncomment the line below if you want to write a filterscript

    //#define FILTERSCRIPT

   

    #include <a_samp>

   

    #if defined FILTERSCRIPT

   

    new GetJob[MAX_PLAYERS];

    new Job[MAX_PLAYERS];

   

    public OnFilterScriptInit()

    {

            print("\n--------------------------------------");

            print(" Blank Filterscript by your name here");

            print("--------------------------------------\n");

            return 1;

    }

   

    public OnFilterScriptExit()

    {

            return 1;

    }

   

    #else

   

    main()

    {

            print("\n----------------------------------");

            print(" Blank Gamemode by your name here");

            print("----------------------------------\n");

    }

   

    #endif

   

    public OnGameModeInit()

    {

            // Don't use these lines if it's a filterscript

            SetGameModeText("Blank Script");

            AddPlayerClass(0,353.7911,832.9452,25.2110,14.1336,0,0,0,0,0,0);

            AddStaticVehicleEx(406,336.4299,881.7312,21.9305,334.6515,1,1,1); // Dumper

            AddStaticVehicleEx(524,359.7957,883.4227,20.0997,353.4359,26,124,1); // Utilitara

            AddStaticVehicleEx(552,375.4082,895.1499,20.0998,17.7352,26,124,1); // Betoniera

            AddStaticPickup(1239,1,816.8334,856.6155,12.7891,-1); // I-ul pentru job

            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)

    {

            GetJob[playerid] = 0;

            Job[playerid] = 0;

            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(cmd,"/join",true))

            {

                    if(IsPlayerInRangeOfPoint(playerid,3,816.8334,856.6155,12.7891))

                    {

                        SendClientMessage(playerid,0x33CCFFAA,"Esti pe cale sa devii constructor si sa inchei un contract pe o ora.");

                        SendClientMessage(playerid,0x33CCFFAA,"Trebuie sa-ti indeplinesti contractul mai intai daca doresti sa-ti dai demisia mai tarziu.");

                        SendClientMessage(playerid,0x33CCFFAA,"Daca esti sigur ca vrei sa devii constructor tasteaza /acceptjob.");

                        new GettingJob[MAX_PLAYERS];

                        GetJob[playerid] = 1;

                    }

                    return 1;

            }

   

            if(!strcmp(cmd,"/acceptjob",true))

            {

                if(GettingJob[playerid] > 0)

                {

                    SendClientMessange(playerid,0x33CCFFAA,"Acum ca ai confirmat ca vrei job-ul, ai semnat un contract de o ora.");

                    SendClientMessange(playerid,0x33CCFFAA,"Felicitari pentru noul tau job. Tasteaza /help pentru a vedea noile tale comenzi.");

                        new Job[MAX_PLAYERS];

                    GetJob[playerid] = 0;

                    Job[playerid] = 1;

                }

                return 1;

            }

            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;

    }

[/pawn]

Asta e tot fisierul. Iar eroarea pe care o da la compilare este :

C:\Users\zdrux\Desktop\script\gamemodes\gm.pwn(63) : error 017: undefined symbol "GetJob"
C:\Users\zdrux\Desktop\script\gamemodes\gm.pwn(63) : warning 215: expression has no effect
C:\Users\zdrux\Desktop\script\gamemodes\gm.pwn(63) : error 001: expected token: ";", but found "]"
C:\Users\zdrux\Desktop\script\gamemodes\gm.pwn(63) : error 029: invalid expression, assumed zero
C:\Users\zdrux\Desktop\script\gamemodes\gm.pwn(63) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

Scriptul l-am pus si aici : http://pastebin.com/w51KHJXs ca sa puteti sa vedeti liniile.

Pentru cei carora le este lene pun si linia separat:

LINIA 63: GetJob[playerid] = 0;

Ma lamureste cineva concret ce are si sa nu posteze pentru a se afla in treaba ? Sau nu stie nimeni de pe forum ce are ?

3 answers to this question

Recommended Posts

Posted

http://www.sa-mp.ro/forum/index.php/topic,18063.msg105863.html#msg105863

Ce nu era clar ?

Pune

[pawn]new GetJob[MAX_PLAYERS];

new Job[MAX_PLAYERS];[/pawn]

deasupra la #if defined FILTERSCRIPT

Sau mai bine schimba toata prostia aia de cod cu callbackuri nefolositoare cu codul asta:

#include <a_samp>

new GetJob[MAX_PLAYERS], Job[MAX_PLAYERS];

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

public OnGameModeInit()
{
		// Don't use these lines if it's a filterscript
		SetGameModeText("Blank Script");
		AddPlayerClass(0,353.7911,832.9452,25.2110,14.1336,0,0,0,0,0,0);
		AddStaticVehicleEx(406,336.4299,881.7312,21.9305,334.6515,1,1,1); // Dumper
		AddStaticVehicleEx(524,359.7957,883.4227,20.0997,353.4359,26,124,1); // Utilitara
		AddStaticVehicleEx(552,375.4082,895.1499,20.0998,17.7352,26,124,1); // Betoniera
		AddStaticPickup(1239,1,816.8334,856.6155,12.7891,-1); // I-ul pentru job
		return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
		if(strcmp(cmdtext,"/join",true) == 0)
		{
				if(IsPlayerInRangeOfPoint(playerid,3,816.8334,856.6155,12.7891))
				{
					SendClientMessage(playerid,0x33CCFFAA,"Esti pe cale sa devii constructor si sa inchei un contract pe o ora.");
					SendClientMessage(playerid,0x33CCFFAA,"Trebuie sa-ti indeplinesti contractul mai intai daca doresti sa-ti dai demisia mai tarziu.");
					SendClientMessage(playerid,0x33CCFFAA,"Daca esti sigur ca vrei sa devii constructor tasteaza /acceptjob.");
					new GettingJob[MAX_PLAYERS];
					GetJob[playerid] = 1;
				}
				return 1;
		}

		if(strcmp(cmdtext,"/acceptjob",true) == 0)
		{
			if(GettingJob[playerid] > 0)
			{
				SendClientMessange(playerid,0x33CCFFAA,"Acum ca ai confirmat ca vrei job-ul, ai semnat un contract de o ora.");
				SendClientMessange(playerid,0x33CCFFAA,"Felicitari pentru noul tau job. Tasteaza /help pentru a vedea noile tale comenzi.");
				new Job[MAX_PLAYERS];
				GetJob[playerid] = 0;
				Job[playerid] = 1;
			}
			return 1;
		}
		return 0;
}

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.