News System buggt

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
  • Hey, ich habe ein Newssystem gemacht & nun buggt alles rumm bzw es funktioniert nicht richtig.
    Hier mal alles:
    enum nInfo
    {
    newsActive,
    newsStep
    };
    new NewsInfo[nInfo];
    new News[][] ={
    "Test",
    "Test1",
    "Test2",
    "Test3",
    "Test4",
    "Test5"
    };



    new Text:NewsText;
    NewsText = TextDrawCreate(87.000000, 436.000000, "50");
    TextDrawBackgroundColor(NewsText, 255);
    TextDrawFont(NewsText, 2);
    TextDrawLetterSize(NewsText, 0.239998, 1.200000);
    TextDrawColor(NewsText, 0xff0000ff);
    TextDrawSetOutline(NewsText, 0);
    TextDrawSetProportional(NewsText, 1);
    TextDrawSetShadow(NewsText, 1);


    if(strcmp(cmdtext,"/toginfo",true)==0){
    if(InfoLeiste[playerid] <= 1){
    TextDrawHideForPlayer(playerid,NewsText);
    TextDrawHideForPlayer(playerid, Info0);
    TextDrawHideForPlayer(playerid, Info1);
    InfoLeiste[playerid] = 22;
    SendClientMessage(playerid,Farbe_Grau,"Informationsleiste deaktiviert!");
    }else if(InfoLeiste[playerid] == 22){
    TextDrawShowForPlayer(playerid,NewsText);
    TextDrawShowForPlayer(playerid, Info0);
    TextDrawShowForPlayer(playerid, Info1);
    InfoLeiste[playerid] = 0;
    SendClientMessage(playerid,Farbe_Grau,"Informationsleiste aktiviert!");
    }
    return 1;
    }


    Das bei meinen spieler laden stock
    TextDrawShowForPlayer(playerid,NewsText);
    SetTimer("SetNews",225,true);
    InfoLeiste[playerid] = 0;


    Setnews:


    public SetNews(){
    if(NewsInfo[newsStep] > strlen(News[NewsInfo[newsActive]])){
    if((NewsInfo[newsActive]+1) < sizeof(News))
    NewsInfo[newsActive]++;
    else
    NewsInfo[newsActive] = 0;
    NewsInfo[newsStep] = 0;
    }else
    NewsInfo[newsStep]++;
    new Text[300];
    strmid(Text,News[NewsInfo[newsActive]],NewsInfo[newsStep],strlen(News[NewsInfo[newsActive]]),sizeof(Text));
    TextDrawSetString(NewsText,Text);
    return 1;
    }


    Das Problem ist das beim einloggen diese "50" vom Textdraw angezeitgt wird & beim spieler Spawnen dann garnichts mehr.
    Das verbuggt sich dann in meinen Tacho & unter dem Fahrzeug namen ist dann die Info.
    mfg

  • Also, das ist ein News Text der sich immer ändern soll also nach der reihe also das hier new News[][] ={
    "Test",
    "Test1",
    "Test2",
    "Test3",
    "Test4",
    "Test5"
    };


    so, der wird eig. unten angezeigt aber wird nach dem Spawn nicht angezeigt nur im Login Fenster wird eine "50" angezeit die von dem TextDrawCreate.
    Da eigentlich das sich unten dort immer wecheln soll. So aber dann wenn man in ein auto steigt ist plötzlich im tacho das textdraw was eigentlich unten sein soll.
    mfg

  • Vermutlich eine ID-Verschiebung.
    Lass dir mal die ID vom Tacho und der Leiste ausgeben (printf).

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.