Waffendealer /mats befehl

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • 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):

    Spoiler anzeigen
    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;
    }

  • 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;
    }
    else
    {
    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;
    }
    Versuchs mal so ;)