Files
CHOMPStation2/code/game/master_controller.dm
morikou@gmail.com 70c6c46657 The Not-As-Big-As-It-Seems Update: Changelings Overhauled.
- Instead of working on a cooldown system like wizards, changlings now have a "Chemical Storage" that fills up over time (similar to alium plasma). Different abilities use different amounts of chemicals. Changlings start with 20 chem.
- Neurotoxic Venom and Hallucinogenic Venom both removed entirely.
- Regenerative Stasis now shows the person as being dead.
- Absorb DNA costs 5 chem, Transform costs 5 chem, Lesser (monkey) transform costs 1, and Regenerative Stasis costs 20.
- Five new "Dart" abilities. They each have a quick cooldown (to prevent spamming on accident), cost different amounts of chemicals, and hit adjecent enemies (targeting similar to old venoms).
- Silence Dart (10 chem): Makes the target unable to speak for a while. Target knows when they are hit.
- Blind Dart (20 chem): Makes the target blind for a while. Target knows when they're hit (even ignoring the obvious blindness).
- Deaf Dart (5 chem): Makes the target deaf for a while. Target does NOT instantly know they were hit (not hearing their own speach might be a clue, though).
- Paralysis Dart (30 chem): Paralyzes the target for a bit. They can't speak or move and health scanners register them as being dead. However, they are fully aware of their surroundings. It's also obvious to them they were pricked.
- Transformation Dart (30 chem): Transforms a dead, non-husk person into one of your stored DNA types.
(NOTE) A lot of playtesting needed to balance the above, just FYI. Most likely, chem costs will need to be adjusted (both up and down).

- Changelog Updated.
- Napalm Nerfed/Adjusted: Instead of creating (Created_Volume * 2) * 9 squares, it creates (Created Volume^2) * 1 square. This works out to about a 30% reduction for a max volume grenade. Also, it won't accidentally freeze areas now (if activated in an area with no oxygen).
- Reagent bottles can, once again, be added to grenades instead of just beakers. You can't add other (potentially larger) containers, though.
- Carp are now poisonous to eat. Anti-toxin must be injected into any carp-based food item before eating to eat it safely.
- New Reagent: Zombie Powder: Requires 5 carpotoxin, 5 copper, and 5 sleep toxin. Puts subject into a deathlike state (they're still aware though).
- New Recipes: Clown Burger, 5 Flour + 1 CLown Wig/mask; Mime Burger, 5 Flour + 1 Beret; Cuban Carp, 1 carp fillet + 1 flour + 1 chili.
- New Circuit Imprinter Icon by Veyveyr.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@854 316c924e-a436-60f5-8080-3fe189b3f50e
2011-01-15 02:10:24 +00:00

110 lines
2.1 KiB
Plaintext

var/global/datum/controller/game_controller/master_controller //Set in world.New()
datum/controller/game_controller
var/processing = 1
proc
setup()
setup_objects()
process()
setup()
if(master_controller && (master_controller != src))
del(src)
//There can be only one master.
if(!air_master)
air_master = new /datum/controller/air_system()
air_master.setup()
//world.tick_lag = 0.6
setup_objects()
setupgenetics()
setupcorpses()
emergency_shuttle = new /datum/shuttle_controller/emergency_shuttle()
if(!ticker)
ticker = new /datum/controller/gameticker()
spawn
ticker.pregame()
setup_objects()
world << "\red \b Initializing objects"
sleep(-1)
for(var/obj/object in world)
object.initialize()
world << "\red \b Initializing pipe networks"
sleep(-1)
for(var/obj/machinery/atmospherics/machine in world)
machine.build_network()
/*world << "\red \b Initializing atmos machinery"
sleep(-1)
find_air_alarms()*/
world << "\red \b Initializations complete."
process()
if(!processing)
return 0
//world << "Processing"
var/start_time = world.timeofday
air_master.process()
sleep(1)
sun.calc_position()
sleep(-1)
for(var/mob/M in world)
if (M.metabslow)
if (air_master.current_cycle%10==1) // For everyone who has their metabolism slowed, make updates not so frequently
M.Life()
else
M.Life()
if (M.mind)
if (M.mind.special_role == "Changeling")
M.chem_charges = max(min((M.chem_charges+0.5), 50), 0)
sleep(-1)
for(var/datum/disease/D in active_diseases)
D.process()
for(var/obj/machinery/machine in machines)
machine.process()
sleep(-1)
sleep(1)
for(var/obj/item/item in processing_items)
item.process()
for(var/datum/pipe_network/network in pipe_networks)
network.process()
for(var/datum/powernet/P in powernets)
P.reset()
sleep(-1)
ticker.process()
sleep(world.timeofday+10-start_time)
spawn process()
return 1