Moin zusammen bräuchte mal bei einem kleinen Problem hilfe
und zwar hab ich eine fkasse erstellt wo alles mit ansehen/einzahlen/auszahlen funktioniert
nur leider geht die funktion wenn man /fkasse ansehen 0 0 oder /fkasse einzahlen 5 0 , der Aufbau ist ungefährt so:
/fkasse [Ansehen/Einzahlen/Auszahlen] [Betrag] {ID]
Der Code Abschnitt:
ocmd:fkasse(playerid,params[])
{
new auswahl[16],betrag,pID;
if(GetPVarInt(playerid,"Fraktion")==0) return SendClientMessage(playerid, WEISS, "Sie sind in keiner Fraktion.");
if(sscanf(params,"siu",auswahl,betrag,pID))return SendClientMessage(playerid, GRAU, "Benutze: /fkasse [Ansehen/Einzahlen/Auszahlen] [BETRAG] [ID]");
if(!strcmp(auswahl, "einzahlen", true))
{
new text[256],text2[256];
new fID = GetPVarInt(playerid,"Fraktion");
format(text2,sizeof text2,"%i",fID);
new fkasse = getInt:"Fraktionskasse"(text2);
setInt:"Fraktionskasse"(text2,fkasse+betrag);
GivePlayerMoney(playerid,-betrag);
for(new i = 0; i < MAX_PLAYERS; i++)
{
format(text, sizeof text, "* %s hat %i $ in die Fraktionskasse eingezahlt. *",SpielerName(playerid),betrag);
if(GetPVarInt(i,"Fraktion")==1)SendClientMessage(playerid,HBLAU,text);
}
printf("Der Spieler %s hat %d$ in die Fraktionskasse eingezahlt",SpielerName(playerid),betrag);
SetTimerEx("Fraktionskasse",1000,0,"i",playerid);
}
if(!strcmp(auswahl, "auszahlen", true))
{
new fID = GetPVarInt(playerid,"Fraktion");
if(GetPVarInt(playerid,"Rang") < 4) return SendClientMessage(playerid,WEISS,"Du bist nicht der Leader der Fraktion");
{
new text[256],text2[256];
format(text2,sizeof text2,"%i",fID);
new fkasse = getInt:"Fraktionskasse"(text2);
if(fkasse < betrag) return SendClientMessage(playerid,ROT,"So viel habt ihr nicht in der Fraktionskassen");
setInt:"Fraktionskasse"(text2,fkasse-betrag);
GivePlayerMoney(pID, betrag);
SpielerSpeichern(pID);
for(new i = 0; i < MAX_PLAYERS; i++)
{
format(text, sizeof text, "* %s hat %i aus der Fraktionskasse entnommen und %s gegeben. *",SpielerName(playerid),betrag,SpielerName(pID));
if(GetPVarInt(i,"Fraktion")==1)SendClientMessage(playerid,HBLAU,text);
}
printf("Der Spieler %s hat %i aus der Fraktionskasse entnommen und %s gegeben.",SpielerName(playerid),betrag,SpielerName(pID));
SetTimerEx("Fraktionskasse",1000,0,"i",playerid);
}
}
if(!strcmp(auswahl, "ansehen", true))
{
if(GetPVarInt(playerid,"Fraktion")==1)
{
new text[256],text2[256];
new fID = GetPVarInt(playerid,"Fraktion");
format(text2,sizeof text2,"%i",fID);
new fkasse = getInt:"Fraktionskasse"(text2);
SendClientMessage(playerid,HBLAU,"====[FRAKTIONSKASSE]====");
format(text, sizeof text, "* Es befinden sich %i$ in der Fraktionskasse. *",fkasse);
SendClientMessage(playerid,HBLAU,text);
SendClientMessage(playerid,HBLAU,"===========================");
SetTimerEx("Fraktionskasse",1000,0,"i",playerid);
}
}
return 1;
}