Skip to content

Stations

Stations

Wszystkie 27 stacji benzynowych w GTA są gotowe i skonfigurowane w Config.Stations. Każda stacja kontroluje każdy obiekt dystrybutora (prop) w swoim promieniu, sprzedaje zdefiniowane przez Ciebie paliwa i może zostać kupiona przez gracza lub pozostać publicznym podjazdem.

Jak wygląda wpis stacji

config.lua
{
    id = 'strawberry', label = 'BUPA Strawberry', district = 'Strawberry',
    coords = vec3(264.95, -1259.45, 29.14), radius = 30.0,
    manage = vec3(289.5, -1267.0, 28.44),
    fuels = { 'gasoline', 'diesel', 'premium', 'electric' },
    purchasable = true, price = 480000, storage = 25000,
    charger = vec4(292.85, -1268.03, 28.44, 72.9),
},
Pole Znaczenie
id Klucz bazy danych. Zmiana go na działającym serwerze spowoduje osierocenie wiersza zapisu tej stacji
coords / radius Teren stacji. Każdy obiekt dystrybutora w jego obrębie należy do tej stacji
manage Miejsce, w którym znajduje się znacznik $ — zazwyczaj drzwi sklepu lub kiosk. Wartość false go usuwa
fuels Paliwa z Config.FuelTypes, które sprzedaje ta stacja
purchasable Wartość false oznacza, że nikt nigdy nie będzie mógł jej kupić
price Kwota, jaką gracz płaci za zakup. Domyślne ceny wynoszą od 320 000 do 480 000 w zależności od dzielnicy
storage Pojemność magazynowa w litrach dla każdego paliwa przed koniecznością wykonania dostawy
charger vec4 dla punktu ładowania EV. Opcjonalnie — pozostaw puste, a stacja nie będzie miała ładowarki
blip false ukrywa znacznik tej stacji na mapie, lub tabela sprite / colour / scale, aby zastąpić domyślne ustawienia

Kupowane i publiczne

Stacja z możliwością zakupu (purchasable) zaczyna jako nieprzypisana. Każdy, kogo stać na tę cenę i podjdzie do znacznika $, otrzymuje ofertę zakupu, a po transakcji zbiorniki zostają napełnione do poziomu Config.Deliveries.StarterStock pojemności — domyślnie do połowy.

Stacja publiczna (purchasable = false) nigdy nie może zostać zakupiona przez gracza. Jej zbiorniki są stale utrzymywane jako pełne, całkowicie pomija kwestię zapasów i dostaw, a wydane na niej pieniądze donikąd nie trafiają. To idealny wybór na stację w miasteczku startowym, która nigdy nie ma być pustym dystrybutorem. Dostarczona w paczce stacja senoraeast jest skonfigurowana w ten sposób, a jej znacznik na mapie jest ukryty:

config.lua
{
    id = 'senoraeast', label = 'BUPA Grand Senora East', district = 'Grand Senora East',
    coords = vec3(2539.33, 2594.61, 37.94), radius = 30.0,
    manage = false,
    fuels = { 'gasoline', 'diesel', 'premium' , 'electric' },
    charger = vec4(2542.83, 2594.61, 37.94, 90),
    purchasable = false, price = 320000, storage = 25000,
    blip = false,
},

Administrator może również zmienić status stacji pomiędzy kupowaną a publiczną w czasie rzeczywistym za pomocą komendy /fueladmin. To nadpisanie jest zapisywane dla każdej stacji i przetrwa restarty, więc ma wyższy priorytet niż konfiguracja w pliku.

Znacznik $

Każda stacja posiadająca współrzędne manage wyświetla unoszący się symbol dolara. Podejdź do niego i naciśnij [E]:

  • Właściciel lub obsługa — otwiera panel zarządzania.
  • Ktokolwiek inny, stacja z możliwością zakupu i bez właściciela — otwiera ofertę zakupu.
  • Ktokolwiek inny, stacja posiada właściciela — nic się nie dzieje.

Właściciele i obsługa mogą również otworzyć panel zarządzania za pomocą komendy /station, stojąc na terenie stacji.

config.lua
Config.ManageMarker = {
    Enabled = true,
    Type = 29,              -- 29 to symbol dolara
    Size = vec3(0.8, 0.8, 0.8),
    Colour = { 63, 208, 127, 220 },
    Height = 1.0,
    Spin = true,
    Bob = true,
    DrawDistance = 18.0,
    Distance = 1.6,
}

Dystrybutory

Dystrybutor to dowolny obiekt z Config.PumpProps znajdujący się w promieniu stacji — nie trzeba podawać współrzędnych dla każdego dystrybutora z osobna.

config.lua
Config.PumpProps = {
    'prop_gas_pump_1a', 'prop_gas_pump_1b', 'prop_gas_pump_1c', 'prop_gas_pump_1d',
    'prop_gas_pump_old2', 'prop_gas_pump_old3', 'prop_vintage_pump',
    'prop_gas_pump_1a_lm', 'prop_gas_pump_1b_lm',
}
Config.NozzleProp = 'prop_cs_fuel_nozle'

Jeśli używasz niestandardowego MLO stacji, dodaj model jej dystrybutora do tej listy, a stacja go wykryje.

Znaczniki na mapie (Blips)

config.lua
Config.Blip = {
    Enabled = true,
    ShowUnowned = true,
    ShortRange = false,
    Sprite = 361,
    Colour = 47,
    Scale  = 0.8,
}

Wartość Enabled = false usuwa wszystkie znaczniki stacji naraz. Aby ukryć jedną konkretną stację, dodaj blip = false do wpisu tej stacji; aby zmienić jej styl, przypisz blip = { sprite = 361, colour = 1, scale = 0.9 }.

Dodawanie stacji

Skopiuj istniejący wpis, nadaj mu nowe id i ustaw coords na podjeździe stacji wraz z odpowiednim radius, który obejmie dystrybutory. Ustaw manage w miejscu, w którym gracz może stanąć. Włącz Config.Debug podczas pracy — rysuje on strefy, dzięki czemu zobaczysz, co dokładnie stacja uznaje za swój teren.