Enforce hardcore retirement with level-one faction-balanced replacements
This commit is contained in:
@@ -85,6 +85,11 @@ local function emit(kind, payload)
|
||||
AuthDBExecute(sql)
|
||||
end
|
||||
|
||||
local function area_name(id)
|
||||
local ok,name=pcall(GetAreaName,id)
|
||||
return ok and name or tostring(id)
|
||||
end
|
||||
|
||||
local function player_payload(player)
|
||||
if not player then return {} end
|
||||
local isBot = is_playerbot(player)
|
||||
@@ -96,7 +101,7 @@ local function player_payload(player)
|
||||
mapId=player:GetMapId(),
|
||||
zoneId=player:GetZoneId(),
|
||||
areaId=player:GetAreaId(),
|
||||
zoneName=GetAreaName(player:GetZoneId()) or tostring(player:GetZoneId()),
|
||||
zoneName=area_name(player:GetZoneId()),
|
||||
race=player:GetRace(),
|
||||
class=player:GetClass(),
|
||||
raceName=player:GetRaceAsString() or tostring(player:GetRace()),
|
||||
@@ -136,6 +141,12 @@ function AzerothAIEmitPlayerSnapshot(name)
|
||||
return 1
|
||||
end
|
||||
|
||||
function AzerothAIEmitPermanentDeath(player)
|
||||
local payload=player_payload(player)
|
||||
payload.deathId="hardcore-"..tostring(player:GetGUIDLow())
|
||||
emit("player.permanent-death",payload)
|
||||
end
|
||||
|
||||
local function mark_consumed(id)
|
||||
AuthDBExecute("UPDATE azerothai_command_inbox SET consumed_at=NOW() WHERE id=" .. db_text(to_hex(id)))
|
||||
end
|
||||
@@ -254,7 +265,7 @@ RegisterPlayerEvent(27, function(event, player, newZone, newArea)
|
||||
local payload=player_payload(player)
|
||||
payload.zone=newZone
|
||||
payload.area=newArea
|
||||
payload.zoneName=GetAreaName(newZone) or tostring(newZone)
|
||||
payload.zoneName=area_name(newZone)
|
||||
emit("player.zone",payload)
|
||||
end)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user