/Vertrag

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
  • Hi ich suche den Befehl "/vertrag [playerid] [inhalt]"
    Also man muss /Vertrag [playierd] und Seinen Vertrags text eingeben. Aber man kann den Vertrag nicht auf mich selbs machen wen jmd das macht sollte da stehen " Du kannst mir dir selber keinen Vertrag machen!" mann muss den Vertrag mit /accept oder /cancel Vertrag annehmen/ablehnen


    Wen man animmt
    -"%s hat den Vertrag unterschrieben !"


    aber wen man ablehnt


    -"%s hat deinen Vertrag abgelehnt !"



    Wen man einmen den Vertrag bietet Soll das stehen:
    Zeile 1 "Du hast %s einen Vertrag angeboten !"
    Zeile 2 "Inhalt: [Was er geschrieben hat]


    Die farbe sollte Hell blau sein wen man /vertrag macht aber wen man /canel oder /accept vertrag macht sollte es Rot sein.. Danke !

  • Wieso ? Scripting Base ist doch allgemein. Wenn ich sowas schreibe pack ich das auch hier rein ^^
    Scriptwünsche ist für mich wenn mir jemand i.wie ein Filterscript basteln soll, oder jemand mir einen Gamemode schreiben soll.


    Ich versuch mal etwas zu scripten was du da meinst.



    //Ganz oben im Script:
    new Vertrag[MAX_PLAYERS];


    ocmd:vertrag(playerid,params[])
    {
    new str[256], inhalt, pID, giveplayer, str2[256];
    giveplayer=GetPlayerName(playerid);
    getplayer=GetPlayerName(pID);
    if(sscanf(params,"ui",pID,inhalt))return SendClientMessage(playerid,ROT,"Verwendung: /vertrag [playerid/PartOfName] [Inhalt]");
    format(str,sizeof(str),"%s hat dir einen Vertrag angeboten. Der Inhalt betrifft dies: %s ", giveplayer, inhalt);
    format(str2,sizeof(str2),"Du hast %s einen Vertrag angeboten. Inhalt: %s ", getplayer, inhalt);
    SendClientMessage(playerid,0x00D7FFFF,str2);
    SendClientMessage(pID,0x00D7FFFF,str);
    SendClientMessage(pID,0x00D7FFFF,"Du kannst den Vertrag jetzt mit /accept akzeptieren oder mit /cancel ablehnen.");
    Vertrag[pID]=1;//Dient später nur für /accept und /cancel.
    return 1;
    }
    ocmd:cancel(playerid,params[])
    {
    if(Vertrag==1)
    {
    /*Hier weiß ich halt nicht wie ich das scripten soll, dass der Vertragsanbieter eine Nachricht erhält. Da könnte man ja /cancel [ID] draus machen, wäre aber recht umständlich. Wenn du willst,dann kann ich dir das aber trotzdem mir /cancel [ID] machen oO*/
    SendClientMessage(playerid,0xFF0005FF,"Du hast den Vertrag abgelehnt.");
    Vertrag[playerid]=0;
    }
    if(Vertrag==0)
    {
    SendClientMessage(playerid,0xFF0005FF,"Dir wurde kein Vertrag angeboten!");
    }
    return 1;
    }
    ocmd:accept(playerid,params[])
    {
    if(Vertrag==1)
    {
    /*Hier weiß ich halt nicht wie ich das scripten soll, dass der Vertragsanbieter eine Nachricht erhält. Da könnte man ja /accept [ID] draus machen, wäre aber recht umständlich. Wenn du willst,dann kann ich dir das aber trotzdem mir /accept [ID] machen oO*/
    SendClientMessage(playerid,0xFF0005FF,"Herzlichen Glückwunsch! Du hast den Vertrag angenommen.");
    Vertrag[playerid]=0;
    }
    if(Vertrag==0)
    {
    SendClientMessage(playerid,0xFF0005FF,"Dir wurde kein Vertrag angeboten!");
    }
    return 1;
    }


    //Edit: Befehl falsch genannt ^^

    Liebe Grüße


    Marcel

  • Ganz oben noch dazu:


    new Namedes;

    Und unter dem Vertrag Code


    Namedes = giveplayer;

    und unter den anderen Befehlen, bei einem formatiertem Text "%s, Namedes" eintragen, so hab ichs zumindest benutzt.



    Das gesammte Forum voller *Doppelzensierung hält einen vom Stress zugemüllt, da blickt man gar nimma durch.