Nach dem Carexplode Motorschaden? & Paint Spray austellen ?

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 Forum. Da ich auf meinem Reallife- Server die ADACler nichts verdienen, da die Leute immer ihre wagen im Paint Spray reparieren, oder sie sogar Extra Schrotten das die wieder mit 1000 hp Spawnen ( Was völlig unreal ist )
    Möchte ich es so einstellen das, dass Paint & Spray nurnoch die Optik macht. ( Hab ich schonmal gesehen auf anderen Servern )
    Und das die Autos mit 255hp Spawnen, nach dem Exploden ( Motorschadenzustand.. )


    Würde das irgendwie gehen? Währe echt nett wenn mir das mal jemand erklären könnte.


    Mfg.

  • Damage in einer Variable für das Fahrzeug Speichern.
    Die Variable beim Benutzen des Pay'n'Spray's nicht resettet.
    Dann einfach mit nem Timer abfragen, ob der aktuelle Schaden überhalb/unterhalb des Schadens ist, der in der Variable gespeichert wurde und dementsprechend setzen.


    Ups, ist ja im Scriptwünsche-Thread:
    new fahrzeugschaden[MAX_VEHICLES];
    forward fahrzeugtimer();
    // OnGameModeInit
    SetTimer("fahrzeugtimer",1000,1);
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    fahrzeugschaden[i] = 1000;
    }
    // Irgendwo ausserhalb eines Callbacks
    public fahrzeugtimer()
    {
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    new Float:fhealth;
    GetVehicleHealth(i,fhealth);
    if(health < fahrzeugschaden[i])
    {
    fahrzeugschaden = health;
    }
    else
    {
    SetVehicleHealth(i,fahrzeugschaden[i]);
    }
    }
    }

    Ungetestet


    //EDIT2:
    FaiL, nicht SetVehicleDamage sondern SetVehicleHealth

  • Bis zum OnGameModeInit klappt alles gut.
    Aber hier :
    public fahrzeugtimer()
    {
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    new Float:fhealth;
    GetVehicleHealth(i,fhealth);
    if(health < fahrzeugschaden[i])
    {
    fahrzeugschaden = health;
    }
    else
    {
    SetVehicleHealth(i,fahrzeugschaden[i]);
    }
    }
    }


    Kriege ich folgende Errors :
    C:\Users\Paulius\Desktop\Reallife\gamemodes\gfl.pwn(10628 ) : error 017: undefined symbol "health"
    C:\Users\Paulius\Desktop\Reallife\gamemodes\gfl.pwn(10630 ) : error 017: undefined symbol "health"
    C:\Users\Paulius\Desktop\Reallife\gamemodes\gfl.pwn(10630 ) : error 033: array must be indexed (variable "fahrzeugschaden")
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    3 Errors.

  • C:\Users\Paulius\Desktop\Reallife\gamemodes\gfl.pwn(10630) : error 033: array must be indexed (variable "fahrzeugschaden")
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

  • public fahrzeugtimer(){
    for(new i=0; i<max_vehicles; i++)
    {
    new Float:health;
    GetVehicleHealth(i,health);
    if(health < fahrzeugschaden[i])
    {
    fahrzeugschaden[i] = health;
    }
    else
    {
    SetVehicleHealth(i,fahrzeugschaden[i]);
    }
    } }


    Probier es mal so aus. Habe fahrzeugschaden = health; zu fahrzeugschaden[i] = health; gemacht


    Edits: fhealth zu health geändert

  • Kommt kein Error aber n Warning, ich gehe es mal Testen.


    //edit : Keine Ahnung was das jetzt gebracht hat, Paint Spray funkt immernoch und die Autos haben nach dem Spawnen 1000hp...

    Einmal editiert, zuletzt von Slexout ()

  • Das mit dem Pay n Spray weis ich leider nicht aber mit dem Spawnwn schreibst du einfach unter
    OnVehicleSpawn();


    SetVehicleHealth(carid,500);


    statt 500 kannste auch 250 oder so schreiben ^^
    Also ich habs nicht getestet aber sollte eigentlich gehn.


    MfG

  • Das währe eig. Perfekt. Aber gibt es nicht sowas wie OnVehicleExplode oder so?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • hm.. wenn ich beim OnVehicleDeath überhaupt nichts reinschreibe. Spawnen alle Wagen trotzdem. D.h da kann mann auch nicht dran ändern wieviel HP die nach dem "Death" haben sollen.