Supermonkey Geplaatst: 26 maart 2008 Rapport Geplaatst: 26 maart 2008 (bewerkt) Hi, Zoals ik al eerder gemeld had, ben ik bezig met een gamemode. Ik ben echter tegen een probleem aangelopen. Ik heb via een FS een TextDraw gemaakt, die het prima doet. Ik heb die TextDraw 'InfoBox' genoemd. Daarin staat nu nog wat onzin, maar die ga ik later natuurlijk góed gebruiken. De FS heeft mij de code gegeven, waarna ik deze in mijn GM heb geplaats. Het FS was daarna niet meer nodig. Via het commando /infobox wordt dit schermpje getoond. Gaat helemaal prima. Maar hoe gaat dat schermpje dan weer weg? Daar heb ik een timer voor gebruikt. Alleen de timer werkt niet echt Bovenaan mijn GM: forward InfoBoxClose(playerid); Hiermee maak ik de InfoBoxClose functie aan Verderop in de GM geef ik de functie wat inhoud: public InfoBoxClose(playerid) { TextDrawHideForPlayer(playerid, Text:InfoBox); return 1; } Tenslotte roep ik de InfoBox op, om hem daarna weer te verbergen dmv de timer: if (strcmp(cmdtext, "/infobox", true)==0) { TextDrawShowForPlayer(playerid, Text:InfoBox); SetTimerEx("InfoBoxClose",5000, 0, "i", playerid); return 1; } De InfoBox wordt dus correct weergegeven, maar de timer werkt niet. Bij het Compilen van .pwn naar .amx zijn géén fouten en géén waarschuwingen. Wat doe ik hier verkeerd? Alvast bedankt, Supermonkey Bewerkt: 26 maart 2008 door Supermonkey Reageren
Sandra Geplaatst: 26 maart 2008 Rapport Geplaatst: 26 maart 2008 Volgens mij moet je dat Text: weghalen bij TextDrawHideForPlayer(playerid, Text:InfoBox); want dat hoeft alleen maar bij het defineren. new Text:Infobox; Reageren
Supermonkey Geplaatst: 27 maart 2008 Auteur Rapport Geplaatst: 27 maart 2008 Volgens mij moet je dat Text: weghalen bij TextDrawHideForPlayer(playerid, Text:InfoBox); want dat hoeft alleen maar bij het defineren. new Text:Infobox; Bedankt voor je reactie, maar volgens mij klopt het niet. Kijk maar eens op de wiki van SA:MP. Nadat ik het had uitgeprobeerd, was er inderdaad niets veranderd... Supermonkey Reageren
Sandra Geplaatst: 27 maart 2008 Rapport Geplaatst: 27 maart 2008 Oke, zet dan eens in die functie: print("InfoBoxClose-functie gestart"); dus: public InfoBoxClose(playerid) { print("InfoBoxClose-functie gestart"); TextDrawHideForPlayer(playerid, Text:InfoBox); return 1; } Test dan nog eens, en kijk dan of na die 5 seconden die tekst in de concole (zwarte schermpje) geprint word. Reageren
Hannovd Geplaatst: 27 maart 2008 Rapport Geplaatst: 27 maart 2008 Oke, zet dan eens in die functie: print("InfoBoxClose-functie gestart"); dus: public InfoBoxClose(playerid) { print("InfoBoxClose-functie gestart"); TextDrawHideForPlayer(playerid, Text:InfoBox); return 1; } Test dan nog eens, en kijk dan of na die 5 seconden die tekst in de concole (zwarte schermpje) geprint word. Wat je eventueel ook kunt proberen is in de SetTimerEx de 3de value (=repeater) naar 2 (ofzo) te zetten om te kijken of het dan wel werkt.. 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.