newbie Geplaatst: 6 januari 2010 Rapport Geplaatst: 6 januari 2010 (bewerkt) Alles is opgelost, dus reageer a.u.b. niet meer Dit was de post eerst: Ik heb een command: public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/psl", cmdtext, true)) { moveobject (3114, 1443.6716308594, -1537.8446044922, 65.588470458984, 5); return 1; } return 0; } Dit command doet een poort open en dicht, maar er zit een fout in maar ik weet niet welke... Pawno geeft fout: undefined symbol "moveobject" Bewerkt: 8 januari 2010 door newbie Reageren
Freaksken Geplaatst: 6 januari 2010 Rapport Geplaatst: 6 januari 2010 (bewerkt) MoveObject(3114, 1443.6716308594, -1537.8446044922, 65.588470458984, 5); Pawno is hoofdlettergevoelig, hé. EDIT: Je kan beter dit doen. new Poort; forward ResetPoort(); public OnGameModeInit() { Poort = CreateObject(3114, X, Y, Z, rX, rY, rZ);//Vul hier je coordinaten in als de poort nog niet open is (X,Y,Z,rX,rY,rZ) return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/open", cmdtext, true, 10) == 0)//Command om de poort te openen { if(!IsPlayerAdmin(playerid)) return 0;//Als je niet wilt dat alleen admins dit kunnen doen mag je deze regel weglaten MoveObject(Poort, 1443.6716308594, -1537.8446044922, 65.588470458984, 5);//Open poort SetTimer("ResetPoort", 5000, false);//Poort sluit vanzelf na 5 seconden (1000 = 1 seconde) return 1; } return 0; } public ResetPoort() { MoveObject(Poort, X, Y, Z,5);//Vul hier weer de coordinaten in als de poort nog toe is (X,Y,Z) } Bewerkt: 6 januari 2010 door Freaksken Reageren
newbie Geplaatst: 6 januari 2010 Auteur Rapport Geplaatst: 6 januari 2010 (bewerkt) Nu krijg ik: SERVER: UNKNOWN COMMAND Bewerkt: 7 januari 2010 door newbie Reageren
Wanted Geplaatst: 6 januari 2010 Rapport Geplaatst: 6 januari 2010 Verander public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/open", cmdtext, true, 10) == 0)//Command om de poort te openen { if(!IsPlayerAdmin(playerid)) return 0;//Als je niet wilt dat alleen admins dit kunnen doen mag je deze regel weglaten MoveObject(Poort, 1443.6716308594, -1537.8446044922, 65.588470458984, 5);//Open poort SetTimer("ResetPoort", 5000, false);//Poort sluit vanzelf na 5 seconden (1000 = 1 seconde) return 1; } return 0; } naar public OnPlayerCommandText(playerid, cmdtext[]) { if (!strcmp("/open", cmdtext, true, 10) == 0)//Command om de poort te openen { if(!IsPlayerAdmin(playerid)) return 0;//Als je niet wilt dat alleen admins dit kunnen doen mag je deze regel weglaten MoveObject(Poort, 1443.6716308594, -1537.8446044922, 65.588470458984, 5);//Open poort SetTimer("ResetPoort", 5000, false);//Poort sluit vanzelf na 5 seconden (1000 = 1 seconde) return 1; } return 0; } Reageren
GTAguillaume Geplaatst: 6 januari 2010 Rapport Geplaatst: 6 januari 2010 Verander public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/open", cmdtext, true, 10) == 0)//Command om de poort te openen { if(!IsPlayerAdmin(playerid)) return 0;//Als je niet wilt dat alleen admins dit kunnen doen mag je deze regel weglaten MoveObject(Poort, 1443.6716308594, -1537.8446044922, 65.588470458984, 5);//Open poort SetTimer("ResetPoort", 5000, false);//Poort sluit vanzelf na 5 seconden (1000 = 1 seconde) return 1; } return 0; } naar public OnPlayerCommandText(playerid, cmdtext[]) { if (!strcmp("/open", cmdtext, true, 10) == 0)//Command om de poort te openen { if(!IsPlayerAdmin(playerid)) return 0;//Als je niet wilt dat alleen admins dit kunnen doen mag je deze regel weglaten MoveObject(Poort, 1443.6716308594, -1537.8446044922, 65.588470458984, 5);//Open poort SetTimer("ResetPoort", 5000, false);//Poort sluit vanzelf na 5 seconden (1000 = 1 seconde) return 1; } return 0; } Waarom? nu zet je er 2keer negatief in... if (!strcmp("/open", cmdtext, true))// doe die 10 weg, /open bestaat uit 5 letters... Reageren
Freaksken Geplaatst: 6 januari 2010 Rapport Geplaatst: 6 januari 2010 (bewerkt) Waarom? nu zet je er 2keer negatief in... if (!strcmp("/open", cmdtext, true))// doe die 10 weg, /open bestaat uit 5 letters... Ja, maar dat verhelpt het "SERVER UNKNOWN COMMAND" bericht niet. Die "!strcmp" is helemaal niet nodig! Je krijgt "SERVER UNKNOWN COMMAND" omdat je niet als amdin bent ingelogd. Dan denken de mensen die geen admin zijn en dat command gebruiken, dat dat command niet bestaat. Als je niet wil dat niet-admins "SERVER UNKNOWN COMMAND" krijgen, verander dit: if(!IsPlayerAdmin(playerid)) return 0; naar dit: if(!IsPlayerAdmin(playerid)) return 1; Bewerkt: 6 januari 2010 door Freaksken Reageren
Crusher!! Geplaatst: 6 januari 2010 Rapport Geplaatst: 6 januari 2010 (bewerkt) if(!IsPlayerAdmin(playerid)) return 0; naar dit: if(!IsPlayerAdmin(playerid)) return 1; haal die line weg want met return 1; stop je alsnog de command. EDIT: voor die gates Kijk eens hier[ Bewerkt: 6 januari 2010 door Crusher!! Reageren
newbie Geplaatst: 7 januari 2010 Auteur Rapport Geplaatst: 7 januari 2010 Die van die site werkt ook niet goed, zitten een paar fouten in. Heb hem namelijk nu ingevuld, dan heb ik dit: #include <a_samp> //==================================================================== //--------------[ Het onderste kan je veranderen. ]------------------ //==================================================================== #define _MOVE_SPEED 1.0 // snelheid van het open / dicht gaan. #define _RCON_ONLY false // true = aan, false = uit. new Float:Gates[4][6] = // stel hieronder je coords in. { {1443.6716308594, -1537.8446044922, 12, 0, 0, 348.09}, //gate 1 open {1443.6716308594, -1537.8446044922, 66, 0, 0, 348.09}, //gate 1 dicht {2313.8107910156, -1218.1257324219, 20.088232040405, 0, 0, 89.324493408203}, //gate 2 open {2360.8818359375, -1271.8779296875, 20.064821243286, 0, 0, 269.0546875} //gate 2 dicht }; //==================================================================== //--------------[ Vanaf hier niks meer veranderen ]------------------- //==================================================================== #define _MENU_ITEMS 4 // niet veranderen. new gate1,gate2,Menu:menu; // niet veranderen. new MenuStrings[4][128] = {"Gate 1 open", "Gate 1 close", "Gate 2 open", "Gate 2 close"}; // menu opties, je kan de tekst veranderen. public OnGameModeInit() { menu = CreateMenu("Test Menu", 1, 200.0, 150.0, 200.0, 200.0); // maakt menu. for(new x=0; x < _MENU_ITEMS; x++) { AddMenuItem(menu, 0, MenuStrings[x]); // add menu keuzes. } gate1 = CreateObject(980, 0.0,0.0,0.0, 0, 0, 0); //gate1. gate2 = CreateObject(980, 0.0,0.0,0.0, 0, 0, 0); //gate2. SetObjectPos(gate1,Gates[0][0],Gates[0][1],Gates[0][2]); // maakt gesloten gate 1. SetObjectRot(gate1,Gates[0][3],Gates[0][4],Gates[0][5]); // maakt gesloten gate 1. SetObjectPos(gate2,Gates[2][0],Gates[2][1],Gates[2][2]); // maakt gesloten gate 2. SetObjectRot(gate2,Gates[2][3],Gates[2][4],Gates[2][5]); // maakt gesloten gate 2. return true; } public OnGameModeExit() { DestroyObject(gate1); // vernietigd gate1. DestroyObject(gate2); // vernietigd gate2. DestroyMenu(menu); // vernietigd het menu. return true; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/gate", cmdtext, true, 5) == 0 || strcmp("/gates", cmdtext, true, 5) == 0) // je kan /gate of /gates typen. { ShowMenuForPlayer(menu,playerid); return true; } return false; } public OnPlayerSelectedMenuRow(playerid, row) { new Menu:PlayerMenu = GetPlayerMenu(playerid); if(PlayerMenu == menu) { #if _RCON_ONLY == true if(!IsPlayerAdmin(playerid)) return false; #endif Object(row); return true; } return false; } Object(row) { if(!IsValidObject(gate1)) return false; if(!IsValidObject(gate2)) return false; switch(row) { case 0: { MoveObject(gate1,Gates[1][0],Gates[1][1],Gates[1][2],_MOVE_SPEED); // opend gate 1 SetObjectRot(gate1,Gates[1][3],Gates[1][4],Gates[1][5]); // opend gate 1 } case 1: { MoveObject(gate1,Gates[0][0],Gates[0][1],Gates[0][2],_MOVE_SPEED); // sluit gate 1 SetObjectRot(gate1,Gates[0][3],Gates[0][4],Gates[0][5]); // sluit gate 1 } case 2: { MoveObject(gate2,Gates[3][0],Gates[3][1],Gates[3][2],_MOVE_SPEED); // opend gate 2 SetObjectRot(gate2,Gates[3][3],Gates[3][4],Gates[3][5]); // opend gate 2 } case 3: { MoveObject(gate2,Gates[2][0],Gates[2][1],Gates[2][2],_MOVE_SPEED); // sluit gate 2 SetObjectRot(gate2,Gates[2][3],Gates[2][4],Gates[2][5]); // sluit gate 2 } } return true; } En dan krijg ik deze fouten in Pawno: C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(11) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(11) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(11) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(12) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(12) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(12) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(13) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(13) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(14) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(14) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(72) : warning 217: loose indentation Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 11 Warnings. Reageren
Freaksken Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) haal die line weg want met return 1; stop je alsnog de command. Ja, dat is als je wilt dat een niet-admin het command wel kan doen. Hetgeen wat ik zeg is dat een niet-admin het command niet kan doen en oftewel een foutmelding krijgt (return 0;) en oftewel gewoon niets krijgt (return 1;) Bewerkt: 7 januari 2010 door Freaksken Reageren
Crusher!! Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) Die van die site werkt ook niet goed, zitten een paar fouten in. Heb hem namelijk nu ingevuld, dan heb ik dit: #include <a_samp> //==================================================================== //--------------[ Het onderste kan je veranderen. ]------------------ //==================================================================== #define _MOVE_SPEED 1.0 // snelheid van het open / dicht gaan. #define _RCON_ONLY false // true = aan, false = uit. new Float:Gates[4][6] = // stel hieronder je coords in. { {1443.6716308594, -1537.8446044922, 12, 0, 0, 348.09}, //gate 1 open {1443.6716308594, -1537.8446044922, 66, 0, 0, 348.09}, //gate 1 dicht {2313.8107910156, -1218.1257324219, 20.088232040405, 0, 0, 89.324493408203}, //gate 2 open {2360.8818359375, -1271.8779296875, 20.064821243286, 0, 0, 269.0546875} //gate 2 dicht }; //==================================================================== //--------------[ Vanaf hier niks meer veranderen ]------------------- //==================================================================== #define _MENU_ITEMS 4 // niet veranderen. new gate1,gate2,Menu:menu; // niet veranderen. new MenuStrings[4][128] = {"Gate 1 open", "Gate 1 close", "Gate 2 open", "Gate 2 close"}; // menu opties, je kan de tekst veranderen. public OnGameModeInit() { menu = CreateMenu("Test Menu", 1, 200.0, 150.0, 200.0, 200.0); // maakt menu. for(new x=0; x < _MENU_ITEMS; x++) { AddMenuItem(menu, 0, MenuStrings[x]); // add menu keuzes. } gate1 = CreateObject(980, 0.0,0.0,0.0, 0, 0, 0); //gate1. gate2 = CreateObject(980, 0.0,0.0,0.0, 0, 0, 0); //gate2. SetObjectPos(gate1,Gates[0][0],Gates[0][1],Gates[0][2]); // maakt gesloten gate 1. SetObjectRot(gate1,Gates[0][3],Gates[0][4],Gates[0][5]); // maakt gesloten gate 1. SetObjectPos(gate2,Gates[2][0],Gates[2][1],Gates[2][2]); // maakt gesloten gate 2. SetObjectRot(gate2,Gates[2][3],Gates[2][4],Gates[2][5]); // maakt gesloten gate 2. return true; } public OnGameModeExit() { DestroyObject(gate1); // vernietigd gate1. DestroyObject(gate2); // vernietigd gate2. DestroyMenu(menu); // vernietigd het menu. return true; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/gate", cmdtext, true, 5) == 0 || strcmp("/gates", cmdtext, true, 5) == 0) // je kan /gate of /gates typen. { ShowMenuForPlayer(menu,playerid); return true; } return false; } public OnPlayerSelectedMenuRow(playerid, row) { new Menu:PlayerMenu = GetPlayerMenu(playerid); if(PlayerMenu == menu) { #if _RCON_ONLY == true if(!IsPlayerAdmin(playerid)) return false; #endif Object(row); return true; } return false; } Object(row) { if(!IsValidObject(gate1)) return false; if(!IsValidObject(gate2)) return false; switch(row) { case 0: { MoveObject(gate1,Gates[1][0],Gates[1][1],Gates[1][2],_MOVE_SPEED); // opend gate 1 SetObjectRot(gate1,Gates[1][3],Gates[1][4],Gates[1][5]); // opend gate 1 } case 1: { MoveObject(gate1,Gates[0][0],Gates[0][1],Gates[0][2],_MOVE_SPEED); // sluit gate 1 SetObjectRot(gate1,Gates[0][3],Gates[0][4],Gates[0][5]); // sluit gate 1 } case 2: { MoveObject(gate2,Gates[3][0],Gates[3][1],Gates[3][2],_MOVE_SPEED); // opend gate 2 SetObjectRot(gate2,Gates[3][3],Gates[3][4],Gates[3][5]); // opend gate 2 } case 3: { MoveObject(gate2,Gates[2][0],Gates[2][1],Gates[2][2],_MOVE_SPEED); // sluit gate 2 SetObjectRot(gate2,Gates[2][3],Gates[2][4],Gates[2][5]); // sluit gate 2 } } return true; } En dan krijg ik deze fouten in Pawno: C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(11) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(11) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(11) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(12) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(12) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(12) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(13) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(13) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(14) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(14) : warning 213: tag mismatch C:\Users\Patrick\Desktop\SA-MP\filterscripts\Untitled.pwn(72) : warning 217: loose indentation Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 11 Warnings. komt omdat ik de script voor GtaF gewoon op GtaF zelf typ, niet in pawn, ik heb het eventje gefixt GTAFORUM Pastebin Bewerkt: 7 januari 2010 door Crusher!! Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.