Beiträge von [SdL]Andy

    ocmd:giverank(playerid,params[])
    {
    if(GetPVarInt(playerid,"FRank")== 14) // die 14 für dein Rang den du benötigst um /giverank zu benutzen
    {
    new pID, rank,rankup[64],rankdown[64];
    if(sscanf(params,"ui",pID,FRank))return SendClientMessage(playerid,ROT,"/giverank [SpielerID] [rank]");
    if(rank<1||rank>14)return SendClientMessage(playerid,ROT,"Du kannst nur einen Rank verteilen zwischen 1-14."); // die 1-14 am Anfang , welche ränge du verteilen kannst
    new altrank = GetPVarInt(pID,"FRank");
    format(rankdown,sizeof(rankdown),"Du hast jemanden einen Rankdown gegeben, sein aktueller Rank ist %i.",rank);
    format(rankup,sizeof(rankup),"Du hast jemanden einen Rankup gegeben, sein aktueller Rank ist %i.",rank);
    if(altrank > rank){SendClientMessage(playerid,ROT,rankdown);}
    if(altrank < rank){SendClientMessage(playerid,BLAU,rankup);}
    SetPVarInt(pID,"FRank",rank);
    SpielerSpeichern(pID);
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist kein Leader einer Fraktion.");return 1;
    }
    return 1;
    }


    Edit: CroXx16 war schneller ^^

    @IceCube24: Damit hat sich dann wohl das mit der Farbe erledigt, nun wie verkürz iich den chat? sodass ich nur mit spielern öffentlich schreiben kann wenn sie in meiner nähe sind, bzw das nur die sehen was ich schreibe?

    Guten Tag, ich habe grade mit einem Freund über hamachi mein server wegen einigen systemen geprüft, jdoch sind unsere Namen bunt und ich kann mit ihm normal schreiben, auch wenn ich in lv bin und er in ls..


    1. Wie bekomme ich es hin, dass in der Spieler leiste alle namen weiß sind und auch wenn man schreibt die namen weiß


    2. wie kann ich den chat umstellen, sodass er nur mit mir öffentlich schreiben kann wenn ich in seiner nähe bin?


    Bitte um hilfe :s

    Nein hab ganznormales Pawno script keine ahnung über mysql... ^^


    Ahm habe das beim stock spielerspeichern und laden:


    dini_IntSet(Spielerdatei,"rank",GetPVarInt(playerid,"rank"));


    und bei stock LoadAccount


    dini_IntSet(Spielerdatei,"rank",GetPVarInt(playerid,"rank"));


    /edit habs rausgefunden hab den rank falsch geladen anstatt so:


    dini_IntSet(Spielerdatei,"rank",GetPVarInt(playerid,"rank"));


    muss es so sein:


    SetPVarInt(playerid,"rank",dini_Int(Spielerdatei,"rank"));


    Aber danke für den hinweis ^^

    //Edit, so, das Geht jetzt,danke jetzt noch das hier :


    Wenn ich Relogge / Restart mache, wird der Rangname nicht gespeichert, d.H beim fchat wird nurnoch mein name angezeigt kein Rangname, ich muss dann erst /makeleader wieder machen um die Rangnamen zu sehen .. :s

    //Edit so gut jetzt geht fast alles, nur wenn ich /makeleader mache Lädt er nicht mit rang 6 ein, sondern mit rang 1 ... :s wie änder ich das ??.. Hier mein /makeleader befehl:


    Und wenn ich dann /fch mache, Kommt kein Rangname erst wenn ich reloggt habe.. ^^


    BITTE UM HILFE :D


    ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return 0;
    new pID,fID,string[128];
    if(sscanf(params,"ud",pID,fID))return SendClientMessage(playerid,BLAU,"/makeleader [playerid] [fraktionsid]");
    SetPVarInt(pID,"Fraktion",fID);
    SetPVarInt(pID,"rank",6);
    SendClientMessage(playerid,BLAU,string);
    SendClientMessage(playerid,WEIß,"Erfolgreich.");
    SendClientMessage(pID,ROT,"Du wurdest zum Leader einer Fraktion ernannt.");
    SendClientMessage(pID,WEIß,"_________________________________________________________________________________________.");
    SendClientMessage(pID,GRÜN,"Du hast nun die Pflicht 2 Wochen in dieser Fraktion zu bleiben.");
    SendClientMessage(pID,GRÜN,"Solltest du gegen diese Regel wiederstoßen, musst du mit einer Fraktionssperre rechnen.");
    SendClientMessage(pID,GRÜN,"Viel Glück beim aufbau dieser Fraktion !");
    SpielerSpeichern(pID);
    return 1;
    }

    Guten Tag, wies die Überschrift suche ich ein Ranksystem und ein /Fraktionschat (/fch) Im Fraktion's Chat sollen vor den Namen die Jeweiligen Ränge definiert, habe es jetzt soweit dass ich die Rangnamen Definiert habe.


    // Army
    #define Armyrangname1 "Rekrut"
    #define Armyrangname2 "Soldat"
    #define Armyrangname3 "Seargent"
    #define Armyrangname4 "Lieutnant"
    #define Armyrangname5 "Ausbilder"
    #define Armyrangname6 "General"
    //PD


    #define lspdrangname1 "Praktikant"
    #define lspdrangname2 "Azubi"
    #define lspdrangname3 "Officer"
    #define lspdrangname4 "Ausbilder"
    #define lspdrangname5 "Co-Präsident"
    #define lspdrangname6 "Präsident"


    //GroveStreet
    #define groverangname1 "Knecht"
    #define groverangname2 "Thug"
    #define groverangname3 "Nigga"
    #define groverangname4 "Capo"
    #define groverangname5 "Underboss"
    #define groverangname6 "BigBoss"


    ocmd:f(playerid,params[])
    {
    new text[128];
    if(sscanf(params,"s",text))return SendClientMessage(playerid, ROT, "Benutzung: /f [TEXT]");
    format(text,sizeof(text),"%s %s: %s",ReturnRank(GetPVarInt(playerid,"rank"),GetPVarInt(playerid,"Fraktion")),SpielerName(playerid),text);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    SendClientMessage(i,BLAU,text);
    }
    }
    }
    return 1;
    }
    stock ReturnRank(Fraktion,rank)
    {
    new _s[128];
    switch(Fraktion)
    {
    case 1:
    {
    switch(rank)
    {
    case 0:format(_s,sizeof(_s),"%s",Armyrangname1);
    case 1:format(_s,sizeof(_s),"%s",Armyrangname2);
    case 2:format(_s,sizeof(_s),"%s",Armyrangname3);
    case 3:format(_s,sizeof(_s),"%s",Armyrangname4);
    case 4:format(_s,sizeof(_s),"%s",Armyrangname5);
    case 5:format(_s,sizeof(_s),"%s",Armyrangname6);
    }
    }
    case 2:
    {
    switch(rank)
    {
    case 0:format(_s,sizeof(_s),"%s",lspdrangname1);
    case 1:format(_s,sizeof(_s),"%s",lspdrangname2);
    case 2:format(_s,sizeof(_s),"%s",lspdrangname3);
    case 3:format(_s,sizeof(_s),"%s",lspdrangname4);
    case 4:format(_s,sizeof(_s),"%s",lspdrangname5);
    case 5:format(_s,sizeof(_s),"%s",lspdrangname6);
    }
    }
    }
    return _s;

    dazu hab ich den stock:


    stock SpielerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;

    EDIT: Habs so, jedoch wenn ich nun /f eingebe kommt zwar ne Nachricht aber ohne den Jeweiligen rank davor :s HILFEEEEEEEEEEEE

    Abend, Brotfischer


    Ich bin dabei ein Timer für mein Bomben system einzurichten, ich gebe /getbomb ein und bekomme direckt die Bombe


    Ziel ist es das ich /getbomb eingeben muss, dann kommt eine Nachricht :,, Du klaust grade die Bombe bitte warte etwas'' dann soll man warten und nach 3 Minuten die Bombe bekommen, habe bisher das:


    Oben:


    forward Bombtimer(playerid);


    Beim /getbomb befehl:


    SetTimer("Bombtimer",1000*60*3,false);


    der Public:


    public Bombtimer(playerid)
    {
    SendClientMessage(playerid,GRÜN,"Die Bombe wird geklaut bitte warte einige Minuten");
    return 1;
    }


    Wenn ich nun /getbomb eingebe bekomme ich trotzdem direckt die Bombe und die nachricht kommt erst nach 3 Minuten -.- und ich wills genau umgekehrt erst Nachricht, 3 Minuten warte, Bombe erhalten, Danke im VOrraus :love:


    MfG, Andy

    ocmd:report(playerid,params[])
    {
    if(IsPlayerConnected(playerid))
    {
    new rep[128];
    if(sscanf(params,"s",rep)) return SendClientMessage(playerid,ROT,"ERROR: /report [text]");
    format(rep,sizeof(rep),"Report von: %s: %s",SpielerName(playerid),rep);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(GetPVarInt(i,"AdminLevel")!=0)
    {
    SendClientMessage(i,ROT,rep);
    }
    }
    }
    SendClientMessage(playerid,ROT,"Report erfolgreich gesendet!");
    }
    return 1;
    }
    Probier's mal so, ist ein simples /report sys.