geso Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) // de water gate die open gaat { new watergate CreateObject(971, 431.088684, -1995.396362, 1.585920, 0.0000, 0.0000, 270.0000); //water gate open gaan } { if(IsPlayerAdmin(playerid)) { if (strcmp("/xwateropen", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(watergate, 436.088684, -1995.396362, 1.585920, 2.00); format(string, sizeof(string), "water gate is opening", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } } //de weg gate die open gaat { new weggate CreateObject(971, 369.991943, -1944.958252, 10.216808, 0.0000, 0.0000, 180.0000); //weg gate moet opengaan } { if(IsPlayerAdmin(playerid)) { if (strcmp("/xroadopen", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(weggate, 374.991943, -1944.958252, 10.216808, 2.00); format(string, sizeof(string), "road gate is opening", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } } //NU DE CLOSINGS!! { if(IsPlayerAdmin(playerid)) { if (strcmp("/xroadclose", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(weggate, 369.991943, -1944.958252, 10.216808, 2.00); format(string, sizeof(string), "road gate is opening", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } } { if(IsPlayerAdmin(playerid)) { if (strcmp("/xwaterclose", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(watergate, 431.088684, -1995.396362, 1.585920, 2.00); format(string, sizeof(string), "water gate is opening", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } } Dit laatste heb ik onder "OnGameModeInit" geplaatst, maar ik krijg de volgende errors: C:\Program Files\Rockstar Games\GTA San Andreas\gamemodes\race.pwn(57) : error 001: expected token: ";", but found "-identifier-" C:\Program Files\Rockstar Games\GTA San Andreas\gamemodes\race.pwn(57) : warning 203: symbol is never used: "watergate" C:\Program Files\Rockstar Games\GTA San Andreas\gamemodes\race.pwn(57 -- 61) : error 017: undefined symbol "playerid" C:\Program Files\Rockstar Games\GTA San Andreas\gamemodes\race.pwn(57 -- 63) : error 017: undefined symbol "cmdtext" C:\Program Files\Rockstar Games\GTA San Andreas\gamemodes\race.pwn(57 -- 63) : fatal error 107: too many error messages on one line Wat heb ik verkeerd gedaan, er zijn bovendien nog wat andere objects maar die zijn hier niet nodig. Kan iemand pls in een reply het hele ding verbeteren? Bewerkt: 7 januari 2010 door geso Reageren
.Timothy Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 Hallo geso, Aan de code die je hebt neergezet te zien, heb je het scripten met PAWN nog niet helemaal begrepen. Ik raad je aan eens deze tutorial, waarin de basis van PAWN wordt uitgelegd met voorbeelden, door te lezen. Reageren
GTAguillaume Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) new watergate; // ; vergeten... Dit laatste heb ik onder "OnGameModeInit" geplaatst, maar ik krijg de volgende errors: Je bedoelt het eerste, toch? :S EDIT: format(string, sizeof(string), "water gate is opening", movetime); Moet zoiets zijn: format(string, sizeof(string), "water gate is opening with a speed of %i.", movetime); EDIT2: Je maakt 2keer de variabele 'watergate' aan. Bewerkt: 7 januari 2010 door GTAguillaume Reageren
geso Geplaatst: 7 januari 2010 Auteur Rapport Geplaatst: 7 januari 2010 (bewerkt) Hallo geso, Aan de code die je hebt neergezet te zien, heb je het scripten met PAWN nog niet helemaal begrepen. Ik raad je aan eens deze tutorial, waarin de basis van PAWN wordt uitgelegd met voorbeelden, door te lezen. Ik weet het, ik doe dit samen met een vriend, we zijn net begonnen, maar kan iemand ons laten zien hoe dit wel moet dan? Kan iemand gewoon even het hele ding voor mij verbeteren want ik kom er niet uit?? Bewerkt: 7 januari 2010 door geso Reageren
GTAguillaume Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) Dit zou zoiets moeten zijn: Op de top van je script: new watergate[2] OnGameModeInit watergate[0] = CreateObject(971, 431.088684, -1995.396362, 1.585920, 0.0000, 0.0000, 270.0000); //water gate open gaan watergate[1] = CreateObject(971, 369.991943, -1944.958252, 10.216808, 0.0000, 0.0000, 180.0000); //weg gate moet opengaan public OnPlayerCommandText(playerid, cmdtext[]) { if(IsPlayerAdmin(playerid)) { if (strcmp("/xwateropen", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(watergate, 436.088684, -1995.396362, 1.585920, 2.00); format(string, sizeof(string), "water gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } if(IsPlayerAdmin(playerid)) { if (strcmp("/xroadopen", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(weggate, 374.991943, -1944.958252, 10.216808, 2.00); format(string, sizeof(string), "road gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } //NU DE CLOSINGS!! if(IsPlayerAdmin(playerid)) { if (strcmp("/xroadclose", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(weggate, 369.991943, -1944.958252, 10.216808, 2.00); format(string, sizeof(string), "road gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } { if(IsPlayerAdmin(playerid)) { if (strcmp("/xwaterclose", cmdtext, true, 10) == 0) { new string[50]; new movetime = MoveObject(watergate, 431.088684, -1995.396362, 1.585920, 2.00); format(string, sizeof(string), "water gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } return 0; } EDIT: Lees dit eens. Bewerkt: 7 januari 2010 door GTAguillaume Reageren
geso Geplaatst: 7 januari 2010 Auteur Rapport Geplaatst: 7 januari 2010 OnGameModeIntel??? :S Reageren
.Timothy Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 Gezien het aantal fouten, ben ik niet van plan om de gehele code, verbeterd en wel, hier te gaan plaatsen. Om zulke grove fouten te voorkomen, raad ik jullie echt aan die tutorial door te gaan lezen. Als ik de code zo bekijk, zie ik van alles door elkaar en (sorry als ik dit verkeerd heb) er ook behoorlijk wat gekopieerd en geplakt is zonder dat je wist wat je echt aan het doen was. PAWN'en doe je echt niet binnen een paar minuutjes, daar moet echt wel even voor gaan zitten en je hoofd erbij houden (ook al is dit nog een relatief makkelijke programmeertaal ten opzichte van andere). Sorry, maar ik ga deze code niet voor jullie verbeteren, verstandiger is om die tutorial gewoon door te gaan lezen. @ Freaksken: Je snapt 't zelf ook niet, geloof ik? OnGameModeIntel -> OnGameModeInit Je sluit OnPlayerCommandText af, vervolgens open je weer iets zonder naam De uitlijning is zeer beroerd -ga zo maar door- Excuus voor als ik iets te hard ben, maar wat ik hier tot nu toe gezien heb, is vrij beroerd.. @ geso: Daar gaan we al, lees gewoon even die tutorial door. Reageren
geso Geplaatst: 7 januari 2010 Auteur Rapport Geplaatst: 7 januari 2010 Gezien het aantal fouten, ben ik niet van plan om de gehele code, verbeterd en wel, hier te gaan plaatsen. Om zulke grove fouten te voorkomen, raad ik jullie echt aan die tutorial door te gaan lezen. Als ik de code zo bekijk, zie ik van alles door elkaar en (sorry als ik dit verkeerd heb) er ook behoorlijk wat gekopieerd en geplakt is zonder dat je wist wat je echt aan het doen was. PAWN'en doe je echt niet binnen een paar minuutjes, daar moet echt wel even voor gaan zitten en je hoofd erbij houden (ook al is dit nog een relatief makkelijke programmeertaal ten opzichte van andere). Sorry, maar ik ga deze code niet voor jullie verbeteren, verstandiger is om die tutorial gewoon door te gaan lezen. Ik verplicht je niet om te helpen... Het zou alleen fijn zijn als iemand het deed. Reageren
GTAguillaume Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) OnGameModeIntel??? :S Oops, klein spellings-foutje: OnGameModeInit. Maar lees de volgende keer dit eens door. @hieronder: Wat? Ik heb messchien niet alle fouten eruit kunnen halen maar dat wil niet zeggen dat ik het niet kan... Bewerkt: 7 januari 2010 door GTAguillaume Reageren
Remcconen Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 (bewerkt) public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/xwateropen", cmdtext, true) == 0) { if(IsPlayerAdmin(playerid)) { new string[50]; new movetime = MoveObject(watergate, 436.088684, -1995.396362, 1.585920, 2.00); format(string, sizeof(string), "water gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } if (strcmp("/xroadopen", cmdtext, true) == 0) { if(IsPlayerAdmin(playerid)) { new string[50]; new movetime = MoveObject(weggate, 374.991943, -1944.958252, 10.216808, 2.00); format(string, sizeof(string), "road gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } if (strcmp("/xroadclose", cmdtext, true) == 0) { if(IsPlayerAdmin(playerid)) { new string[50]; new movetime = MoveObject(weggate, 369.991943, -1944.958252, 10.216808, 2.00); format(string, sizeof(string), "road gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } if (strcmp("/xwaterclose", cmdtext, true) == 0) { if(IsPlayerAdmin(playerid)) { new string[50]; new movetime = MoveObject(watergate, 431.088684, -1995.396362, 1.585920, 2.00); format(string, sizeof(string), "water gate is opening (time %i)", movetime); SendClientMessage(playerid, 0xFF000000, string); return 1; } } return 0; } Dit moet aardig kloppen. Maar ga nu eerst de tutorial lezen die gegeven is, want dit is de enige code die ik als voorbeeld voor jullie verbeter! @ hierboven: Voor jou is het ook verstandig die tutorial te leren. Bewerkt: 7 januari 2010 door Remcconen Reageren
legodude Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 ik ben de vriend wwaarover geso het al had ik heb dit stukje code gemaakt en inder daad de combinaties ctrl+c en ctrl+v zijn mijn favo's XD >>> Door Sandra: Toch raden we je dit ten zeerste af! Van knippen en plakken leer je niets!<<< ik kan ondertussen wel structuren dromen van hoe programmas werken en samp server functies vallen voor mij daar ook onder is het niet gewoon opgelost als je de stukjes van de nieuwe variabelen net boven gamemodeinit laat staan en de rest gewoon onde onplayercommandtext?? Reageren
GTAguillaume Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 ik ben de vriend wwaarover geso het al had ik heb dit stukje code gemaakt en inder daad de combinaties ctrl+c en ctrl+v zijn mijn favo's XD ik kan ondertussen wel structuren dromen van hoe programmas werken en samp server functies vallen voor mij daar ook onder is het niet gewoon opgelost als je de stukjes van de nieuwe variabelen net boven gamemodeinit laat staan en de rest gewoon onde onplayercommandtext?? Je moet de variabelen boven gamemodeinit zetten en in gamemodeinit moet je je objecten aanmaken, en onplayercommandtext moet je gewoon zetten wat je ermee wilt doen. Reageren
.Timothy Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 Ik geloof dat je je sommige dingen makkelijker voorstelt dan ze daadwerkelijk zijn..? Ik zal even uitleggen waarom het één buiten alle callbacks staat, de ander binnen OnGameModeInit en weer een ander onder OnPlayerCommandText, aangezien het daar voor jullie misgaat heb ik het idee. Omdat de variabelen watergate en dergelijke niet alleen in OnGameModeInit wordt gebruikt, dient deze buiten alle callbacks te staan. In dat geval is de variabele overal gedefinieerd en is het niet een locale variabele binnen één callback. De objecten maak je aan in OnGameModeInit, die callback wordt het allereerst geladen als je je server start. Daarmee worden dus alle personages, objecten, voertuigen en dergelijke geladen. OnPlayerCommandText wordt geladen als een bezoeker van je server een commando typt, bijvoorbeeld /opengate. SA-MP is NIET simpel knip- en plakwerk. @ hieronder: Excuses, dat had er moeten staan. Verbeterd. Reageren
legodude Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 OnGameModeInit wordt geladen als een bezoeker van je server een commando typt, bijvoorbeeld /opengate je bedoelt onplayercommandtext?? Reageren
Crusher!! Geplaatst: 7 januari 2010 Rapport Geplaatst: 7 januari 2010 OnPlayerCommandText(playerid, cmdtext[]) gates script: >Hier< (Pastebin) vervang ff de coordinaten x,y,z,rx,ry,rz 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.