Struktura plików
W repozytorium stosujemy praktyki związane z utrzymaniem spójnej struktury plików
Główna struktura
_artiracts/ # Artefakty dla serwera FiveM
nui/ # Biblioteka UI dla Vue używana przez zasoby operającie interfejs o framework Vue
resources/ # Ścieżka dla FiveM w której trzymane są wszystkie zasoby serwera (tj. skrypty, interiory, ubrania, etc.)
.env.cfg # Plik konfiguracyjny serwera dla danego środowiska (nie jest trackowany przez git)
permissions.cfg # Plik uprawnień serwera
resources.cfg # Plik zarządzający uruchomionymi zasobami przy starcie serwera i ich kolejnością
resources.env.cfg # Rozrzeszenie resources.cfg dla danego środowiska (nie jest trackowany przez git)
run.sh # Plik uruchomieniowy dla danego śrowodiska (nie jest trackowany przez git)
server.cfg # Główny plik konfiguracyjny serwera
# Pozostałe pliki są poboczne i nie mają znaczenia na tym etapie.
Dedykowana struktura dla zasobu
Staramy się urzymać spójną strukturę plików dla skryptów.
Stukruta plików zawsze opiera się o fxmanifest.lua, katalog client/ i katalog server
bl-resource/
client/
main.c.lua
server/
main.s.lua
config.lua
fxmanifest.lua
Warto zauważyć, że dla spójności zachowujemy postfix-y w nazwach plików.
- Plik klientowy posiada końcówkę
.c.lua - Dla serwera jest to
.s.lua - Dla plików współdzielonego będzie to
.sh.lua
Oczywiście główny plik config.lua w domyśle jest współdzielony, więc dla niego taki postfix jest zbędny.
Każdy skrypt posiada plik fxmanifest.lua podstawowa jego konfiguracja wygląda następująco:
fx_version 'cerulean'
game 'gta5'
lua54 'yes'
client_scripts {
'client/main.c.lua',
}
server_scripts {
'server/main.s.lua',
}
shared_scripts {
'config.lua',
}
Według zapotrzebowania możliwe jest również stworzenie dedykowanego katalogu config/
bl-resource/
config/
main.c.lua
main.sh.lua
main.s.lua
Warto pamiętać, aby w takim przypadku plik configu rozpoczynał się:
Config = Config or {}
Table of Contents