Ich bräuchte nur ein ganz ganz kleinen skript
und zwar dass man einen anderen spielern von sich geld geben kann
das ist alles geht das iregndwie?
MFG
GUKNULLIT ![]()
![]()
Ich bräuchte nur ein ganz ganz kleinen skript
und zwar dass man einen anderen spielern von sich geld geben kann
das ist alles geht das iregndwie?
MFG
GUKNULLIT ![]()
![]()
Überschrift ist wirklich einfach nur unpassend.
Also du willst einen FILTERSCRIPT ???? für ein /pay /zahlken system ?
naja wie soll der Befehl heißen ? irgendwelche Besonderheiten ?
gib mir mehr infos
häm nur als cmd eigendlich dass man mit /geld [ID] [GELD]
und das geld soll halt von mir abgezogen werden ich hoffe das genügt dir
MFG
GUKNULLIT ![]()
dcmd_geld(playerid, params[])
{
new pID, betrag;
if(sscanf(params, "uu", giveplayer, betrag))
{
return SendClientMessage(playerid, COLOR_RED, "FEHLER: Benutze: /geld [ID] [Betrag]")
}
new spender[20] string[128], giveplayer[20];
GetPlayerName(playerid, spender, sizeof(spender);
GetPlayerName(pID, giveplayer, sizeof(giveplayer);
format(string, sizeof(string), " %s hat %s %u gegeben", spender, giveplayer, betrag);
//Hier müsste eine Funktion hin - ProxDetector(); weiß die syntax nicht auswendig. ProxDetector ist, damit Spieler in der Nähe das sehen können ;)
// Und hier kommen die Befehle fürs Geld abziehen bzw. zufügen hin, einfach den dem der es dem anderen gibt den betrag abziehen und dem anderen drauf zählen.
}
bin zwar kein profi scripter, aber ich denke so müsste das ungefähr stimmen ![]()
Alles anzeigen
dcmd_geld(playerid, params[])
{
new pID, betrag;
if(sscanf(params, "uu", giveplayer, betrag))
{
return SendClientMessage(playerid, COLOR_RED, "FEHLER: Benutze: /geld [ID] [Betrag]")
}
new spender[20] string[128], giveplayer[20];
GetPlayerName(playerid, spender, sizeof(spender);
GetPlayerName(pID, giveplayer, sizeof(giveplayer);
format(string, sizeof(string), " %s hat %s %u gegeben", spender, giveplayer, betrag);
//Hier müsste eine Funktion hin - ProxDetector(); weiß die syntax nicht auswendig. ProxDetector ist, damit Spieler in der Nähe das sehen können ;)
// Und hier kommen die Befehle fürs Geld abziehen bzw. zufügen hin, einfach den dem der es dem anderen gibt den betrag abziehen und dem anderen drauf zählen.
}
bin zwar kein profi scripter, aber ich denke so müsste das ungefähr stimmen
So würd das nicht funktionieren, versuch mal das:
dcmd_geld(playerid, params[])
{
new pID, betrag;
if(sscanf(params, "ud", pID, betrag))
{
return SendClientMessage(playerid, COLOR_RED, "FEHLER: Benutze: /geld [ID] [Betrag]")
}
new spender[MAX_PLAYER_NAME], string[128], giveplayer[MAX_PLAYER_NAME];
GetPlayerName(playerid, spender, sizeof(spender);
GetPlayerName(pID, giveplayer, sizeof(giveplayer);
format(string, sizeof(string), " %s hat %s %d gegeben", spender, giveplayer, betrag);
//Hier müsste eine Funktion hin - ProxDetector(); weiß die syntax nicht auswendig. ProxDetector ist, damit Spieler in der Nähe das sehen können ;)
// Und hier kommen die Befehle fürs Geld abziehen bzw. zufügen hin, einfach den dem der es dem anderen gibt den betrag abziehen und dem anderen drauf zählen.
}
Willst du Liber noch sicherrer sein nimm meins *G*
if(strcmp(cmd, "/pay", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "NUTZUNG: /pay [playerid/PartOfName] [amount]");
return 1;
}
//giveplayerid = strval(tmp);
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "NUTZUNG: /pay [playerid/PartOfName] [amount]");
return 1;
}
moneys = strval(tmp);
if(moneys > 1000 && PlayerInfo[playerid][pLevel] < 1)
{
SendClientMessage(playerid, COLOR_GRAD1, "Du musst mindestens Level 3 sein, um über $1000 abgeben zu können.");
return 1;
}
if(moneys < 1 || moneys > 99999)
{
SendClientMessage(playerid, COLOR_GRAD1, "Der Betrag muss zwischen $1 und $90000 sein!");
return 1;
}
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pLocal] == 106)
{
SendClientMessage(playerid, COLOR_GRAD1, "Der Befehl ist in dieser Lage nicht erlaubt.");
return 1;
}
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
playermoney = GetPlayerMoney(playerid);
if (moneys > 0 && playermoney >= moneys)
{
ConsumingMoney[giveplayerid] = 1;
GivePlayerMoney(playerid, (0 - moneys));
GivePlayerMoney(giveplayerid, moneys);
format(string, sizeof(string), " Du hast %s(player: %d), $%d gegeben.", giveplayer,giveplayerid, moneys);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GRAD1, string);
format(string, sizeof(string), " Du hast $%d von %s(player: %d) bekommen.", moneys, sendername, playerid);
SendClientMessage(giveplayerid, COLOR_GRAD1, string);
format(string, sizeof(string), "%s hat $%d dem Spieler %s gegeben.", sendername, moneys, giveplayer);
PayLog(string);
if(moneys >= 1000000)
{
ABroadCast(COLOR_YELLOW,string,1);
}
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "* %s nimmt Geld aus seiner Tasche und gibt es %s.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Ungültiger Betrag.");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Du musst näher an dem Spieler sein!");
}
}//invalid id
}
else
{
format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
schön das hier erstmal ALLE NOOBS ihr SCHEISS kopie ausm GF posten müssen!!
keine der funktionen geht außerhalb vom gf da die funktionen enthalten die es nur im gf gibt