autos speichern

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
  • hi
    ich habe ein rockfestival gemappt und da gibts es einen VIP parkplatz einen überdachten und der rest ist aufm feld
    und ihc möchte, das da die autos gespeichert werden am besten mitm befehl
    /park
    und das man einen befehl mit dem man autos herspawnen kann da nicht funktioniert wie geht das?
    aber der befehl sollte nur in dem gebiet funktionieren wegen client belastung etc.
    und nacher muss man
    /unpark machen sonst kann mna nicht wegfahren
    und wenn man in den perkplatz rein fährt sollte im chat stehen Hallo, bitte parken sie ihr auto mit /park sonst verschwindet ihr Auto
    und wenn er wegfahren will sollte er gefrezeed werden udn es solte da stehen, Hallo um wegzufahren /unpark


    mfg

    Einmal editiert, zuletzt von GameYoKer ()

  • Ich verstehe die Frage nicht so wirklich, also soll man sein Auto abgeben und wieder abholen können?
    Wenn ja brauch ich aber erst die Koordinaten des Parkplatzes um dir das zu scripten.

  • ok
    also ich habe an der farm mit den beiden großen feldern ein rockevent gemappt
    und möchte, dass
    1. wenn man reinfährt im chat steht Hallo, bitte parken sie ihr Auto mit /park sonst verschwindet ihr auto
    2. das man /vehicle(mein befehl um autos zuspawnen), in dem Gebiet nihct funktioniert
    3. wenn man wegfahren will soll man gefreezed werden und im chat sollte stehen Hallo, um wegzufahren bitte /unpark


    also da ist diese großen farm da mit den glaub 5 häusern gegenüber vom fleischberger
    mfg

  • Ja wie gesagt, gib mir einfach die Koordinaten ( X, Y, Z ), dann scripte ich es dir.

  • ok welche koordinaten soll ich dir dnn geben´?
    das ist ein ganz schön großes gelände


    udn achja der befehl um tore aufzumachen geht immer noch nicht

  • So müsste es gehen, hoffe ich habe alle eventualitäten berücksichtigt, wenn du einen Bug findest, einfach melden ;)


    #include <a_samp>


    #define COLOR_GREEN 0x336633FF


    forward festival(playerid);


    new Autogeparkt[MAX_PLAYERS];


    public OnPlayerConnect(playerid)
    {
    Autogeparkt[playerid] = 0;
    SetTimerEx("festival", 10000, true, "i", playerid);
    return 1;
    }


    public festival(playerid)
    {
    new playerState = GetPlayerState(playerid);


    if(IsPlayerInRangeOfPoint(playerid, 40.0, -34.4815, 19.0874, 3.1172) && playerState == PLAYER_STATE_DRIVER && Autogeparkt[playerid] == 0)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Sie sind nun auf dem Festival Gelände, benutzen sie /park um das Auto zu parken!");
    TogglePlayerControllable(playerid, 0);
    Autogeparkt[playerid] = -1;
    }
    if(!IsPlayerInRangeOfPoint(playerid, 40.0, -34.4815, 19.0874, 3.1172) && playerState == PLAYER_STATE_DRIVER)
    {
    Autogeparkt[playerid] = 0;
    }


    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new playerState = GetPlayerState(playerid);
    if (strcmp("/park", cmdtext, true, 4) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 40.0, -34.4815, 19.0874, 3.1172) && playerState == PLAYER_STATE_DRIVER)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Das Auto ist geparkt, um es abzuholen steigen sie ein un geben sie /unpark ein.");
    new car = GetPlayerVehicleID(playerid);
    Autogeparkt[playerid] = car;
    TogglePlayerControllable(playerid, 1);
    RemovePlayerFromVehicle(playerid);
    }
    return 1;
    }
    if (strcmp("/unpark", cmdtext, true, 6) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 40.0, -34.4815, 19.0874, 3.1172) && playerState == PLAYER_STATE_DRIVER)
    {
    new car = GetPlayerVehicleID(playerid);
    if(Autogeparkt[playerid] == car)
    {
    TogglePlayerControllable(playerid, 1);
    Autogeparkt[playerid] = -1;
    SendClientMessage(playerid, COLOR_GREEN, "Sie haben ihr Auto erfolgreich abgeholt, bitte begeben sie sich vom Gelände.");
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, COLOR_GREEN, "Das ist nicht ihr Auto.");
    }
    }
    return 1;
    }
    if (strcmp("/fes", cmdtext, true, 4) == 0)
    {
    SetPlayerPos(playerid, -34.4815, 19.0874, 3.1172);
    return 1;
    }
    return 0;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new car = GetPlayerVehicleID(playerid);
    if(IsPlayerInRangeOfPoint(playerid, 40.0, -34.4815, 19.0874, 3.1172) && newstate == PLAYER_STATE_DRIVER)
    {
    if(Autogeparkt[playerid] == car || Autogeparkt[playerid] <= 0)
    {
    if(Autogeparkt[playerid] <= 0)
    {
    return 1;
    }
    TogglePlayerControllable(playerid, 0);
    SendClientMessage(playerid, COLOR_GREEN, "Geben sie /unpark ein um ihr Auto abzuholen!");
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, COLOR_GREEN, "Das ist nicht ihr Auto.");
    }
    }
    return 1;
    }


    // edit: Überflüssiges OnPlayerEnterVehicle gelöscht

    Einmal editiert, zuletzt von Screensey ()

  • ok thx wie kann ihc das machen, damit die meldung mit dem festival gelände gleich kommt wenn man rein fährt
    der punkt ist nämlich ganz in der mitt
    und das ihc /park überall auf dem gelände benutzen kann?

  • 1) Den Umfang des Festgeländes kannst du verändern indem du bei ...


    IsPlayerInRangeOfPoint(playerid, 40.0, -34.4815, 19.0874, 3.1172)
    ... die 40.0 erhöst.


    2) Wenn sofort die Meldung kommen soll musst du den Timer verkürzen. Bsp:


    SetTimerEx("festival", 1000, true, "i", playerid);


    Mfg

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • ok nd wie geht das, das man /vehicle auf dem gebiet nicht benutyen kann?
    und das man in dem gebiet fahrr'der mieten kann?

    Einmal editiert, zuletzt von GameYoKer ()