-
-
Notifications
You must be signed in to change notification settings - Fork 682
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Ports the RBMK from NSV (for real this time) (#10364)
* done? * added crate To do: On initialization, make new ID for the RBMK and have computers auto-locate and set their own IDs to it Create and make the crate use the RBMK machine board instead of the machine + add the ability to move the RBMK when inactive * fixed tools.dmi * Circuit board done! now onto the rest of the TODO list... * 2 -Added the ability for the RBMK to alert engineers of its meltdown status over comms. (TODO: Add in a cooldown period) -Fixed some bugs revolving around the computers not linking with RBMK -Fixed bug where RBMK would not connect to a pipe layer * work To do: New sprites for the RBMK, include five fuel rod variations + show where pipes input and output New SFX for the RBMK. Get the three input pipes to be made automatically correctly. Get the RBMK to be wrenchable and movable * day 2 * progress? * still not working... * For dakae! * to do: refactor * refactor 1 * soon:tm: * day 2 of new code * DAY @*()#&@!#(* * remove unnecessary sounds, fix runtime issue * New alarm.ogg sfx credit to: https://freesound.org/people/guitarguy1985/sounds/54048/ license: CC0 1.0 Deed * turns out unnecessary sounds were infact necessary, as well as icon changes and stuff * Final! * fix a thing * fix things + make co2 actually work * fdsfds * finish * update to apperance, makes it actually deconstructable and not die by itself * propane and propane accessories * last minute changes * aaaa * fixed proper blowout and meltdown conditions * added ghost statistics * to do: figure out correct graph for damage model * fixed console, damage handler changes * added ambience audio while th ereactor is active, plus bugfixes * aaaa * finally fixed the damage handler model, also made the ambience not bass boosted * made passively produced power a thing * integrity viewing + tuned down power generation * gah * rah * maybe? * Update rbmk_core.dm * no more arbitrary names * womp womp * Update rbmk_procs.dm * Update code/modules/power/rbmk/rbmk_monitoring.dm Co-authored-by: EvilDragonfiend <[email protected]> * Update code/modules/power/rbmk/rbmk_monitoring.dm Co-authored-by: EvilDragonfiend <[email protected]> * Update code/modules/power/rbmk/rbmk_procs.dm Co-authored-by: EvilDragonfiend <[email protected]> * Update rbmk_monitoring.dm --------- Co-authored-by: EvilDragonfiend <[email protected]>
- Loading branch information
1 parent
c64393e
commit 0926e7d
Showing
32 changed files
with
2,057 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
46 changes: 46 additions & 0 deletions
46
code/game/objects/effects/decals/cleanable/nuclear_waste.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
/obj/effect/decal/cleanable/nuclear_waste | ||
name = "plutonium sludge" | ||
desc = "A writhing pool of heavily irradiated, spent reactor fuel. You probably shouldn't step through this..." | ||
icon = 'icons/obj/machines/rbmkparts.dmi' | ||
icon_state = "nuclearwaste" | ||
alpha = 150 | ||
light_color = LIGHT_COLOR_CYAN | ||
color = "#ff9eff" | ||
|
||
/obj/effect/decal/cleanable/nuclear_waste/Initialize(mapload) | ||
. = ..() | ||
set_light(3) | ||
|
||
var/static/list/loc_connections = list( | ||
COMSIG_ATOM_ENTERED = PROC_REF(on_entered), | ||
) | ||
AddElement(/datum/element/connect_loc, loc_connections) | ||
|
||
/obj/effect/decal/cleanable/nuclear_waste/ex_act(severity, target) | ||
if(severity != EXPLODE_DEVASTATE) | ||
return | ||
qdel(src) | ||
|
||
/obj/effect/decal/cleanable/nuclear_waste/on_entered(datum/source, atom/movable/entered_mob) | ||
if(isliving(entered_mob)) | ||
var/mob/living/L = entered_mob | ||
playsound(loc, 'sound/effects/gib_step.ogg', HAS_TRAIT(L, TRAIT_LIGHT_STEP) ? 20 : 50, 1) | ||
radiation_pulse(src, 625, 5) //MORE RADS | ||
|
||
/obj/effect/decal/cleanable/nuclear_waste/attackby(obj/item/tool, mob/user) | ||
if(tool.tool_behaviour == TOOL_SHOVEL) | ||
radiation_pulse(src, 500, 5) //MORE RADS //The careful clearing of sludge should not give off as much radiation as casually running through it. | ||
to_chat(user, "<span class='notice'>You start to clear [src]...</span>") | ||
if(tool.use_tool(src, user, 50, volume=100)) | ||
to_chat(user, "<span class='notice'>You clear [src]. </span>") | ||
qdel(src) | ||
return | ||
. = ..() | ||
|
||
/obj/effect/decal/cleanable/nuclear_waste/epicenter //The one that actually does the irradiating. This is to avoid every bit of sludge PROCESSING | ||
name = "dense nuclear sludge" | ||
|
||
|
||
/obj/effect/decal/cleanable/nuclear_waste/epicenter/Initialize(mapload) | ||
. = ..() | ||
AddComponent(/datum/component/radioactive, 1500, src, 0) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
#define RBMK_TEMPERATURE_OPERATING 640 //Celsius | ||
#define RBMK_TEMPERATURE_WARNING 800 //At this point the entire station is alerted to a meltdown. | ||
#define RBMK_TEMPERATURE_CRITICAL 900 //Kablowey | ||
|
||
#define RBMK_NO_COOLANT_TOLERANCE 5 //How many process()ing ticks the reactor can sustain without coolant before slowly taking damage | ||
|
||
#define RBMK_PRESSURE_OPERATING 6500 //KPA | ||
#define RBMK_PRESSURE_WARNING 8200 //KPA, At this point the entire station is alerted to a meltdown. | ||
#define RBMK_PRESSURE_CRITICAL 10100 //KPA, Kaboom | ||
|
||
#define RBMK_MAX_CRITICALITY 3 //No more criticality than N for now. | ||
|
||
#define RBMK_POWER_FLAVOURISER 800 //To turn those KWs into something usable | ||
|
||
#define WARNING_TIME_DELAY 60 //to prevent accent sounds from layering | ||
#define REACTOR_COUNTDOWN_TIME 30 SECONDS | ||
|
||
///High pressure damage | ||
#define RBMK_PRESSURE_DAMAGE (1<<0) | ||
///High temperature damage | ||
#define RBMK_TEMPERATURE_DAMAGE (1<<1) | ||
|
||
#define REACTOR_INACTIVE 0 // No or minimal energy | ||
#define REACTOR_NOMINAL 1 // Normal operation | ||
#define REACTOR_WARNING 2 // Integrity damaged | ||
#define REACTOR_DANGER 3 // Integrity < 50% | ||
#define REACTOR_EMERGENCY 4 // Integrity < 25% | ||
#define REACTOR_MELTING 5 // Pretty obvious. | ||
|
||
#define REACTOR_MELTING_PERCENT 5 | ||
#define REACTOR_EMERGENCY_PERCENT 25 | ||
#define REACTOR_DANGER_PERCENT 50 | ||
#define REACTOR_WARNING_PERCENT 100 | ||
|
||
#define REACTOR_NEW_SEALS 0.875 | ||
#define REACTOR_CRACKED_SEALS 0.5 | ||
|
||
#define SAFE_POWER_LEVEL 20 |
Oops, something went wrong.