checkkill Geplaatst: 13 augustus 2011 Rapport Geplaatst: 13 augustus 2011 Hoi, Daar is ie weer met een vraag hoor .. Ik heb snel een lijstje met regels gebouwd waarna als je ze hebt gelezen $5000 krijgt. Het probleem is dat je oneindig vaak /rules kan intikken en zo telkens geld kan innen! Dat is natuurlijk niks aan Zou iemand me kunnen helpen hiermee? Dit heb ik op het moment: public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/rules", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Rules","Have respect towards EVERYONE\nDo not Advertise/Spam\nLast but not least ... Have Fun","OK",""); GivePlayerMoney(playerid,5000); SendClientMessage(playerid,0x007BB7FF,"Thank you for reading the rules! Here, have a little bonus "); return 1; } return 0; } Ik heb eerlijk gezegd ook geen idee hoe je ergens voor kan zorgen dat een command one time is. :$ M.V.G checkkill Reageren
Donald F. Duck Geplaatst: 13 augustus 2011 Rapport Geplaatst: 13 augustus 2011 Ik ken zelf niet goed SA-MP script, maar als je een registersysteem hebt waarbij je spelerdata in bestanden opslaat, zou je misschien daarin ook kunnen opslaan of die speler de regels al eens gelezen heeft. Dan elke keer bij het aanvragen van /rules dat controleren, en als hij ze nog niet gelezen heeft gewoon het geld geven, anders niet. Reageren
checkkill Geplaatst: 13 augustus 2011 Auteur Rapport Geplaatst: 13 augustus 2011 Ik ken zelf niet goed SA-MP script, maar als je een registersysteem hebt waarbij je spelerdata in bestanden opslaat, zou je misschien daarin ook kunnen opslaan of die speler de regels al eens gelezen heeft. Dan elke keer bij het aanvragen van /rules dat controleren, en als hij ze nog niet gelezen heeft gewoon het geld geven, anders niet. Ik weet dus niet hoe je moet scripten dan je een bepaalde command maar 1 keer kan invoeren :S Reageren
Basssss Geplaatst: 13 augustus 2011 Rapport Geplaatst: 13 augustus 2011 (bewerkt) Zo zou het er dan moeten uitzien. public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/rules", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Rules","Have respect towards EVERYONE\nDo not Advertise/Spam\nLast but not least ... Have Fun","OK",""); // Check of the speler de regels al heeft gelezen door in het accountsbestand van de speler te kijken if (dini_Int(udb_encode(playername), "regelsgelezen") == 0) // == 0 geeft aan dat de speler de regels nog niet heeft gelezen, aangezien het script de variable waarschijnlijk niet kan vinden { dini_IntSet(udb_encode(playername), "regelsgelezen", 1); // Sla op dat de speler de regels heeft gelezen GivePlayerMoney(playerid,5000); SendClientMessage(playerid,0x007BB7FF,"Thank you for reading the rules! Here, have a little bonus "); return 1; } else // Als de speler de regels al eens eerder heeft gelezen, krijgt de speler geen geld meer { SendClientMessage(playerid,0x007BB7FF,"Thank you for reading the rules!"); return 1; } } return 0; } Bewerkt: 13 augustus 2011 door Basssss Reageren
checkkill Geplaatst: 13 augustus 2011 Auteur Rapport Geplaatst: 13 augustus 2011 Zo zou het er dan moeten uitzien. public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/rules", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Rules","Have respect towards EVERYONE\nDo not Advertise/Spam\nLast but not least ... Have Fun","OK",""); // Check of the speler de regels al heeft gelezen door in het accountsbestand van de speler te kijken if (dini_Int(udb_encode(playername), "regelsgelezen") == 0) // == 0 geeft aan dat de speler de regels nog niet heeft gelezen, aangezien het script de variable waarschijnlijk niet kan vinden { dini_IntSet(udb_encode(playername), "regelsgelezen", 1); // Sla op dat de speler de regels heeft gelezen GivePlayerMoney(playerid,5000); SendClientMessage(playerid,0x007BB7FF,"Thank you for reading the rules! Here, have a little bonus "); return 1; } else // Als de speler de regels al eens eerder heeft gelezen, krijgt de speler geen geld meer { SendClientMessage(playerid,0x007BB7FF,"Thank you for reading the rules!"); return 1; } } return 0; } Bedankt voor dit en natuurlijk de uitleg, maar als ik hem nu probeer te compilen kreeg ik 6 errors. 2 heb ik weg weten te werken door #include <dini> neer te zetten boven aan. Toen had ik nog 2 errors: C:\Users\Ashwin\Desktop\SAMP Server\gamemodes\MyGameMode.pwn(178) : error 017: undefined symbol "udb_encode" C:\Users\Ashwin\Desktop\SAMP Server\gamemodes\MyGameMode.pwn(180) : error 017: undefined symbol "udb_encode" Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 2 Errors. Ook die heb ik weten weg te werken door #include <ladmin> erin te kwakken.. Nu de laatste 2 waar ik gewoon echt niet uit kom C:\Users\Ashwin\Desktop\SAMP Server\gamemodes\MyGameMode.pwn(179) : error 017: undefined symbol "playername" C:\Users\Ashwin\Desktop\SAMP Server\gamemodes\MyGameMode.pwn(181) : error 017: undefined symbol "playername" Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 2 Errors. Kun je me hierbij helpen? Reageren
Crusher!! Geplaatst: 13 augustus 2011 Rapport Geplaatst: 13 augustus 2011 Tralallaa gebruik dit Klikkie! Of kant en klaar Ready2use Klikkie! Reageren
checkkill Geplaatst: 13 augustus 2011 Auteur Rapport Geplaatst: 13 augustus 2011 Tralallaa gebruik dit Klikkie! Of kant en klaar Ready2use Klikkie! Heel erg bedankt voor deze! I thank all of you! Reageren
Crusher!! Geplaatst: 13 augustus 2011 Rapport Geplaatst: 13 augustus 2011 Tralallaa gebruik dit Klikkie! Of kant en klaar Ready2use Klikkie! Heel erg bedankt voor deze! I thank all of you! Eigenlijk had ik deze zelf gemaakt voordat ik de posts van een ander las. ik had al eerder op reageren knopje gedrukt had de nieuwe post's niet gelezen xD 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.