Erryn Geplaatst: 21 juni 2008 Rapport Geplaatst: 21 juni 2008 Kan iemand mij hier mee helpen ik probeer dus een command te maken /setlevel [id] [level] maar hoe werkt dat ik heb hier al gekeken en op wiki en op sa-mp.com maar ik snap er nog niks van kan iemand mij uitleggen hoe strtok werkt? Reageren
Juwayri Geplaatst: 21 juni 2008 Rapport Geplaatst: 21 juni 2008 Ik hoop dat je Engels kunt. Want dit is een hele duidelijke tutorial: Strtok tutorial! Reageren
Remcconen Geplaatst: 22 juni 2008 Rapport Geplaatst: 22 juni 2008 Ik hoop dat je Engels kunt.Want dit is een hele duidelijke tutorial: Strtok tutorial! Error: File Not Found Reageren
Ophion Geplaatst: 22 juni 2008 Rapport Geplaatst: 22 juni 2008 Ik hoop dat je Engels kunt.Want dit is een hele duidelijke tutorial: Strtok tutorial! Error: File Not Found http://streetplaya.hopto.org/SAMP_Wiki/wik...g_strcmp().html Reageren
Erryn Geplaatst: 22 juni 2008 Auteur Rapport Geplaatst: 22 juni 2008 dat had ik al gevonden maar snap er niks van Reageren
Juwayri Geplaatst: 23 juni 2008 Rapport Geplaatst: 23 juni 2008 (bewerkt) Je kunt geen Engels zeker. Nou ik zal het even uitleggen. Ga naar de public OnPlayerCommandText(playerid, cmdtext[]) regel. Zet dit onder de eerste { : new cmd[30]; new idx; cmd = strtok(cmdtext, idx); Dan zet je daaronder je cmd bijv dit: if(strcmp(cmd, "/sayhello", true) == 0) Daar zet je dit onder. { new tmp[30]; tmp = strtok(cmdtext, idx); new anderespeler = strval(tmp); En dan zet je eronder } return 1; } return 0; } Dan krijg je dit: public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[30]; new idx; cmd = strtok(cmdtext, idx); if(strcmp(cmd, "/sayhello", true) == 0) { new tmp[30]; tmp = strtok(cmdtext, idx); new anderespeler = strval(tmp); //Hier is nu otherplayer de speler van het id wat iemand in //het spel achter /sayhello zet. En playerid degene die /sayhello in typt. //Hier kun je dus iets gaan doen met otherplayer en playerid return 1; } return 0; } Ik hoop dat je het nu snapt. En voor de duidelijkheid nog even een voorbeeld om iemand anders te vermoorden d.m.v. een cmd: By =>Sandra<=: public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[30]; new idx; cmd = strtok(cmdtext, idx); if(strcmp(cmd, "/kill", true) == 0) { new tmp[30]; tmp = strtok(cmdtext, idx); new anderespeler = strval(tmp); new pname[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof(pname)); GetPlayerName(anderespeler, aname, sizeof(aname)); if(IsPlayerConnected(anderespeler)) { new string[128], SetPlayerHealth(anderespeler, 0); format(string, sizeof(string), "%s has killed you!", pname); SendClientMessage(anderespeler, 0xE21D2CFF, string); format(string, sizeof(string), "You've killed %s!", aname); SendClientMessage(playerid, 0xE21D2CFF, string); format(string, sizeof(string), "%s has killed %s!", pname, aname); SendClientMessageToAll(0xE21D2CFF, string); } else { SendClientMessage(playerid, 0xFF0000AA, "This player is not online!"); } return 1; } return 0; } Bewerkt: 24 juni 2008 door Juwayri Reageren
Sandra Geplaatst: 23 juni 2008 Rapport Geplaatst: 23 juni 2008 Hier de code van hierboven, alleen dan zonder foutjes zover ik kon zien public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[30]; new idx; cmd = strtok(cmdtext, idx); if(strcmp(cmd, "/kill", true) == 0) { new tmp[30]; tmp = strtok(cmdtext, idx); new anderespeler = strval(tmp); new pname[MAX_PLAYER_NAME], aname[MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof(pname)); GetPlayerName(anderespeler, aname, sizeof(aname)); if(IsPlayerConnected(anderespeler)) { new string[128], SetPlayerHealth(anderespeler, 0); format(string, sizeof(string), "%s has killed you!", pname); SendClientMessage(anderespeler, 0xE21D2CFF, string); format(string, sizeof(string), "You've killed %s!", aname); SendClientMessage(playerid, 0xE21D2CFF, string); format(string, sizeof(string), "%s has killed %s!", pname, aname); SendClientMessageToAll(0xE21D2CFF, string); } else { SendClientMessage(playerid, 0xFF0000AA, "This player is not online!"); } return 1; } return 0; } Reageren
Juwayri Geplaatst: 24 juni 2008 Rapport Geplaatst: 24 juni 2008 Oeps, ik heb hem ook maar even snel in elkaar gezet en niet getest en dan maak je wel eens foutjes. Ik zal het meteen aanpassen. Reageren
Erryn Geplaatst: 27 juni 2008 Auteur Rapport Geplaatst: 27 juni 2008 ik kan wel engels maar ik heb daar niks aan want ik wil zo'n command /setlevel (id) (level) en niet allen /heal {id} Reageren
Juwayri Geplaatst: 27 juni 2008 Rapport Geplaatst: 27 juni 2008 ik kan wel engels maar ik heb daar niks aan want ik wil zo'n command /setlevel (id) (level) en niet allen /heal {id} Ik weet niet zeker hoor. Maar dan moet je geloof ik strok 2x gebruiken en dan moet je de variablen een andere naam geven. 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.