Removes the unused explosion_recursive.dm and everything related to it, including the configuration option.

This commit is contained in:
Intigracy
2014-11-27 14:28:20 -08:00
parent b573a00f5e
commit 31835f1987
5 changed files with 0 additions and 156 deletions
-4
View File
@@ -123,8 +123,6 @@
var/slime_delay = 0
var/animal_delay = 0
var/use_recursive_explosions //Defines whether the server uses recursive or circular explosions.
var/gateway_delay = 18000 //How long the gateway takes before it activates. Default is half an hour.
var/ghost_interaction = 0
@@ -387,8 +385,6 @@
config.allow_random_events = 1
if("jobs_have_minimal_access")
config.jobs_have_minimal_access = 1
if("use_recursive_explosions")
use_recursive_explosions = 1
if("humans_need_surnames")
humans_need_surnames = 1
if("force_random_names")
-9
View File
@@ -42,15 +42,6 @@ proc/explosion(turf/epicenter, devastation_range, heavy_impact_range, light_impa
flame_range = min (MAX_EX_FLAME_RANGE, flame_range)
spawn(0)
if(config.use_recursive_explosions)
devastation_range += 1 //Original code uses -1 as no explosion, this code uses 0 as no explosion and -1 would ruin everything
heavy_impact_range += 1
light_impact_range += 1
var/power = devastation_range * 3 + heavy_impact_range * 1.5 + light_impact_range * 0.75
//So max power is (3 * 4) + (1.5 * 8) + (0.75 * 15) = 36,25
explosion_rec(epicenter, power)
return
var/start = world.timeofday
if(!epicenter) return
-133
View File
@@ -1,133 +0,0 @@
/client/proc/kaboom()
set category = "Debug"
var/power = input(src, "power?", "power?") as num
var/turf/T = get_turf(src.mob)
explosion_rec(T, power)
/obj
var/explosion_resistance
var/list/explosion_turfs = list()
var/explosion_in_progress = 0
proc/explosion_rec(turf/epicenter, power)
var/loopbreak = 0
while(explosion_in_progress)
if(loopbreak >= 15) return
sleep(10)
loopbreak++
if(power <= 0) return
epicenter = get_turf(epicenter)
if(!epicenter) return
message_admins("Explosion with size ([power]) in area [epicenter.loc.name] ([epicenter.x],[epicenter.y],[epicenter.z])")
log_game("Explosion with size ([power]) in area [epicenter.loc.name] ")
playsound(epicenter, 'sound/effects/explosionfar.ogg', 100, 1, round(power*2,1) )
playsound(epicenter, "explosion", 100, 1, round(power,1) )
explosion_in_progress = 1
explosion_turfs = list()
explosion_turfs[epicenter] = power
//This steap handles the gathering of turfs which will be ex_act() -ed in the next step. It also ensures each turf gets the maximum possible amount of power dealt to it.
for(var/direction in cardinal)
var/turf/T = get_step(epicenter, direction)
T.explosion_spread(power - epicenter.explosion_resistance, direction)
//This step applies the ex_act effects for the explosion, as planned in the previous step.
for(var/turf/T in explosion_turfs)
if(explosion_turfs[T] <= 0) continue
if(!T) continue
//Wow severity looks confusing to calculate... Fret not, I didn't leave you with any additional instructions or help. (just kidding, see the line under the calculation)
var/severity = 4 - round(max(min( 3, ((explosion_turfs[T] - T.explosion_resistance) / (max(3,(power/3)))) ) ,1), 1) //sanity effective power on tile divided by either 3 or one third the total explosion power
// One third because there are three power levels and I
// want each one to take up a third of the crater
var/x = T.x
var/y = T.y
var/z = T.z
T.ex_act(severity)
if(!T)
T = locate(x,y,z)
for(var/atom/A in T)
A.ex_act(severity)
explosion_in_progress = 0
/turf
var/explosion_resistance
/turf/space
explosion_resistance = 10
/turf/simulated/floor
explosion_resistance = 1
/turf/simulated/mineral
explosion_resistance = 2
/turf/simulated/shuttle/floor
explosion_resistance = 1
/turf/simulated/shuttle/floor4
explosion_resistance = 1
/turf/simulated/shuttle/plating
explosion_resistance = 1
/turf/simulated/shuttle/wall
explosion_resistance = 5
/turf/simulated/wall
explosion_resistance = 5
/turf/simulated/wall/r_wall
explosion_resistance = 15
//Code-wise, a safe value for power is something up to ~25 or ~30.. This does quite a bit of damage to the station.
//direction is the direction that the spread took to come to this tile. So it is pointing in the main blast direction - meaning where this tile should spread most of it's force.
/turf/proc/explosion_spread(power, direction)
if(power <= 0)
return
/*
sleep(2)
new/obj/effect/debugging/marker(src)
*/
if(explosion_turfs[src] >= power)
return //The turf already sustained and spread a power greated than what we are dealing with. No point spreading again.
explosion_turfs[src] = power
var/spread_power = power - src.explosion_resistance //This is the amount of power that will be spread to the tile in the direction of the blast
var/side_spread_power = power - 2 * src.explosion_resistance //This is the amount of power that will be spread to the side tiles
for(var/obj/O in src)
if(O.explosion_resistance)
spread_power -= O.explosion_resistance
side_spread_power -= O.explosion_resistance
var/turf/T = get_step(src, direction)
T.explosion_spread(spread_power, direction)
T = get_step(src, turn(direction,90))
T.explosion_spread(side_spread_power, turn(direction,90))
T = get_step(src, turn(direction,-90))
T.explosion_spread(side_spread_power, turn(direction,90))
/*
for(var/direction in cardinal)
var/turf/T = get_step(src, direction)
T.explosion_spread(spread_power)
*/
/turf/unsimulated/explosion_spread(power)
return //So it doesn't get to the parent proc, which simulates explosions
-9
View File
@@ -66,15 +66,6 @@ ALERT_RED_DOWNTO The self-destruct mechanism has been deactivated, there is stil
ALERT_DELTA The station's self-destruct mechanism has been engaged. All crew are instructed to obey all instructions given by heads of staff. Any violations of these orders can be punished by death. This is not a drill.
### EXPLOSIONS ###
## Unhash this to use recursive explosions, keep it hashed to use normal style explosions.
## Recursive explosions react to walls, airlocks and blast doors, making them look a lot cooler
## than the boring old circular explosions. They require more CPU and are (as of March 2013) experimental.
## The default map is generally designed for the old style explosions in terms of security.
#USE_RECURSIVE_EXPLOSIONS
### GAME MODES ###
-1
View File
@@ -468,7 +468,6 @@
#include "code\game\mecha\working\working.dm"
#include "code\game\objects\empulse.dm"
#include "code\game\objects\explosion.dm"
#include "code\game\objects\explosion_recursive.dm"
#include "code\game\objects\items.dm"
#include "code\game\objects\objs.dm"
#include "code\game\objects\structures.dm"