Problem mit "GetPVarInt"

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 Liebe Community,


    Ich habe ein Problem mit den GetPVarInt wie in der Beschreibung...
    erstmal die .pwn
    if(GetPVarInt(playerid,"Adminlevel")==0)
    {
    new string [128];
    new AdminLevelName[64];
    switch(GetPVarInt(playerid,"Adminlevel"))
    {
    case 0:{AdminLevelName="SERVER: Du bist als normaler User eingeloggt.";}
    case 1:{AdminLevelName="Du bist als Admin Level 1 eingeloggt.";}
    case 2:{AdminLevelName="Du bist als Admin Level 2 eingeloggt.";}
    case 3:{AdminLevelName="Du bist als Admin Level 3 eingeloggt.";}
    case 4:{AdminLevelName="Du bist als Admin Level 4 eingeloggt.";}
    case 5:{AdminLevelName="Du bist als Admin Level 5 eingeloggt.";}
    case 10:{AdminLevelName="Du bist als Admin Level 10 eingeloggt.";}
    case 15:{AdminLevelName="Du bist als Admin Level 15 eingeloggt.";}
    case 25:{AdminLevelName="Du bist als Admin Level 25 eingeloggt.";}
    case 50:{AdminLevelName="Du bist als Admin Level 50 eingeloggt.";}
    case 100:{AdminLevelName="Du bist als Admin Level 100 eingeloggt.";}
    case 500:{AdminLevelName="Du bist als Admin Level 500 eingeloggt.";}
    case 1000:{AdminLevelName="Du bist als Admin Level 1000 eingeloggt.";}
    case 1400:{AdminLevelName="Du bist als Admin Level 1400 eingeloggt.";}
    case 1455:{AdminLevelName="Du bist als Admin Level 1455 eingeloggt.";}
    case 1456:{AdminLevelName="Du bist als Admin Level 1456 eingeloggt.";}
    case 1457:{AdminLevelName="Du bist als Admin Level 1457 eingeloggt.";}
    case 1458:{AdminLevelName="Du bist als Admin Level 1458 eingeloggt.";}
    case 2000:{AdminLevelName="Du bist als Admin Level 2000 eingeloggt.";}
    case 2100:{AdminLevelName="Du bist als Admin Level 2100 eingeloggt.";}
    case 2150:{AdminLevelName="Du bist als Admin Level 2150 eingeloggt.";}
    }
    format(string,sizeof (string),"%s",AdminLevelName);
    SendClientMessage(playerid,GOLD,string);
    }
    Ich will das wenn man auf den Server joint sieht welches Adminlevel man hat oder halt ein normaler User ist...
    Ich hatte dies bereits bekommen mit einer viel längeren Variante, die war mir aber zu lang ._.
    So nun zum eigentlichen Problem:
    Wenn ich auf den Server Joine z.B. als Adminlevel 1 wird nix angezeigt, bei allen anderen Adminlevel auch nicht, aber als einziges beim 1. also case 0:{AdminLevelName="SERVER: Du bist als normaler User eingeloggt.";}Wie bekomm ich das nun hin, dass das bei den anderen Level auch angezeigt wird... Ich habs auch schon versucht mit if(GetPVarInt(playerid,"Adminlevel")==0||GetPVarInt(playerid,"Adminlevel")==1)//war länger, halt soviel wie es Level gab, hatte es aber wieder gelöschtusw aber da stand dann error 075: input line too long (after substitutions)
    könnt ihr mir bitte helfen


    mfg
    Karl_Schuhmann

  • die vor
    if(GetPVarInt(playerid,"Adminlevel")==0||GetPVarInt(playerid,"Adminlevel")==1)//war länger, halt soviel wie es Level gab, hatte es aber wieder gelöscht
    aber wie gesagt diese zeile war länger
    #edit
    die davor war nur ein }

  • Der Pawn compiler kann in einer Zeile nut begrenzt viele Zeichen haben. Abfragen dürfen also nicht allzu lang sein. Das bedeutete dein Error.


    Zum Case konstrukt. Bau es dir einfach so um:


    case 0:{strins(AdminLevelName,"SERVER: Du bist als normaler User eingeloggt.",0);}
    Sollte funktionieren. Alternativ


    case 0:{strpack(AdminLevelName, "SERVER: Du bist als normaler User eingeloggt.");}

  • Der Pawn compiler kann in einer Zeile nut begrenzt viele Zeichen haben. Abfragen dürfen also nicht allzu lang sein. Das bedeutete dein Error.


    Und wie schaffe ich es nun das es trotzdem bei allen Leveln angezeigt wird?


    #edit
    hab dem schluß noch selber geschafft :p indem ich es einfach in mehreren Zeilen versetzt geschrieben hab... thx für die schnelle hilfe ! :)