Par 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
  • 1. Wie kann ich die "Gehart" verändern?? Also, im Server kann man garnicht richtig laufen, so wie besoffene.
    2. Wie kann ich machen, dass wenn jemand car jacken möchte, dass er dann sofort stirbt, also der car jacker.


    Danke im Voraus.


    Mfg

    Gruß Nate

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • bei OnPlayerEnterVehicle machste einfach SetPlayerHealth(playerid, 0.0); hin ;D


    Für was den sowas ? Willst du das der Spieler sofort stirbt sobald er in der Nähe eines Fahrzeuges 'Enter' drückt oder eher bei einem Carjack ?
    Da musst du schon was komplexeres auflegen, so kannst du alle Fahrzeuge rausnehmen.



    //========================[Defines]=====================
    #define MAXIMALE_JACKS (3)
    #define MINIMALE_JACKS (0)


    //========================[Forwards]=====================
    forward public AutoDiebstahlTimer();
    forward public VernichteAutoDieb();
    forward public AutoDieb();


    //========================[News]=====================
    new Entered[MAX_PLAYERS];


    //========================[Timer]=====================
    public OnFilterScriptInit()
    {
    //===================[Timer für Brotfisch Diebstahl]=====================
    SetTimer("AutoDieb",1000,true);
    SetTimer("AutoDiebstahlTimer",10000,true);
    SetTimer("VernichteAutoDieb",2000,true);
    return 1;
    }


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    Entered[playerid]++;
    return 1;
    }


    public AutoDieb() {
    for(new i=0;i<MAX_PLAYERS;i++) {
    if(Entered[i]==MAXIMALE_JACKS) {
    return Kick(i); //Kannst du natürlich einstellen, ob die Spieler gekickt oder mit SetPlayerHealth auf 0 Hp gesetzt werden sollen
    }
    }
    return 1;
    }


    public VernichteAutoDieb() {
    for(new i=0;i<MAX_PLAYERS;i++) {
    return Entered[i]=MINIMALE_JACKS;
    }
    return 1;
    }


    public AutoDiebstahlTimer() {
    for(new i=0;i<MAX_PLAYERS;i++) {
    if(Entered[i]==MAXIMALE_JACKS) {
    return Entered[i]=MAXIMALE_JACKS;
    }
    }
    return 1;
    }

    [align=center]
    Mta Script Editor - Work in Progress

  • //========================[Defines]=====================
    #define MAXIMALE_JACKS (3)
    #define MINIMALE_JACKS (0)
    #pragma tabsize 0


    //========================[Forwards]=====================
    forward public AutoDiebstahlTimer();
    forward public VernichteAutoDieb();
    forward public AutoDieb();


    //========================[News]=====================
    new Entered[MAX_PLAYERS];


    //========================[Timer]=====================
    public OnFilterScriptInit()
    {
    //===================[Timer für Brotfisch Diebstahl]=====================
    SetTimer("AutoDieb",1000,true);
    SetTimer("AutoDiebstahlTimer",10000,true);
    SetTimer("VernichteAutoDieb",2000,true);
    return 1;
    }


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    Entered[playerid]++;
    return 1;
    }


    public AutoDieb() {
    for(new i=0;i<MAX_PLAYERS;i++) {
    if(Entered[i]==MAXIMALE_JACKS) {
    return Kick(i); //Kannst du natürlich einstellen, ob die Spieler gekickt oder mit SetPlayerHealth auf 0 Hp gesetzt werden sollen
    }
    }
    return 1;
    }


    public VernichteAutoDieb() {
    for(new i=0;i<MAX_PLAYERS;i++) {
    return Entered[i]=MINIMALE_JACKS;
    }
    return 1;
    }


    public AutoDiebstahlTimer() {
    for(new i=0;i<MAX_PLAYERS;i++) {
    if(Entered[i]==MAXIMALE_JACKS) {
    return Entered[i]=MAXIMALE_JACKS;
    }
    }
    return 1;
    }

    Gruß Nate

  • Ohhhh, es funktioniert zwar arbeitet aber mehr als uneffektiv. Kannst du dir vorstellen, welcher Aufwand es für das Script ist 3 dauerhafte Timer auszuführen mit einer Schleife drin, die jeden Spieler überprüfen lassen und das dauerhaft? Den beinahme gleichen Effekt erziehlt man durch:
    //oben
    #define CAR_JACKS 3
    new CarJacks[MAX_PLAYERS];


    // in OnPlayerConnect
    CarJacks[playerid] = 0;


    // in OnPlayerStateChange


    if(newstate == PLAYER_STATE_DRIVER)
    {
    CarJacks[playerid]++;
    if(CarJacks[playerid] == CAR_JACKS)
    {
    // Was soll mit dem Spieler passieren?
    CarJacks[playerid] = 0;
    }


    }


  • Gruß Nate

  • Zitat

    error 030: compound statement not closed at the end of file (started at line 58 )

    #include <a_samp>
    #define CAR_JACKS 3
    new CarJacks[MAX_PLAYERS];
    #pragma tabsize 0
    #if defined FILTERSCRIPT




    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" Blank Filterscript by your name here");
    print("--------------------------------------\n");
    return 1;
    }


    public OnFilterScriptExit()
    {
    return 1;
    }


    #else


    main()
    {
    print("\n----------------------------------");
    print(" Blank Gamemode by your name here");
    print("----------------------------------\n");
    }


    #endif


    public OnPlayerConnect(playerid)
    {
    CarJacks[playerid] = 0;
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/mycommand", cmdtext, true, 10) == 0)
    {
    // Do something here
    return 1;
    }
    return 0;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    CarJacks[playerid]++;
    if(CarJacks[playerid] == CAR_JACKS)
    {
    SetPlayerHealth(playerid, 0.0);
    CarJacks[playerid] = 0;
    return 1;
    }

    Gruß Nate