Hey,
habe heute angefangen Jobs zu scripten..
Ich habe hier folgendes Problem mit dem Waffendealer Job..
Könnt ihr mir vllt sagen was falsch ist?
InGame: Keine Errors oder Unknowns..
Server : Auch keine Errors angezeigt..
sscanf : Funktioniert.. wenn ich "/mats" oder "/mats get" eingebe, kommt die Fehlermeldung. "/mats get 10" jedoch, macht Nichts!
Hier mal der Command (ocmd):
ocmd:mats(playerid,params[])
{
new aktion[20], anzahl;
new money = GetPlayerMoney(playerid);
if(PlayerInfo[playerid][pJob] == 2)
{
if(sscanf(params,"si",aktion,anzahl))
{
SendClientMessage(playerid,Grau,"[Benutze]: /mats [Aktion] [Anzahl]");
SendClientMessage(playerid,Grau,"[Aktion]: get, deliver");
return 1;
}
if(strcmp(aktion,"get",false) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,1142184740,-996399593,1100059122,6.0))
{
if(anzahl < 1 || anzahl > 10) return SendClientMessage(playerid,Grau,"Du kannst nur zwischen 1 - 10 kaufen!");
if(money < anzahl*250) return SendClientMessage(playerid,Grau,"Du hast nicht genügend Geld! 250$ pro Packet.");
new preis = anzahl*250;
new str[128];
GivePlayerMoney(playerid,-preis);
format(str,sizeof(str),"Du hast dir %i Materialien-Packete gekauft. Du musst sie jetzt in SF gegen Materialien tauschen!",anzahl);
SendClientMessage(playerid,Gelb,str);
SetPVarInt(playerid,"MatsPackete",anzahl);
return 1;
}
SendClientMessage(playerid,Grau,"Du nicht beim Waffenhändler LS!");
return 1;
}
if(strcmp(aktion,"deliver",false) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,-989602728,-1091881004,1108166656,6.0))
{
if(anzahl < 1 || anzahl > 10) return SendClientMessage(playerid,Grau,"Du kannst nur zwischen 1 - 10 Packete tauschen!");
new str[128];
format(str,sizeof(str),"Du hast dir %i Packete gegen %i Materialien getauscht!",anzahl,anzahl*50);
SendClientMessage(playerid,Gelb,str);
PlayerInfo[playerid][pMats] = GetPVarInt(playerid,"MatsPackete")-GetPVarInt(playerid,"MatsPackete")+anzahl*50;
SetPVarInt(playerid,"MatsPackete",-anzahl);
return 1;
}
SendClientMessage(playerid,Grau,"Du nicht beim Waffenhändler SF!");
return 1;
}
}
SendClientMessage(playerid,Grau,"Du bist kein Waffendealer!");
return 1;
}
{
new aktion[20], anzahl;
new money = GetPlayerMoney(playerid);
if(PlayerInfo[playerid][pJob] == 2)
{
if(sscanf(params,"si",aktion,anzahl))
{
SendClientMessage(playerid,Grau,"[Benutze]: /mats [Aktion] [Anzahl]");
SendClientMessage(playerid,Grau,"[Aktion]: get, deliver");
return 1;
}
if(strcmp(aktion,"get",false) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,1142184740,-996399593,1100059122,6.0))
{
if(anzahl < 1 || anzahl > 10) return SendClientMessage(playerid,Grau,"Du kannst nur zwischen 1 - 10 kaufen!");
if(money < anzahl*250) return SendClientMessage(playerid,Grau,"Du hast nicht genügend Geld! 250$ pro Packet.");
new preis = anzahl*250;
new str[128];
GivePlayerMoney(playerid,-preis);
format(str,sizeof(str),"Du hast dir %i Materialien-Packete gekauft. Du musst sie jetzt in SF gegen Materialien tauschen!",anzahl);
SendClientMessage(playerid,Gelb,str);
SetPVarInt(playerid,"MatsPackete",anzahl);
return 1;
}
SendClientMessage(playerid,Grau,"Du nicht beim Waffenhändler LS!");
return 1;
}
if(strcmp(aktion,"deliver",false) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,-989602728,-1091881004,1108166656,6.0))
{
if(anzahl < 1 || anzahl > 10) return SendClientMessage(playerid,Grau,"Du kannst nur zwischen 1 - 10 Packete tauschen!");
new str[128];
format(str,sizeof(str),"Du hast dir %i Packete gegen %i Materialien getauscht!",anzahl,anzahl*50);
SendClientMessage(playerid,Gelb,str);
PlayerInfo[playerid][pMats] = GetPVarInt(playerid,"MatsPackete")-GetPVarInt(playerid,"MatsPackete")+anzahl*50;
SetPVarInt(playerid,"MatsPackete",-anzahl);
return 1;
}
SendClientMessage(playerid,Grau,"Du nicht beim Waffenhändler SF!");
return 1;
}
}
SendClientMessage(playerid,Grau,"Du bist kein Waffendealer!");
return 1;
}