Skip to content

Commit

Permalink
2
Browse files Browse the repository at this point in the history
  • Loading branch information
Lexanx committed Aug 14, 2024
1 parent c2d7ff7 commit b14d45c
Show file tree
Hide file tree
Showing 9 changed files with 15 additions and 19 deletions.
2 changes: 1 addition & 1 deletion code/__defines/subsystem-priority.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
#define SS_PRIORITY_TICKER 100 // Gameticker.
// [SIERRA-ADD] - SSINPUT
#define SS_PRIORITY_INPUT 99 // Input things.
#define SS_PRIORITY_EXPLOSIVES 40 // Explosion processing.
// [/SIERRA-ADD]
#define SS_PRIORITY_MOB 95 // Mob Life().
#define SS_PRIORITY_MACHINERY 95 // Machinery + powernet ticks.
Expand Down Expand Up @@ -44,7 +45,6 @@
#define SS_PRIORITY_PROCESSING 95 // Generic datum processor. Replaces objects processor.
#define SS_PRIORITY_PLANTS 90 // Plant processing, slow ticks.
#define SS_PRIORITY_VINES 50 // Spreading vine effects.
#define SS_PRIORITY_EXPLOSIVES 40 // Explosion processing.
#define SS_PRIORITY_PSYCHICS 45 // Psychic complexus processing.
#define SS_PRIORITY_NANO 40 // Updates to nanoui uis.
#define SS_PRIORITY_TURF 30 // Radioactive walls/blob.
Expand Down
3 changes: 2 additions & 1 deletion code/__defines/turfs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

#define RANGE_TURFS(CENTER, RADIUS) block(locate(max(CENTER.x-(RADIUS), 1), max(CENTER.y-(RADIUS),1), CENTER.z), locate(min(CENTER.x+(RADIUS), world.maxx), min(CENTER.y+(RADIUS), world.maxy), CENTER.z))


//[SIERRA-ADD]
#define RANGED_TURFS(RADIUS, CENTER) \
RECT_TURFS(RADIUS, RADIUS, CENTER)

Expand All @@ -30,3 +30,4 @@
locate(max((CENTER).x-(H_RADIUS),1), max((CENTER).y-(V_RADIUS),1), (CENTER).z), \
locate(min((CENTER).x+(H_RADIUS),world.maxx), min((CENTER).y+(V_RADIUS),world.maxy), (CENTER).z) \
)
//[/SIERRA-ADD]
3 changes: 1 addition & 2 deletions code/controllers/configuration.dm
Original file line number Diff line number Diff line change
Expand Up @@ -900,10 +900,9 @@
enable_cold_mist = TRUE
if ("disable_runechat")
runechat_enabled = FALSE
// [SIERRA-ADD]
if ("shutdown_on_reboot")
shutdown_on_reboot = TRUE

// [SIERRA-ADD]
if ("explosion_z_threshold")
iterative_explosives_z_threshold = text2num(value)

Expand Down
2 changes: 2 additions & 0 deletions code/controllers/subsystems/air.dm
Original file line number Diff line number Diff line change
Expand Up @@ -433,8 +433,10 @@ Geometry processing completed in [(Uptime() - start_uptime)/10] seconds!
if(processing_edges)
processing_edges -= E

//[SIERRA-ADD]
/datum/controller/subsystem/air/ExplosionStart()
can_fire = FALSE

/datum/controller/subsystem/air/ExplosionEnd()
can_fire = TRUE
//[/SIERRA-ADD]
3 changes: 2 additions & 1 deletion code/controllers/subsystems/ao.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,10 @@ SUBSYSTEM_DEF(ao)
queue.Cut(1, cut_until)
return
queue.Cut()

//[SIERRA-ADD]
/datum/controller/subsystem/ao/ExplosionStart()
can_fire = FALSE

/datum/controller/subsystem/ao/ExplosionEnd()
can_fire = TRUE
//[/SIERRA-ADD]
3 changes: 2 additions & 1 deletion code/controllers/subsystems/lighting.dm
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ SUBSYSTEM_DEF(lighting)
overlay_queue.Cut(1, oq_idex)
oq_idex = 1


//[SIERRA-ADD]
/datum/controller/subsystem/lighting/ExplosionStart()
force_queued = TRUE
can_fire = FALSE
Expand All @@ -222,3 +222,4 @@ SUBSYSTEM_DEF(lighting)
can_fire = TRUE
if (!force_override)
force_queued = FALSE
//[/SIERRA-ADD]
6 changes: 0 additions & 6 deletions code/controllers/subsystems/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,3 @@ if(MOB.is_processing == SSmobs) {\
else if (MOB.is_processing) {\
crash_with("Failed to stop processing mob. Being processed by [MOB.is_processing] instead.")\
}

/datum/controller/subsystem/mobs/ExplosionStart()
can_fire = FALSE

/datum/controller/subsystem/mobs/ExplosionEnd()
can_fire = TRUE
6 changes: 0 additions & 6 deletions code/controllers/subsystems/processing/processing.dm
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,3 @@ SUBSYSTEM_DEF(processing)
crash_with("[log_info_line(subsystem.debug_last_thing)] slept during processing. Spent [tick_time] tick\s.")
if(tick_use_limit > 0)
crash_with("[log_info_line(subsystem.debug_last_thing)] took longer than a tick to process. Exceeded with [tick_use_limit]%")

/datum/controller/subsystem/processing/ExplosionStart()
can_fire = FALSE

/datum/controller/subsystem/processing/ExplosionEnd()
can_fire = TRUE
6 changes: 5 additions & 1 deletion code/game/objects/explosion_recursive.dm
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,11 @@ SUBSYSTEM_DEF(explosives)
epicenter = get_turf(epicenter)
if(!epicenter)
return

//[SIERRA-ADD] - MODPACK_RND
for(var/obj/item/device/beacon/explosion_watcher/W in explosion_watcher_list)
if(get_dist(W, epicenter) < 10)
W.react_explosion(epicenter, power)
//[/SIERRA-ADD] - MODPACK_RND
// Handles recursive propagation of explosions.
if(devastation_range > 2 || heavy_impact_range > 2)
if(HasAbove(epicenter.z) && z_transfer & UP)
Expand Down

0 comments on commit b14d45c

Please sign in to comment.