Ich habe nun fast mein Autosystem fertig nur die langen for schleifen machen dem server zu schaffen. Ich fang mal mit dem Dcmd an mit dem man einem Spieler ein Schlüssel gibt
dcmd_gibschluessel(playerid , params[])//dcmd wurde richtig definirt
{
new pname[MAX_PLAYERS],accFormat[128];//name des spielers mit dem Schlüssel
new pnameee[MAX_PLAYERS],accFormattt[128];//name des spielers, der den Schlüssel bekommen soll
new pID,nummernschild[32];// pID=Spielerid , dessen spielers der den schlüssel bekommt;nummernschild=Der string ( die schlüssel werden anhand des nummernschilds geprüft , ob der schlüssel ins auto passt.
if(sscanf(params, "ds", pID, nummernschild))
{
return SendClientMessage(playerid,COLOR_RED, "Nutze: /gibschluessel [SpielerID] [FahrzeugNummernschild]");//Selbsterklärend
}
else
{
if(!IsPlayerConnected(pID))
{
SendClientMessage(playerid,COLOR_RED,"Dieser Spieler ist nicht online!");
}
else
{
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"Spieler/%s.datei",pname);
GetPlayerName(pID,pnameee,sizeof pnameee);
format(accFormattt,sizeof accFormattt,"Spieler/%s.datei",pnameee);
new datei[50],str[256],strr[256];
for(new i=1;i<2000;i++)//Die erste lange forschleife, sie soll prüfen ob der spieler der den schlüssel vergibt ihn überhauopt hat
{
format(datei,50,"car%d",i);
if(strcmp(nummernschild,dini_Get(accFormat,datei)) == 0){return 1;}Erste Lange schleife, es soll geprüft werden ob die eingabe vom spieler mit einem der 2000 schilder in der datei übereinstimmt.
//wenn es übereinstimmt, soll der code weiter gehen. wenn nicht soll er aufhören. WIE kann ich in der if-abfrage abfragen ob nummernschild und der string in der datei NICHT überienstimmen
}
for(i=1;i<2000;i++)//noch ne lange schleife
{
format(datei,50,"car%d",i);
if(strcmp("0",dini_Get(accFormat,datei)) == 0)//wenn in der dini des spielers noch kein nummernschild(schlüssel)steht dann
{
dini_Set(accFormat,datei,"0");//wird das nummernschild des anderen spielers gelöscht(er hat keine schlüssel mehr) dini_Set(accFormattt,datei,nummernschild);// und hier an den anderen übertragen(dieser hat nun die schlüssel)
format(str,256,"Du hast %s die schlüssel für das Auto mit dem Kennzeichen %s gegeben.",pnameee,nummernschild);
format(strr,256,"Du hast von %s die schlüssel für das Auto mit dem Kennzeichen %s bekommen.",pname,nummernschild);
SendClientMessage(playerid,COLOR_GREEN,str);
SendClientMessage(pID,COLOR_GREEN,strr);
return 1;
}
}
}
}
return 1;
}
Sorry für das schlechte einrücken das passirte automatisch.
Weis einer was ich meine so das das ganze nicht zu server auslatend wird