[HILFE]2 Fragen

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
  • Guten Abend Breadfish :)


    Hab 2 Fragen, die erste ist:


    Kann mir jmd sagen wie ich bei meinen Beispiel:


    SetObjectMaterialText(Werbung1, "Herzlich Willkommen auf Planet Reallife!", 0, 130, "Pricedown", 32, 0, -32768, -16777216, 1);


    Den Text Versetzt machen kann? Also ich möchte "Herzlich Willkommen"dann
    eine Zeile darunter und etwas weiter daneben "auf Planet reallife" Habs
    mit \n Versucht aber des wird mit Angezeigt ;D


    Oder ist es Überhaupt möglich?


    Und die 2 Ist.Ich habe Tacho Textdraws Eingefügt sobald Ich ins Auto steige wird jedoch etwas von Login Menü mit Angezeigt.Ich habe keine Ahnung wo das Herkommt.


    //Textdraws-LoginInterface
    new Text:Logo0;
    new Text:Rand1;
    new Text:Rand2;
    new Text:Enjoy3;
    new Text:Linie4;
    new Text:PR5;
    new Text:Willkommen; //<-- wird Angezeigt sobald man ins Autosteigt und geht wd Weg sobald man Aussteigt
    new Text:Box;
    new Text:Register;
    new Text:Login;
    new Text:Change;
    new Text:Regeln;
    new Text:Credits;
    new Text:Komma;


    //Textdraws-Tacho <--- Die sind neu
    new Text:Tank[MAX_PLAYERS];
    new Text:Leer[MAX_PLAYERS];
    new Text:Fahrzeug[MAX_PLAYERS];
    new Text:Zustand[MAX_PLAYERS];
    new Text:Tankmenge[MAX_PLAYERS];
    new Text:Geschwind[MAX_PLAYERS];
    new Text:Brand[MAX_PLAYERS];
    new Text:SMotor[MAX_PLAYERS];
    new Text:SLicht[MAX_PLAYERS];
    new Text:SSchloss[MAX_PLAYERS];
    new Text:Alarm[MAX_PLAYERS];
    new Text:Kmh[MAX_PLAYERS];


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
    for(new i; i < MAX_PLAYERS; i ++)
    {
    TextDrawShowForPlayer(playerid, Tank);
    TextDrawShowForPlayer(playerid, Leer);
    TextDrawShowForPlayer(playerid, Fahrzeug);
    TextDrawShowForPlayer(playerid, Zustand);
    TextDrawShowForPlayer(playerid, Tankmenge);
    TextDrawShowForPlayer(playerid, Geschwind);
    TextDrawShowForPlayer(playerid, Brand);
    TextDrawShowForPlayer(playerid, SMotor);
    TextDrawShowForPlayer(playerid, SLicht);
    TextDrawShowForPlayer(playerid, SSchloss);
    TextDrawShowForPlayer(playerid, Alarm);
    TextDrawShowForPlayer(playerid, Kmh);
    }
    }
    else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
    {
    for(new i; i < MAX_PLAYERS; i ++)
    {
    TextDrawHideForPlayer(playerid, Tank);
    TextDrawHideForPlayer(playerid, Leer);
    TextDrawHideForPlayer(playerid, Fahrzeug);
    TextDrawHideForPlayer(playerid, Zustand);
    TextDrawHideForPlayer(playerid, Tankmenge);
    TextDrawHideForPlayer(playerid, Geschwind);
    TextDrawHideForPlayer(playerid, Brand);
    TextDrawHideForPlayer(playerid, SMotor);
    TextDrawHideForPlayer(playerid, SLicht);
    TextDrawHideForPlayer(playerid, SSchloss);
    TextDrawHideForPlayer(playerid, Alarm);
    TextDrawHideForPlayer(playerid, Kmh);
    }
    }
    return 1;
    }



    // sry das so schlecht Eingerückt ist im Forum. Wenn ihr noch weitere publics sehen wollt sagt bescheid

    Einmal editiert, zuletzt von xPatrick ()

  • Wieso gehst du mit einer Schleife alle Spieler durch, und zeigst die Textdraws nur für einen Spieler an. Entweder du zeigst sie für alle, mit der Schleife, oder nur für den Spieler (playerid) ohne die Schleife. Denn das mit der Schleife macht irgendwie kein Sinn für ein Tacho.

  • Du hast bei den Variablen immer [MAX_PLAYERS]; hinter geschrieben. Das musst du auch verwenden, und das wendest du so an:
    TextDrawShowForPlayer(playerid,Tank[playerid]);
    Das war nun ein Beispiel. Du hast oben new Tank[MAX_PLAYERS];.


    Ich hoffe du hast es verstanden. Wenn nicht melde dich noch einmal.

  • Also habe nun oben im Script:



    //Textdraws:Tacho
    new Text:Tank[MAX_PLAYERS];
    new Text:Leer[MAX_PLAYERS];
    new Text:Fahrzeug[MAX_PLAYERS];
    new Text:Zustand[MAX_PLAYERS];
    new Text:Tankmenge[MAX_PLAYERS];
    new Text:Geschwind[MAX_PLAYERS];
    new Text:Brand[MAX_PLAYERS];
    new Text:SMotor[MAX_PLAYERS];
    new Text:SLicht[MAX_PLAYERS];
    new Text:SSchloss[MAX_PLAYERS];
    new Text:Alarm[MAX_PLAYERS];
    new Text:Kmh[MAX_PLAYERS];


    public OnGameModeInit()
    {


    Zustand = TextDrawCreate(499.000000, 352.000000, "~b~Tankart:");
    TextDrawBackgroundColor(Zustand, 255);
    TextDrawFont(Zustand, 1);
    TextDrawLetterSize(Zustand, 0.250000, 1.500000);
    TextDrawColor(Zustand, 65535);
    TextDrawSetOutline(Zustand, 0);
    TextDrawSetProportional(Zustand, 1);
    TextDrawSetShadow(Zustand, 1);


    Geschwind = TextDrawCreate(499.000000, 378.000000, "~b~Geschwindigkeit:");
    TextDrawBackgroundColor(Geschwind, 255);
    TextDrawFont(Geschwind, 1);
    TextDrawLetterSize(Geschwind, 0.250000, 1.500000);
    TextDrawColor(Geschwind, 65535);
    TextDrawSetOutline(Geschwind, 0);
    TextDrawSetProportional(Geschwind, 1);
    TextDrawSetShadow(Geschwind, 1);
    return 1;
    //Dann diese bei GM Init (aus Kopierschutz nicht alle :D)
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
    TextDrawShowForPlayer(playerid, Tank[playerid]);
    TextDrawShowForPlayer(playerid, Leer[playerid]);
    TextDrawShowForPlayer(playerid, Fahrzeug[playerid]);
    TextDrawShowForPlayer(playerid, Zustand[playerid]);
    TextDrawShowForPlayer(playerid, Tankmenge[playerid]);
    TextDrawShowForPlayer(playerid, Geschwind[playerid]);
    TextDrawShowForPlayer(playerid, Brand[playerid]);
    TextDrawShowForPlayer(playerid, SMotor[playerid]);
    TextDrawShowForPlayer(playerid, SLicht[playerid]);
    TextDrawShowForPlayer(playerid, SSchloss[playerid]);
    TextDrawShowForPlayer(playerid, Alarm[playerid]);
    TextDrawShowForPlayer(playerid, Kmh[playerid]);


    }
    else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
    {
    TextDrawHideForPlayer(playerid, Tank[playerid]);
    TextDrawHideForPlayer(playerid, Leer[playerid]);
    TextDrawHideForPlayer(playerid, Fahrzeug[playerid]);
    TextDrawHideForPlayer(playerid, Zustand[playerid]);
    TextDrawHideForPlayer(playerid, Tankmenge[playerid]);
    TextDrawHideForPlayer(playerid, Geschwind[playerid]);
    TextDrawHideForPlayer(playerid, Brand[playerid]);
    TextDrawHideForPlayer(playerid, SMotor[playerid]);
    TextDrawHideForPlayer(playerid, SLicht[playerid]);
    TextDrawHideForPlayer(playerid, SSchloss[playerid]);
    TextDrawHideForPlayer(playerid, Alarm[playerid]);
    TextDrawHideForPlayer(playerid, Kmh[playerid]);

    }
    return 1;
    }



    Habe jetzt über 26 Errors (Sind fast alle die Selben denke Ich)


    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(249) : error 033: array must be indexed (variable "Tank")
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(250) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(251) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(252) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(253) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(254) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(255) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(256) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(258) : error 033: array must be indexed (variable "Leer")
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(259) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(260) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(261) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(262) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(263) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(264) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(265) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(266) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(267) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(268) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(270) : error 033: array must be indexed (variable "Fahrzeug")
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(271) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(272) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(273) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(274) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(275) : error 035: argument type mismatch (argument 1)
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(276) : error 035: argument type mismatch (argument 1)


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



    26 Errors.


    //edit:


    Davor war ja mein problem, das beim Einsteigen im Auto einteil des LoginMenüs mit angezeigt wurde.Hoffe mal dieser Fehler geht weg sobald das hier Richtig ist

  • Okay jetzt sind nurnoch 24 Warnings :D


    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(700) : warning 213: tag mismatch



    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
    PlayerTextDrawShow(playerid, Tank);
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Dann kommt sowas :/


    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(704) : error 028: invalid subscript (not an array or too many subscripts): "Tank"
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(704) : warning 215: expression has no effect
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(704) : error 001: expected token: ";", but found "]"
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(704) : error 029: invalid expression, assumed zero
    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(704) : fatal error 107: too many error messages on one line


  • new PlayerText:Tank[MAX_PLAYERS];


    OnGameModeInit():
    {
    Tank[playerid] = CreatePlayerTextDraw(playerid,499.000000, 365.000000, "~b~Tank:");
    TextDrawBackgroundColor(Tank[playerid], 255);
    TextDrawFont(Tank[playerid], 1);
    TextDrawLetterSize(Tank[playerid], 0.250000, 1.500000);
    TextDrawColor(Tank[playerid], 65535);
    TextDrawSetOutline(Tank[playerid], 0);
    TextDrawSetProportional(Tank[playerid], 1);
    TextDrawSetShadow(Tank[playerid], 1);
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
    PlayerTextDrawShow(playerid, Tank[playerid]);


    }
    else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
    {
    PlayerTextDrawHide(playerid, Tank);
    }
    return 1;
    }



    So hab Ich das nun....


    C:\Users\Paddy\Desktop\PlanetReallife\gamemodes\PlanetReallife.pwn(251) : error 017: undefined symbol "playerid": Das ist diese Zeile Tank[playerid] = CreatePlayerTextDraw(playerid,499.000000, 365.000000, "~b~Tank:");


    Ich verzweifle Langsam an diesen mist tacho ;(


  • machs bei OnPlayerConnect rein, da bei OnGameModeInit kein parameter playerid gibt

  • So Leute...


    Habe nun:



    new PlayerText:Tank[MAX_PLAYERS];


    public OnPlayerConnect(playerid)
    {
    Tank[playerid] = CreatePlayerTextDraw(playerid,499.000000, 365.000000, "~b~Tank:");
    PlayerTextDrawBackgroundColor(playerid,Tank[playerid], 255);
    PlayerTextDrawFont(playerid,Tank[playerid], 1);
    PlayerTextDrawLetterSize(playerid,Tank[playerid], 0.250000, 1.500000);
    PlayerTextDrawColor(playerid,Tank[playerid], 65535);
    PlayerTextDrawSetOutline(playerid,Tank[playerid], 0);
    PlayerTextDrawSetProportional(playerid,Tank[playerid], 1);
    PlayerTextDrawSetShadow(playerid,Tank[playerid], 1);
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
    PlayerTextDrawShow(playerid, Tank[playerid]);
    }
    else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
    {
    PlayerTextDrawHide(playerid, Tank[playerid]);
    }
    return 1;
    }



    Ich habe es bei OnPlayerConnect reingemacht, zudem Alles von Textdraw zu PlayerTextdraw geändert und siehe da:


    :thumbup: Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase :thumbup:


    Hoffe nun das es klappt und nicht wieder der Login TextDraw mit Angezeigt wird sobald man ins Auto steigt


    //edit:


    Klappt! Danke an alle die Gedult mit mir hatten

    Einmal editiert, zuletzt von xPatrick ()