Beiträge von #S.

    Ich würde dass eher mit einer Variable machen.

    // Oben ins Script
    new Dienst[MAX_PLAYERS];
    // Befehl
    if (strcmp("/dienst", cmdtext, true, 10) ==0)
    {
    if(IsPlayerInRangeOfPoint(playerid,10,256.2878,75.3668,1003.6406))
    {
    if(Dienst[playerid] == 0)
    {
    new name2[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid, name2, sizeof(name2));
    format(string, sizeof(string), "Beamter %s ist nun im Dienst", name2);
    SendClientMessageToAll(ROT,string);
    SetPlayerColor(playerid,PINK);
    SetPlayerSkin(playerid,266);
    }
    else if(Dienst[playerid] == 1)
    {
    new name2[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid, name2, sizeof(name2));
    format(string, sizeof(string), "Beamter %s ist nun nicht mehr im Dienst", name2);
    SendClientMessageToAll(ROT,string);
    SetPlayerColor(playerid,ROT);
    SetPlayerSkin(playerid,0);
    }
    }
    SendClientMessage(playerid,PINK,"Du bist nicht im Umkleideraum.");
    return 1;
    }

    Viel Spaß ;)


    lg :thumbup:

    Hi Leute,


    ich wollte eine kleines InGame Statistiken Textdraw machen, dass garnicht klappt.
    Es will sich nicht aktualisieren. Siehe Bild:

    Kills, Tode und Killstreaks bleiben immer auf 0.
    Hier der Code,

    stock Test(playerid) // MADE BY KALIBER
    {
    new string[256];
    format(string,sizeof(string),"Leben:~n~Forum: *zensored*~n~Teamspeak: Folgt~n~Kills: %d ~n~Tode: %d ~n~Killstreaks: %d",GetPVarInt(playerid,"Kills"),GetPVarInt(playerid,"Tode"),GetPVarInt(playerid,"Killstreak"));
    InfoBox[playerid] = TextDrawCreate(9.000000,280.000000,string);
    TextDrawBackgroundColor(InfoBox[playerid], 255);
    TextDrawFont(InfoBox[playerid], 1);
    TextDrawLetterSize(InfoBox[playerid], 0.430000, 1.000000);
    TextDrawColor(InfoBox[playerid],-65281);
    TextDrawSetOutline(InfoBox[playerid], 0);
    TextDrawSetProportional(InfoBox[playerid], 1);
    TextDrawSetShadow(InfoBox[playerid], 1);
    TextDrawUseBox(InfoBox[playerid], 1);
    TextDrawBoxColor(InfoBox[playerid], 170);
    TextDrawTextSize(InfoBox[playerid],167.000000,284.000000);
    }
    // OnPlayerConnect
    Test(playerid);
    ShowProgressBarForPlayer(playerid,Bar:HPBar[playerid]);
    HPBar[playerid] = CreateProgressBar(57.0,284.0, 86.50, 1.50, -16776961, 100.0);
    // OnPlayerDeath
    TextDrawDestroy(InfoBox[playerid]);
    Test(playerid);
    // ... Anderes Zeug wie +1 Score etc.
    TextDrawSetString(InfoBox[playerid],neuestatsstring);
    TextDrawShowForPlayer(playerid,InfoBox[playerid]);

    Hoffe jemand kann helfen. :/


    lg :thumbup:


    #E: Neue interessante Entdeckung: Egal ob ich in meiner User File etwas veränder, (sprich: Tode auf 5 und Kills auf 2 oder so) wird mir trotzdem NICHTS angezeigt. IMMER 0. Was kann nur die Lösung sein? Ich verzweifle. ;(

    Joa scheint hier im Board auch sehr nett zu sein. Schaue obwohl ich davon keine Ahnung hab auch manchmal im Sammelthread Coding rein, dort hilft er jedem. ;)
    Top, weiter so.


    lg :thumbup:

    Hey Leute,


    ich habe ein komplett neues Problem. :S
    Ich habe nun ein Killstreak System hinzugefügt, welches ich natürlich bei der InfoBox direkt hinzugefügt habe.

    new string[256];
    format(string,sizeof(string),"Leben:~n~Forum: *zensored*~n~Teamspeak: Folgt~n~Kills: %i ~n~Tode: %i ~n~Killstreaks: %i",SpielerInf[playerid][Kills],SpielerInf[playerid][Tode],SpielerInf[playerid][Killstreak]);

    Nun werden die Kills, die Tode und die Killstreaks immer als 0 angezeigt. Dabei lasse ich doch alle Integer mit den SpielerInf auslesen. Was ist falsch? :o


    lg :thumbup:


    #E: Komplett neues Problem.

    Das heisst ich muss nur den Variablen Wert mit ++; erhöhen? Keine Abfrage ob er gestorben ist?
    Dann ist es ja einfach so,

    enum SpielerDaten
    {
    Killstreak
    }
    new SpielerInf[MAX_PLAYERS][SpielerDaten];
    //OnPlayerDeath
    Killstreak[playerid] ++;
    if(Killstreak[playerid] == 3)
    {
    SCM(...."Du hast 3 Leute nacheinander getötet! 500 $ +!");
    }


    Ging es schon so? Wenn ja dann hab ichs gerafft. :D


    lg :thumbup:

    Wenn man einen erschießt und einen Wanted bekommt? Sowas hab ich nicht in OnPlayerDeath.^^
    Und bei den Toden mitzählen lassen: Könnt ihr mir ein Beispiel geben? Und wie frag ich ab ob er schon vorher nicht gestorben ist?
    Ich komme nicht ganz mit.


    lg :thumbup:

    Hi Leute,


    ich habe schon ein wenig gegoogelt, und herausgefunden, dass man angeblich "einfach" ein Abschuss Serien System scripten kann.
    Nur iwie finde ich dass nicht einfach. Ich habe aber schon eine kleine "Überlegung", welche ich aber nicht umsetzen kann. :|


    Überlegung: Tode mitzählen. Aber wie?
    Würde mich freuen. :S


    lg :thumbup:

    Warum zeigst es mir an "Falscher Paramter an zweiter Stelle"?

    TextDrawHideForPlayer(playerid,InfoBox);
    // Wiki sagt es noch so:
    TextDrawHideForPlayer(playerid,InfoBox(playerid)); /* <--- Error ebenfalls */


    lg :thumbup:

    Wieso bei OnPlayerDeath? Ist ja ein "Normaler Textdraw" mit Forum URL und so, deswegen hab ichs in OnGameModeInit.
    Und das mit dem Updaten müsst ihr mir mal genauer erläutern.


    lg :thumbup:

    Hey,


    Ich habe eine kleine Textdrawbox der InGame Mini Statistiken anzeigt.
    ForumURL, TS etc. funzt, nur Kills und Tode möchte er nicht anzeigen. Es kommt IMMER 0, also InGame wird mir hinter Kills: 0 angezeigt, gleiche bei Tode.
    Script ausschnitt:

    new string[256];
    format(string,sizeof(string),"Leben:~n~Forum: *Zensored*~n~Teamspeak: *Zensored*~n~Kills: %i ~n~Tode: %i",GetPVarInt(playerid,"Kills"),GetPVarInt(playerid,"Tode"));
    InfoBox[playerid] = TextDrawCreate(9.000000,280.000000,string);
    TextDrawBackgroundColor(InfoBox[playerid], 255);
    TextDrawFont(InfoBox[playerid], 1);


    Also InGame wird es echt gut angezeigt, nur bei Kills steht immer: 0. (Auch bei Tode) Egal ob ich was in meiner .txt ändere oder nicht, immer 0.
    Hoffe mir kann jemand helfen.
    Für mehr Script Ausschnitte im Thread melden.


    lg :thumbup:

    + SetVehicleHealth.
    Alles in einem.

    if(strcmp("/fixveh", cmdtext, true) == 0)
    {
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_GRAU, "Du musst in einem Fahrzeug sitzen!");
    new vehicleID = GetPlayerVehicleID(playerid); //VehicleID herausfinden
    RepairVehicle(vehicleID); //Fahrzeug mit der VehicleID reparieren
    SetVehicleHealth(vehicleid,1000.00); //Leben des Fahrzeugs auf 1000 Setzen.
    SendClientMessage(playerid, COLOR_GRAU, "Du hast das Fahrzeug erfolgreich repariert!");
    return 1;
    }


    lg :thumbup: