/f chat mit Rangnamen..

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 Brotfischer ich habe nu ein f chat system wo die rangnamen mit drinne sind nu hab ich doch einige errors bitte um hilfe :s


    Hab nen selfmade angefangen und arbeite mit ocmd's




    ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<getmaxplayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    new rangname[64];
    if(GetPVarInt(i,"Fraktion")==1)
    {
    case 0:{rangname=Armyrangname1;}
    case 1:{rangname=Armyrangname2;}
    case 2:{rangname=Armyrangname3;}
    case 3:{rangname=Armyrangname4;}
    case 4:{rangname=Armyrangname5;}
    case 5:{rangname=Armyrangname6;}
    }
    }
    }
    }
    return 1;

    Edite dazu die Rangnamen:


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


    Hier die Errors/Warnings


    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 017: undefined symbol "getmaxplayers"
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(914) : error 014: invalid statement; not in switch
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(914) : warning 215: expression has no effect
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(914) : error 001: expected token: ";", but found ":"
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(914) : error 029: invalid expression, assumed zero
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(914) : fatal error 107: too many error messages on one line
    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    5 Errors.

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

  • ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<MAX_PLAYERS(); i++) // hier sind die fehlermeldungen..
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    new rangname[64];
    if(GetPVarInt(i,"Fraktion")==1)
    {
    case 0:{rangname=Armyrangname1;}
    case 1:{rangname=Armyrangname2;}
    case 2:{rangname=Armyrangname3;}
    case 3:{rangname=Armyrangname4;}
    case 4:{rangname=Armyrangname5;}
    case 5:{rangname=Armyrangname6;}
    }
    }
    }
    }
    return 1;

    nu kommt das..
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 029: invalid expression, assumed zero
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 001: expected token: ")", but found ";"
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 001: expected token: ";", but found ")"
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

  • Oooh, was sollte ich denn da nun am besten machen, ich dachte so bekomme ich rangnamen sys und fchat in eins rein :s
    weil habe if(!isPlayerInFrakt(playerid,1)) - if(!isPlayerInFrakt(playerid,17) )^^
    Kann mir dann jemand ein Rangnamen system schreiben ? :s also wenn ichs nu recht verstehen,..


    edit hatte die codes bissl falsch formoliert :D

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

    Einmal editiert, zuletzt von [SdL]Andy ()

  • Sooo


    Einmal brauchst du erstmal
    stock PlayerName(playerid)
    {
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof(pname));
    return pname;
    }


    Dann habe ich dir eine neue Funktion geschrieben
    stock ReturnArmyRank(rank)
    {
    new _s[128];
    switch(rank)
    {
    case 1:format(_s,sizeof(_s),"%s",Armyrangname1);
    case 2:format(_s,sizeof(_s),"%s",Armyrangname2);
    case 3:format(_s,sizeof(_s),"%s",Armyrangname3);
    case 4:format(_s,sizeof(_s),"%s",Armyrangname4);
    case 5:format(_s,sizeof(_s),"%s",Armyrangname5);
    case 6:format(_s,sizeof(_s),"%s",Armyrangname6);
    }
    return _s;
    }


    Und nun dein Befehl
    ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s[300]",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<MAX_PLAYERS(); i++) // hier sind die fehlermeldungen..
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    new rangname[64];
    if(GetPVarInt(i,"Fraktion")==1)
    {
    format(string,100,"%s %s: %s",ReturnArmyRank(GetPVarInt(playerid,"FraktionRang")),PlayerName(playerid),text);
    SendClientMessage(i,COLOR,string);
    }
    }
    }
    }
    return 1;
    }


    Alles ausm Kopf geschrieben wenn fehler da sind bitte melden.



  • Vielen dank, doch wenn ich dies einfüge bzw übernehme habe ich die Funktion doch nur für die Army oder?


    Ich möchte es gerne für alle fraktionen haben, dass jeder mit /fch im memberchat schreiben kann..


    z.B. habe auch noch die rangnamen:


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

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

  • ocmd:f(playerid,params[])
    {
    new text[128];
    if(sscanf(params,"s",text))return SendClientMessage(playerid, orange, "Benutzung: /f [TEXT]");
    format(text,sizeof(text),"[Fraktion]%s: %s",Spielername(playerid),text);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrak(i,GetPVarInt(playerid,"Fraktion")))
    {
    SendClientMessage(i,blau,text);
    }
    }
    }

    return 1;




    }


    So das funkt schon mal 100%, fehtl lediglich:



    new rang;
    switch(GetPVarInt(playerid, "Rang"))
    {
    case 0: { rang = XXX; }
    }

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • Bin mir unsicher ob man switch im switch verwenden kann aber probier es einfach mal aus.
    stock ReturnRank(fraktion,rank)
    {
    new _s[128];
    switch(fraktion)
    {
    case 1:
    {
    switch(rank)
    {
    case 1:format(_s,sizeof(_s),"%s",Armyrangname1);
    case 2:format(_s,sizeof(_s),"%s",Armyrangname2);
    case 3:format(_s,sizeof(_s),"%s",Armyrangname3);
    case 4:format(_s,sizeof(_s),"%s",Armyrangname4);
    case 5:format(_s,sizeof(_s),"%s",Armyrangname5);
    case 6:format(_s,sizeof(_s),"%s",Armyrangname6);
    }
    }
    case 2:
    {
    switch(rank)
    {
    case 1:format(_s,sizeof(_s),"%s",lspdrangname1);
    case 2:format(_s,sizeof(_s),"%s",lspdrangname2);
    case 3:format(_s,sizeof(_s),"%s",lspdrangname3);
    case 4:format(_s,sizeof(_s),"%s",lspdrangname4);
    case 5:format(_s,sizeof(_s),"%s",lspdrangname5);
    case 6:format(_s,sizeof(_s),"%s",lspdrangname6);
    }
    }
    }
    return _s;
    }


    und noch
    ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s[300]",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<MAX_PLAYERS(); i++) // hier sind die fehlermeldungen..
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    format(string,100,"%s %s: %s",ReturnRank(GetPVarInt(playerid,"FraktionRang"),GetPVarInt(playerid,"Fraktion")),PlayerName(playerid),text);
    SendClientMessage(i,COLOR,string);
    }
    }
    }
    return 1;
    }

  • C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 029: invalid expression, assumed zero
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 001: expected token: ")", but found ";"
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 001: expected token: ";", but found ")"
    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.

    so habs drinne nu kommt das ^^


    Edit: die zeilen dazu ^^


    ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s[300]",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<MAX_PLAYERS(); i++) // wieder hier :s
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    format(string,100,"%s %s: %s",ReturnRank(GetPVarInt(playerid,"FraktionRang"),GetPVarInt(playerid,"Fraktion")),PlayerName(playerid),text);
    SendClientMessage(i,COLOR,string);
    }
    }
    }
    return 1;
    }

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s[300]",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<GET_MAX_PLAYERS(); i++) // hab da GET_ vorgemacht.. dann kommt das..
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    format(string,100,"%s %s: %s",ReturnRank(GetPVarInt(playerid,"FraktionRang"),GetPVarInt(playerid,"Fraktion")),PlayerName(playerid),text);
    SendClientMessage(i,GRÜN,string);
    }
    }
    }
    return 1;

    C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(905) : error 017: undefined symbol "GET_MAX_PLAYERS"
    //den hab ich weg hab den stock vergessen :s trz noch den ersten <<C:\Users\Andre\Desktop\Neuer Ordner\gamemodes\Reallife.pwn(911) : error 017: undefined symbol "PlayerName"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

  • ocmd:fch(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s[300]",text))return SendClientMessage(playerid,ROT,"/fch [Text]");
    for(new i=0; i<MAX_PLAYERS; i++) // hier sind die fehlermeldungen..
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    format(string,100,"%s %s: %s",ReturnRank(GetPVarInt(playerid,"FraktionRang"),GetPVarInt(playerid,"Fraktion")),PlayerName(playerid),text);
    SendClientMessage(i,COLOR,string);
    }
    }
    }
    return 1;
    }


    Und das noch einfügen Iwo


    stock PlayerName(playerid)
    {
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof(pname));
    return pname;
    }

  • EDIT: Danke ! Geht alles bis auf dass mein Rangname nicht angezeigt wird, bitte um eure hilfe !!!!

    Script-Neuling:[x]
    50 Beiträge: []
    100 Beiträge: []
    200 Beiträge: []
    350 Beiträge: []
    500 Beiträge: []
    Script-Fortgeschrittener: []
    600 Beiträge: []
    700 Beiträge: []
    900 Beiträge: []
    Script-Professioneller: []
    1500 Beiträge: []
    Script-Experte:[]
    _______________________


    Selfmade Fortschritt: 5%


    _______________________

    2 Mal editiert, zuletzt von [SdL]Andy ()