Moinsen.
Als erstes: Ich nutze Oktabius Afänger Gamemode als grundgerüst für mein Script.
Es waren halt schon die wichtigsten sachen da, wie 3 Fraktionen, ein login/register system und halt das speichern mit dini.
Da ich das neue System des Logins/registerns bevorzuge, also mit Dialogen, versuchte ich das Dialogsystem von Michael_pittine einzubauen.
Naja ich hab zumindestens erstmal Oktabius' Mod übersichtlicher gemacht, (klammern gerückt)
ERROR MELDUNGEN:
C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(169) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(171) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(172) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(173) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(174) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(175) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(176) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(177) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(178) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(179) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(180) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(181) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(195) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(229) : error 017: undefined symbol "strget"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(232) : error 017: undefined symbol "Spielername"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(234) : error 017: undefined symbol "Spielername"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(236) : error 079: inconsistent return types (array & non-array)C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(239) : error 017: undefined symbol "strget"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(241) : error 017: undefined symbol "strget"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(243) : error 079: inconsistent return types (array & non-array)C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(245) : error 079: inconsistent return types (array & non-array)C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(250) : error 017: undefined symbol "Datei"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(251) : error 017: undefined symbol "gebespielergeld"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(252) : error 017: undefined symbol "gebespielergeld"C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(262) : error 079: inconsistent return types (array & non-array)C:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(292) : warning 225: unreachable codeC:\Users\Matthias\Desktop\SAMP\gamemodes\NoName.pwn(300) : error 079: inconsistent return types (array & non-array)
Nun die zeilen wo es beinhaltet ist.
if(strcmp(strget(cmdtext,0), "/autoschein", true) == 0) { new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid { if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Ziel ist nicht Online"); { if(IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_RED, "Du musst Online sein"); { if(pInfo[playerid][gTeam] == Fahrlehrer || pInfo[playerid][gLeader] == Fahrlehrer) // wenn der Fahrlehrer der Leader oder im Team der Fahrschule ist { pInfo[ziel][autos] = 1; dini_IntSet(Datei(playerid),"Autoführerschein",1); // Speichere das Passwort in der .ini Datei unter passwort gebespielergeld(ziel, -1000); // entziehe dem Ziel 1000 € gebespielergeld(playerid, 1000); // gebe dem Fahrleher 1000 € SendClientMessage(ziel, COLOR_GREEN, "TEXT"); // Sende dem Ziel den Text, das er einen Autsoschein bekommen hat SendClientMessage(playerid, COLOR_GREEN, "TEXT"); // Sende dem Fahrleher den Text, das er einen Autoschein verkauft hat } else { SendClientMessage(playerid, COLOR_RED, "Sie haben keine Berechtigung!"); // Wenn jemand einer anderen Fraktion außer Fahrlehrer diesen befehl eingibt, sende ihm die Nachricht... } } } return 1;
}
Über all kommt halt irgendwie Strget und strcmd vor oder so. Beides habe ich aber definiert, genau wie 'Datei'.
stock gebespielergeld(playerid,summe) // erstelle ein stock{ pInfo[playerid][pmoney] = pInfo[playerid][pmoney] +summe; // das Geld = geld + die summe dini_IntSet(Datei(playerid),"Geld",pInfo[playerid][pmoney]); //schreibe in seine Datei das neue Geld return 1;}
stock Datei(playerid){ new Save[128]; format(Save, sizeof(Save), "/User/%s.ini", Spielername(playerid)); return Save;}
stock Spielername(playerid){ new name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); return name;}
stock strget(strx[], pos, search = ' ') { new arg, ret[128], idxx; for (new i = 0; i < strlen(strx); i++) { if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) { arg++; if (arg == pos + 1){ ret[i-idxx] = EOS; return ret; } else if (arg == pos) idxx= i+1; } else if (arg == pos) ret[i - idxx] = strx[i]; } return ret;}stock strtok(const string[], &index,seperator=' ') { new length = strlen(string); new offset = index; new result[255]; while ((index < length) && (string[index] != seperator) && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; }
result[index - offset] = EOS; if ((index < length) && (string[index] == seperator)) { index++; } return result;}
Ich habe alles definiert.
Danke schonmal im vorraus.