-
Üdv! Elkezdtem csinálni egy teleport menüt és amikor a compile/run-ra rákattintottam akkot több mint 10 hibát írt ki. Ilyenkor mi a teendõ? Így néz ki a pwn fájlom:
#include <a_samp>
new Menu:telemenu; // Teleport
#define FILTERSCRIPT
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print(\"\\n--------------------------\");
print(\"Teleport menu by Admin_Mark\");
print(\"----------------------------\\n\");
}
tele = CreateMenu(\"Teleport menu\", 2, 55.0, 200.0, 100.0, 80.0);
CreateMenu(Teleportok, 1, Float:11, Float:12, Float:col1width, Float:col2width);
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 1, \"Négysárkány\");
AddMenuItem(teleportmenu, 1, \"Kalózhajó\");
AddMenuItem(teleportmenu, 1, \"Kilátó\");
AddMenuItem(teleportmenu, 1, \"Reptér\");
AddMenuItem(menuid, column, text);
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print(\"\\n--------------------------\");
print(\"Teleport menu Admin_Mark\");
print(\"----------------------------\\n\");
}
#endif
if(strcmp(cmdtext, \"/teleport\", true) == 0)
{
ShowMenuForPlayer(teleportmenu,playerid);
return 1;
}
public OnPlayerSelectedMenuRow(
new Menu:CurrentMenu = GetPlayerMenu(playerid);
if(CurrentMenu == teleportmenu)
{
switch(row)
{
case 0: // Négysárkány
{
SetPlayerPos(playerid, 2030.5493,1005.9794,10.8203);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a 4sárkány kaszinónál!\");
}
case 1: // Kalózhajó
{
SetPlayerPos(playerid, 2005.7351,1544.1106,13.5228);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a kalózhajónál!\");
}
case 2: // Kilátó
{
SetPlayerPos(playerid, 1937.1575,1627.7998,72.2578);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a kilátónál!\");
}
case 3: // Reptér
{
SetPlayerPos(playerid, 1316.5859,1268.2867,10.8203);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a reptérnél!\");
}
}
}
public OnPlayerExitedMenu(playerid)
{
TogglePlayerControllable(playerid, true);
return 1;
}
-
De szerintem tedd ki a hibákat
-igy
És igy tudni fogják mi a baj,és tudnak segitteni.
-
én megpróbáltam lekompilálni, de nekem 20 errort ir :D
-
Nagy hibák voltak benne de kijavítottam neked. A dialoggal könnyebb lenne mer ez a menü már elég elavult. De ha tezel akarsz dolgozni akkor ajánlom ezt a tutorialt.
#include <a_samp>
new Menu:teleportmenu;
public OnFilterScriptInit()
{
print(\"\\n--------------------------\");
print(\"Teleport menu by Admin_Mark\");
print(\"----------------------------\\n\");
teleportmenu = CreateMenu(\"Teleport menu\", 2, 55.0, 200.0, 100.0, 80.0);
CreateMenu(\"Teleportok\", 2, 55.0, 200.0, 100.0, 80.0);
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 0, \"LV\");
AddMenuItem(teleportmenu, 1, \"Négysárkány\");
AddMenuItem(teleportmenu, 1, \"Kalózhajó\");
AddMenuItem(teleportmenu, 1, \"Kilátó\");
AddMenuItem(teleportmenu, 1, \"Reptér\");
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, \"/teleport\", true) == 0)
{
ShowMenuForPlayer(teleportmenu,playerid);
return 1;
}
return 0;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
new Menu:current;
current = GetPlayerMenu(playerid);
if(current == teleportmenu)
{
switch(row)
{
case 0: // Négysárkány
{
SetPlayerPos(playerid, 2030.5493,1005.9794,10.8203);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a 4sárkány kaszinónál!\");
}
case 1: // Kalózhajó
{
SetPlayerPos(playerid, 2005.7351,1544.1106,13.5228);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a kalózhajónál!\");
}
case 2: // Kilátó
{
SetPlayerPos(playerid, 1937.1575,1627.7998,72.2578);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a kilátónál!\");
}
case 3: // Reptér
{
SetPlayerPos(playerid, 1316.5859,1268.2867,10.8203);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, 0xFFFFFFFF, \"Üdv a reptérnél!\");
}
}
}
}
public OnPlayerExitedMenu(playerid)
{
TogglePlayerControllable(playerid, true);
return 1;
}
Nem biztos, hogy jó mert nem teszteltem. (pawno nem írt hibát)
-
Ezt írta ki kompilálásnál:
C:\\Program Files\\Rockstar Games\\tele.pwn(16) : error 010: invalid function or declaration
C:\\Program Files\\Rockstar Games\\tele.pwn(18) : error 021: symbol already defined: \"CreateMenu\"
C:\\Program Files\\Rockstar Games\\tele.pwn(20) : error 021: symbol already defined: \"AddMenuItem\"
C:\\Program Files\\Rockstar Games\\tele.pwn(25) : error 021: symbol already defined: \"AddMenuItem\"
C:\\Program Files\\Rockstar Games\\tele.pwn(30) : error 021: symbol already defined: \"AddMenuItem\"
C:\\Program Files\\Rockstar Games\\tele.pwn(49) : error 010: invalid function or declaration
C:\\Program Files\\Rockstar Games\\tele.pwn(52) : error 010: invalid function or declaration
C:\\Program Files\\Rockstar Games\\tele.pwn(57) : error 010: invalid function or declaration
C:\\Program Files\\Rockstar Games\\tele.pwn(57) : warning 221: label name \"Menu\" shadows tag name
C:\\Program Files\\Rockstar Games\\tele.pwn(57) : warning 203: symbol is never used: \"Menu\"
C:\\Program Files\\Rockstar Games\\tele.pwn(57) : error 010: invalid function or declaration
C:\\Program Files\\Rockstar Games\\tele.pwn(57 -- 59) : error 010: invalid function or declaration
C:\\Program Files\\Rockstar Games\\tele.pwn(57 -- 59) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
11 Errors.
Ha azt mondjátok hogy dialoggal könnyebb akkor kipróbálom.
Amúgy tudnátok ajánlani vmi tutorialt a dialogról? :D
-
dialogról leírás:
http://wiki.sa-mp.com/wiki/How_to_Create_a_Dialog