- aether-medical: Stationen/Belegung, Intensivstation, Blutbank, Fuhrpark, Nachrichten/Aushänge, Berichte und Textbausteine (server + NUI) - aether-admin: vollständiges Server-Admin-Panel als echtes FiveM-Resource, an aether-core gekoppelt (Rechte über aether_users.admin_group), mit WebRTC-Live-Kameras (Bildschirmfreigabe) und separatem Media-Server (SFU) - Prototypen admin/ vervollständigt - SQL-Schema aether_admin.sql - Docker-Compose mit MariaDB und idempotenter Auto-Migration (schema_migrations) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
40 lines
1.5 KiB
Lua
40 lines
1.5 KiB
Lua
-- =====================================================================
|
||
-- Aether Death — Einstellungen rund um Verletzung und Wiederbelebung
|
||
-- =====================================================================
|
||
|
||
Tod = Tod or {}
|
||
|
||
-- Zeit bis zum Verbluten (Sekunden)
|
||
Tod.BLEEDOUT = 300
|
||
-- Mindestwartezeit, bevor „Aufgeben" moeglich ist (Sekunden)
|
||
Tod.RESPAWN_SPERRE = 45
|
||
-- Behandlungspauschale beim Aufwachen im Krankenhaus
|
||
Tod.KRANKENHAUS_KOSTEN = 1500
|
||
-- Reichweite, in der ein Sanitaeter wiederbeleben kann (Meter)
|
||
Tod.WIEDERBELEBUNG_WEITE = 3.0
|
||
-- Lebensenergie nach einer Wiederbelebung (GTA zaehlt 100–200)
|
||
Tod.LEBEN_NACH_HILFE = 150
|
||
-- Lebensenergie nach dem Krankenhaus
|
||
Tod.LEBEN_NACH_KLINIK = 200
|
||
|
||
-- Krankenhaeuser: Aufwachpunkte nach dem Aufgeben oder Verbluten
|
||
Tod.Krankenhaeuser = {
|
||
{ name = 'Pillbox Hill Medical', pos = vector4(298.6, -584.5, 43.3, 70.0) },
|
||
{ name = 'Sandy Shores Medical', pos = vector4(1839.6, 3672.9, 34.3, 210.0) },
|
||
{ name = 'Paleto Bay Medical', pos = vector4(-247.8, 6331.2, 32.4, 315.0) },
|
||
}
|
||
|
||
--- Liefert das naechstgelegene Krankenhaus zu einer Position
|
||
--- @param position vector3 Ausgangsposition
|
||
--- @return table Krankenhaus
|
||
function Tod.NaechstesKrankenhaus(position)
|
||
local bestes, besterAbstand = Tod.Krankenhaeuser[1], math.huge
|
||
for _, klinik in ipairs(Tod.Krankenhaeuser) do
|
||
local abstand = #(position - vector3(klinik.pos.x, klinik.pos.y, klinik.pos.z))
|
||
if abstand < besterAbstand then
|
||
bestes, besterAbstand = klinik, abstand
|
||
end
|
||
end
|
||
return bestes
|
||
end
|