>>Contract-System | Bitte um Hilfe!<<

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
  • Hallo, ich habe soeben ein Contract-System erstellt, aber es funktioniert nicht alles nach Plan! Errors habe ich zwar keine, aber trotzdem funktioniert es nicht...


    Hier das System:


    GANZ OBEN im Script

    enum Hitman
    {
    pContract
    };


    new hsystem[Hitman];



    #define SCM SendClientMessage


    BEI OnGameModeInit

    addFraktion(15, "ICA", weiss);


    GANZ OBEN von OnPlayerCommandText

    dcmd(kopfgeld, 8, cmdtext);


    NACH OnPlayerCommandText

    dcmd_kopfgeld(playerid, params[])
    {
    new pid, betrag, nachricht1[170], nachricht2[170];
    new zn[MAX_PLAYER_NAME];
    if(IsPlayerInRangeOfPoint(playerid,3.0,1857.3275,-1905.0031,15.0328))
    {
    if(sscanf(params,"ud",pid,betrag))
    {
    return SCM(playerid,hellrot,"Benutze: /kopfgeld <Spieler-ID> <Betrag>");
    }
    if(betrag <= 0)
    {
    return SCM(playerid,mefarbe," * Dein Verstand sagt dir: Der Betrag muss im Plus liegen");
    }
    else
    {
    GivePlayerMoney(playerid, -betrag);
    format(nachricht1,sizeof(nachricht1),"** <<Du hast einen Kopfgeldbetrag in höhe von $%d auf %s gesetzt!>>",betrag,GetPlayerName(pid,zn,sizeof(zn)));
    SendClientMessage(playerid,gelb,nachricht1);
    hsystem[pContract] = betrag;
    }
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(getFraktion(i)==15)
    {
    format(nachricht2,sizeof(nachricht2), "Agentur: Ein neuer Auftrag ist verfügbar! Ziel: %s | Betrag $%d",GetPlayerName(pid,zn,sizeof(zn)),betrag);
    SCM(i,gelb,nachricht2);
    }
    }
    }
    return 1;
    }


    IN OnPlayerDeath

    if(getFraktion(killerid)==15)
    {
    if(hsystem[pContract] > 0)
    {
    GivePlayerMoney(killerid,hsystem[pContract]);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(getFraktion(i)==15)
    {
    new nachricht3[170];
    new kn[MAX_PLAYER_NAME];
    new dn[MAX_PLAYER_NAME];
    format(nachricht3,sizeof(nachricht3), "Agentur: Hitman %s hat %s getötet & $%d erhalten",GetPlayerName(killerid,kn,sizeof(kn)),GetPlayerName(playerid,dn,sizeof(dn)),hsystem[pContract]);
    SendClientMessage(killerid,gelb,nachricht3);
    }
    }
    hsystem[pContract] = 0;
    }
    return 1;
    }


    Und jetzt kommt das, was nicht funktioniert:

    format(nachricht1,sizeof(nachricht1),"** <<Du hast einen Kopfgeldbetrag in höhe von $%d auf %s gesetzt!>>",betrag,GetPlayerName(pid,zn,sizeof(zn)));
    SendClientMessage(playerid,gelb,nachricht1);


    Hier bekommt der Spieler fogende Nachricht:


    "** <<Du hast einen Kopfgeldbetrag in höhe von $(z.B.)1000 auf 1 gesetzt!>>" ---> Kein Name, sondern "1"



    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(getFraktion(i)==15)
    {
    format(nachricht2,sizeof(nachricht2), "Agentur: Ein neuer Auftrag ist verfügbar! Ziel: %s | Betrag $%d",GetPlayerName(pid,zn,sizeof(zn)),betrag);
    SCM(i,gelb,nachricht2);
    }
    }


    Die Nachricht kommt einfach nicht an.



    if(getFraktion(killerid)==15)
    {
    if(hsystem[pContract] > 0)
    {
    GivePlayerMoney(killerid,hsystem[pContract]);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(getFraktion(i)==15)
    {
    new nachricht3[170];
    new kn[MAX_PLAYER_NAME];
    new dn[MAX_PLAYER_NAME];
    format(nachricht3,sizeof(nachricht3), "Agentur: Hitman %s hat %s getötet & $%d erhalten",GetPlayerName(killerid,kn,sizeof(kn)),GetPlayerName(playerid,dn,sizeof(dn)),hsystem[pContract]);
    SendClientMessage(killerid,gelb,nachricht3);
    }
    }
    hsystem[pContract] = 0;
    }
    return 1;
    }


    Hier kommt ebenfalls die Nachricht nicht an & der Hitman bekommt kein Geld


    Ich benutze für die Fraktionen das include "pFraktion" & für die Commands "dcmd"


    Ich bitte um Hilfe,


    mit freundlichen Grüßen MisterDubstep

    >> I want you <<
    >> We can bring it on the floor <<
    >> You’ve never danced like this before <<
    >> We don’t talk about it <<
    >> Dancin' on doin' the boogie all night long <<
    >> Stoned in paradise <<
    >> Shouldn’t talk about it <<