From 2224916ab99f1b50bba082d6cfcaa9c2a87d94c8 Mon Sep 17 00:00:00 2001 From: "mport2004@gmail.com" Date: Sun, 31 Jul 2011 21:31:00 +0000 Subject: [PATCH] Just some general cleanup Moved the spacecraft folder into the unused section, moved syndiebeacon into machinery. Research moved into Modules. Virus2 moved into WIP - is anyone even working on this, it looks almost done? Computer2,optics,pda2,experimental moved unto unused. WIP Chemistry things moved into Chemical Module Cameras.dm moved into weapons GameKit.dm moved into unused BrokenInHands.dm moved into unused Removed Grillify.dm Moved all of the files listed as unused in the mining module to unused Removed several empty folders in modules Moved cloning.dm into machinery Moved NewBan.dm into admin Changed humanoid aliens new_life.dm into life.dm Moved beast mob into unused Moved hivebot into unused Moved carpedexplosion.dm into unused Moved ai_lockdown.dm verb into unused and removed it from the AIs verb list as it didn't actually do anything. Removed mastercontroler2.dm Moved savefile.dm from human to new_player Bugfix People spawning on the starting screen on rev/cult should be fixed. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1964 316c924e-a436-60f5-8080-3fe189b3f50e --- code/WorkInProgress/recycling/disposal.dm | 4 +- .../virus2/Disease2/analyser.dm | 0 .../virus2/Disease2/base.dm | 0 .../virus2/Disease2/biohazard destroyer.dm | 0 .../virus2/Disease2/cureimplanter.dm | 0 .../virus2/Disease2/curer.dm | 0 .../virus2/Disease2/diseasesplicer.dm | 0 .../virus2/Disease2/dishincubator.dm | 0 .../virus2/Disease2/isolator.dm | 0 .../virus2/Disease2/monkeydispensor.dm | 0 .../virus2/Prob.dm | 0 code/defines/procs/helpers.dm | 8 +- code/game/asteroid/device.dm | 20 +- code/game/atom_procs.dm | 8 +- code/game/gamemodes/wizard/spells.dm | 6 +- code/game/hud.dm | 8 +- code/game/jobs/jobprocs.dm | 10 + .../machinery}/cloning.dm | 0 code/game/machinery/rechargestation.dm | 11 - .../syndicatebeacon.dm | 0 code/game/master_controller2.dm | 120 --- code/game/objects/items/item.dm | 2 +- .../objects/items/weapons/cameras.dm} | 0 .../admin}/NewBan.dm | 0 code/modules/admin/verbs/grillify.dm | 23 - .../chemical}/Chemistry-Holder.dm | 0 .../chemical}/Chemistry-Machinery.dm | 0 .../chemical}/Chemistry-Readme.dm | 0 .../chemical}/Chemistry-Reagents.dm | 0 .../chemical}/Chemistry-Recipes.dm | 0 .../chemical}/Chemistry-Tools.dm | 0 .../mob/living/carbon/alien/humanoid/life.dm | 794 +++++++++++------- .../living/carbon/alien/humanoid/life_new.dm | 575 ------------- code/modules/mob/living/silicon/ai/ai.dm | 6 +- code/modules/mob/living/silicon/robot/say.dm | 4 +- code/modules/mob/mob.dm | 22 +- .../carbon/human => new_player}/savefile.dm | 0 code/modules/mob/transform_procs.dm | 2 - .../research/circuitprinter.dm | 0 code/{game => modules}/research/designs.dm | 0 .../research/destructive_analyzer.dm | 0 .../research}/message_server.dm | 0 code/{game => modules}/research/protolathe.dm | 0 code/{game => modules}/research/rd-readme.dm | 0 code/{game => modules}/research/rdconsole.dm | 0 code/{game => modules}/research/rdmachines.dm | 0 code/{game => modules}/research/research.dm | 0 code/{game => modules}/research/server.dm | 0 .../BrokenInhands.dm | 0 code/{game/verbs => unused}/ai_lockdown.dm | 0 .../living/carbon => unused}/beast/beast.dm | 0 .../carbon => unused}/beast/bodypart.dm | 0 .../living/carbon => unused}/beast/death.dm | 0 .../objects => unused}/carpetsplosion.dm | 0 .../computer2/airlock_control.dm | 0 .../computer2/arcade.dm | 0 .../computer2/base_program.dm | 0 .../computer2/buildandrepair.dm | 0 .../computer2/computerII.dm | 0 .../computer2/filebrowse.dm | 0 .../computer2/med_rec.dm | 0 .../computer2/messenger.dm | 0 .../computer2/peripherals.dm | 0 .../items/weapons => unused}/game_kit.dm | 0 .../silicon => unused}/hivebot/death.dm | 0 .../silicon => unused}/hivebot/emote.dm | 0 .../silicon => unused}/hivebot/examine.dm | 0 .../hivebot/hive_modules.dm | 0 .../silicon => unused}/hivebot/hivebot.dm | 0 .../hivebot/hivebotdefine.dm} | 0 .../living/silicon => unused}/hivebot/hud.dm | 0 .../living/silicon => unused}/hivebot/life.dm | 0 .../silicon => unused}/hivebot/login.dm | 0 .../silicon => unused}/hivebot/mainframe.dm | 0 .../living/silicon => unused}/hivebot/say.dm | 0 .../mining/machine_craftlathe_unused.dm | 0 .../mining/machine_gas_extractor_unused.dm | 0 .../mining/machine_purifier_unused.dm | 0 .../mining/mine_generator_unused.dm | 0 .../{modules => unused}/mining/rail_unused.dm | 0 .../mining/spaceship_builder_unused.dm | 0 .../newcombatsystem.dm | 0 .../{WorkInProgress => unused}/optics/beam.dm | 0 .../optics/laser-pointer.dm | 0 .../optics/mirror.dm | 0 .../pda2/base_os.dm | 0 .../pda2/base_program.dm | 0 code/{WorkInProgress => unused}/pda2/pda2.dm | 0 .../pda2/record_progs.dm | 0 .../pda2/scanners.dm | 0 .../pda2/smallprogs.dm | 0 .../spacecraft/manufacturing.dm | 0 code/{game => unused}/spacecraft/shipcore.dm | 0 tgstation.dme | 111 +-- 94 files changed, 608 insertions(+), 1126 deletions(-) rename code/{modules => WorkInProgress}/virus2/Disease2/analyser.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/base.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/biohazard destroyer.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/cureimplanter.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/curer.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/diseasesplicer.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/dishincubator.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/isolator.dm (100%) rename code/{modules => WorkInProgress}/virus2/Disease2/monkeydispensor.dm (100%) rename code/{modules => WorkInProgress}/virus2/Prob.dm (100%) rename code/{WorkInProgress => game/machinery}/cloning.dm (100%) rename code/game/{spacecraft => machinery}/syndicatebeacon.dm (100%) delete mode 100644 code/game/master_controller2.dm rename code/{WorkInProgress/Cameras.dm => game/objects/items/weapons/cameras.dm} (100%) rename code/{WorkInProgress => modules/admin}/NewBan.dm (100%) delete mode 100644 code/modules/admin/verbs/grillify.dm rename code/{WorkInProgress => modules/chemical}/Chemistry-Holder.dm (100%) rename code/{WorkInProgress => modules/chemical}/Chemistry-Machinery.dm (100%) rename code/{WorkInProgress => modules/chemical}/Chemistry-Readme.dm (100%) rename code/{WorkInProgress => modules/chemical}/Chemistry-Reagents.dm (100%) rename code/{WorkInProgress => modules/chemical}/Chemistry-Recipes.dm (100%) rename code/{WorkInProgress => modules/chemical}/Chemistry-Tools.dm (100%) delete mode 100644 code/modules/mob/living/carbon/alien/humanoid/life_new.dm rename code/modules/mob/{living/carbon/human => new_player}/savefile.dm (100%) rename code/{game => modules}/research/circuitprinter.dm (100%) rename code/{game => modules}/research/designs.dm (100%) rename code/{game => modules}/research/destructive_analyzer.dm (100%) rename code/{WorkInProgress => modules/research}/message_server.dm (100%) rename code/{game => modules}/research/protolathe.dm (100%) rename code/{game => modules}/research/rd-readme.dm (100%) rename code/{game => modules}/research/rdconsole.dm (100%) rename code/{game => modules}/research/rdmachines.dm (100%) rename code/{game => modules}/research/research.dm (100%) rename code/{game => modules}/research/server.dm (100%) rename code/{WorkInProgress => unused}/BrokenInhands.dm (100%) rename code/{game/verbs => unused}/ai_lockdown.dm (100%) rename code/{modules/mob/living/carbon => unused}/beast/beast.dm (100%) rename code/{modules/mob/living/carbon => unused}/beast/bodypart.dm (100%) rename code/{modules/mob/living/carbon => unused}/beast/death.dm (100%) rename code/{game/objects => unused}/carpetsplosion.dm (100%) rename code/{WorkInProgress => unused}/computer2/airlock_control.dm (100%) rename code/{WorkInProgress => unused}/computer2/arcade.dm (100%) rename code/{WorkInProgress => unused}/computer2/base_program.dm (100%) rename code/{WorkInProgress => unused}/computer2/buildandrepair.dm (100%) rename code/{WorkInProgress => unused}/computer2/computerII.dm (100%) rename code/{WorkInProgress => unused}/computer2/filebrowse.dm (100%) rename code/{WorkInProgress => unused}/computer2/med_rec.dm (100%) rename code/{WorkInProgress => unused}/computer2/messenger.dm (100%) rename code/{WorkInProgress => unused}/computer2/peripherals.dm (100%) rename code/{game/objects/items/weapons => unused}/game_kit.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/death.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/emote.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/examine.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/hive_modules.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/hivebot.dm (100%) rename code/{defines/mob/living/silicon/hivebot.dm => unused/hivebot/hivebotdefine.dm} (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/hud.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/life.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/login.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/mainframe.dm (100%) rename code/{modules/mob/living/silicon => unused}/hivebot/say.dm (100%) rename code/{modules => unused}/mining/machine_craftlathe_unused.dm (100%) rename code/{modules => unused}/mining/machine_gas_extractor_unused.dm (100%) rename code/{modules => unused}/mining/machine_purifier_unused.dm (100%) rename code/{modules => unused}/mining/mine_generator_unused.dm (100%) rename code/{modules => unused}/mining/rail_unused.dm (100%) rename code/{modules => unused}/mining/spaceship_builder_unused.dm (100%) rename code/{WorkInProgress/experimental => unused}/newcombatsystem.dm (100%) rename code/{WorkInProgress => unused}/optics/beam.dm (100%) rename code/{WorkInProgress => unused}/optics/laser-pointer.dm (100%) rename code/{WorkInProgress => unused}/optics/mirror.dm (100%) rename code/{WorkInProgress => unused}/pda2/base_os.dm (100%) rename code/{WorkInProgress => unused}/pda2/base_program.dm (100%) rename code/{WorkInProgress => unused}/pda2/pda2.dm (100%) rename code/{WorkInProgress => unused}/pda2/record_progs.dm (100%) rename code/{WorkInProgress => unused}/pda2/scanners.dm (100%) rename code/{WorkInProgress => unused}/pda2/smallprogs.dm (100%) rename code/{game => unused}/spacecraft/manufacturing.dm (100%) rename code/{game => unused}/spacecraft/shipcore.dm (100%) diff --git a/code/WorkInProgress/recycling/disposal.dm b/code/WorkInProgress/recycling/disposal.dm index c4b4f7c949..0884238b16 100644 --- a/code/WorkInProgress/recycling/disposal.dm +++ b/code/WorkInProgress/recycling/disposal.dm @@ -1032,8 +1032,8 @@ // for broken pipe, remove and turn into scrap welded() - var/obj/item/scrap/S = new(src.loc) - S.set_components(200,0,0) +// var/obj/item/scrap/S = new(src.loc) +// S.set_components(200,0,0) del(src) // the disposal outlet machine diff --git a/code/modules/virus2/Disease2/analyser.dm b/code/WorkInProgress/virus2/Disease2/analyser.dm similarity index 100% rename from code/modules/virus2/Disease2/analyser.dm rename to code/WorkInProgress/virus2/Disease2/analyser.dm diff --git a/code/modules/virus2/Disease2/base.dm b/code/WorkInProgress/virus2/Disease2/base.dm similarity index 100% rename from code/modules/virus2/Disease2/base.dm rename to code/WorkInProgress/virus2/Disease2/base.dm diff --git a/code/modules/virus2/Disease2/biohazard destroyer.dm b/code/WorkInProgress/virus2/Disease2/biohazard destroyer.dm similarity index 100% rename from code/modules/virus2/Disease2/biohazard destroyer.dm rename to code/WorkInProgress/virus2/Disease2/biohazard destroyer.dm diff --git a/code/modules/virus2/Disease2/cureimplanter.dm b/code/WorkInProgress/virus2/Disease2/cureimplanter.dm similarity index 100% rename from code/modules/virus2/Disease2/cureimplanter.dm rename to code/WorkInProgress/virus2/Disease2/cureimplanter.dm diff --git a/code/modules/virus2/Disease2/curer.dm b/code/WorkInProgress/virus2/Disease2/curer.dm similarity index 100% rename from code/modules/virus2/Disease2/curer.dm rename to code/WorkInProgress/virus2/Disease2/curer.dm diff --git a/code/modules/virus2/Disease2/diseasesplicer.dm b/code/WorkInProgress/virus2/Disease2/diseasesplicer.dm similarity index 100% rename from code/modules/virus2/Disease2/diseasesplicer.dm rename to code/WorkInProgress/virus2/Disease2/diseasesplicer.dm diff --git a/code/modules/virus2/Disease2/dishincubator.dm b/code/WorkInProgress/virus2/Disease2/dishincubator.dm similarity index 100% rename from code/modules/virus2/Disease2/dishincubator.dm rename to code/WorkInProgress/virus2/Disease2/dishincubator.dm diff --git a/code/modules/virus2/Disease2/isolator.dm b/code/WorkInProgress/virus2/Disease2/isolator.dm similarity index 100% rename from code/modules/virus2/Disease2/isolator.dm rename to code/WorkInProgress/virus2/Disease2/isolator.dm diff --git a/code/modules/virus2/Disease2/monkeydispensor.dm b/code/WorkInProgress/virus2/Disease2/monkeydispensor.dm similarity index 100% rename from code/modules/virus2/Disease2/monkeydispensor.dm rename to code/WorkInProgress/virus2/Disease2/monkeydispensor.dm diff --git a/code/modules/virus2/Prob.dm b/code/WorkInProgress/virus2/Prob.dm similarity index 100% rename from code/modules/virus2/Prob.dm rename to code/WorkInProgress/virus2/Prob.dm diff --git a/code/defines/procs/helpers.dm b/code/defines/procs/helpers.dm index bdf12eb887..c86be0af72 100644 --- a/code/defines/procs/helpers.dm +++ b/code/defines/procs/helpers.dm @@ -807,10 +807,10 @@ Turf and target are seperate in case you want to teleport some distance from a t mob_list.Add(M) for(var/mob/living/carbon/monkey/M in world) mob_list.Add(M) - for(var/mob/living/silicon/hivebot/M in world) - mob_list.Add(M) - for(var/mob/living/silicon/hive_mainframe/M in world) - mob_list.Add(M) +// for(var/mob/living/silicon/hivebot/M in world) +// mob_list.Add(M) +// for(var/mob/living/silicon/hive_mainframe/M in world) +// mob_list.Add(M) return mob_list /proc/convert2energy(var/M) diff --git a/code/game/asteroid/device.dm b/code/game/asteroid/device.dm index 8f6843d286..ba2579eb15 100644 --- a/code/game/asteroid/device.dm +++ b/code/game/asteroid/device.dm @@ -83,4 +83,22 @@ var/obj/item/weapon/reagent_containers/pill/P = new/obj/item/weapon/reagent_containers/pill(src) P.reagents.add_reagent("nutriment", 500) P.name = "Cyanide pill" - return \ No newline at end of file + return + +/obj/ship_landing_beacon + icon = 'craft.dmi' + icon_state = "beacon" + name = "Beacon" + var/active = 0 + + proc + deploy() + if(active) + return + src.active = 1 + src.anchored = 1 + deactivate() + if(!active) + return + src.active = 0 + src.anchored = 0 \ No newline at end of file diff --git a/code/game/atom_procs.dm b/code/game/atom_procs.dm index a2eef8577c..b4a3d03bae 100644 --- a/code/game/atom_procs.dm +++ b/code/game/atom_procs.dm @@ -240,7 +240,7 @@ var/obj/item/W = usr.equipped() - if(istype(usr, /mob/living/silicon/hivebot)||istype(usr, /mob/living/silicon/robot)) + if(istype(usr, /mob/living/silicon/robot)) if(!isnull(usr:module_active)) W = usr:module_active else @@ -267,7 +267,7 @@ if (istype(usr, /mob/living/silicon/ai)) t5 = 1 - if ((istype(usr, /mob/living/silicon/robot) || istype(usr, /mob/living/silicon/hivebot)) && W == null) + if ((istype(usr, /mob/living/silicon/robot)) && W == null) t5 = 1 if (istype(src, /datum/organ) && src in usr.contents) @@ -372,7 +372,7 @@ if (istype(usr, /mob/living/carbon/alien/humanoid)) src.attack_alien(usr, usr.hand) else - if (istype(usr, /mob/living/silicon/ai) || istype(usr, /mob/living/silicon/robot)|| istype(usr, /mob/living/silicon/hivebot)) + if (istype(usr, /mob/living/silicon/ai) || istype(usr, /mob/living/silicon/robot)) src.attack_ai(usr, usr.hand) else @@ -388,7 +388,7 @@ if (istype(usr, /mob/living/carbon/alien/humanoid)) src.hand_al(usr, usr.hand) else - if (istype(usr, /mob/living/silicon/ai) || istype(usr, /mob/living/silicon/robot)|| istype(usr, /mob/living/silicon/hivebot)) + if (istype(usr, /mob/living/silicon/ai) || istype(usr, /mob/living/silicon/robot)) src.hand_a(usr, usr.hand) else diff --git a/code/game/gamemodes/wizard/spells.dm b/code/game/gamemodes/wizard/spells.dm index 70e28b80df..7cb277452b 100644 --- a/code/game/gamemodes/wizard/spells.dm +++ b/code/game/gamemodes/wizard/spells.dm @@ -238,7 +238,7 @@ //DISABLE TECH -/mob/proc/tech() +/mob/proc/tech()//Shouldnt this just use the emp() proc? set category = "Spells" set name = "Disable Technology" set desc = "This spell disables all weapons, cameras and most other technology in range." @@ -290,12 +290,10 @@ M << "\red Warning: Electromagnetic pulse detected." if(istype(M, /mob/living/silicon/ai)) if (prob(30)) - switch(pick(1,2,3)) //Add Random laws. + switch(pick(1,2)) if(1) M:cancel_camera() if(2) - M:lockdown() - if(3) M:ai_call_shuttle() continue diff --git a/code/game/hud.dm b/code/game/hud.dm index 65f26d1cc2..4c2433642b 100644 --- a/code/game/hud.dm +++ b/code/game/hud.dm @@ -100,11 +100,11 @@ obj/hud/New(var/type = 0) else if(isrobot(mymob)) robot_hud() - else if(ishivebot(mymob)) - hivebot_hud() +// else if(ishivebot(mymob)) +// hivebot_hud() - else if(ishivemainframe(mymob)) - hive_mainframe_hud() +// else if(ishivemainframe(mymob)) +// hive_mainframe_hud() else if(isobserver(mymob)) ghost_hud() diff --git a/code/game/jobs/jobprocs.dm b/code/game/jobs/jobprocs.dm index 78aec5b88b..77feb96713 100644 --- a/code/game/jobs/jobprocs.dm +++ b/code/game/jobs/jobprocs.dm @@ -90,6 +90,7 @@ if (unassigned.len) //unlucky players with preferences and players without preferences var/list/vacancies = list() + var/list/failsafe = list() for (var/occ in occupation_eligible) for (var/i = 1 to occupation_eligible[occ]) vacancies += occ @@ -100,11 +101,20 @@ if(candidate.jobs_restricted_by_gamemode) if(occupation in candidate.jobs_restricted_by_gamemode) + vacancies += occupation + failsafe += candidate continue candidate.mind.assigned_role = occupation for (var/mob/new_player/player in unassigned) + if (unassigned.len == 0) + break + player.mind.assigned_role = pick(assistant_occupations) + + for (var/mob/new_player/player in failsafe) + if (unassigned.len == 0) + break player.mind.assigned_role = pick(assistant_occupations) return 1 diff --git a/code/WorkInProgress/cloning.dm b/code/game/machinery/cloning.dm similarity index 100% rename from code/WorkInProgress/cloning.dm rename to code/game/machinery/cloning.dm diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 6c030064da..769490937e 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -59,17 +59,6 @@ R.cell.charge += 50 return - - else if (istype(occupant, /mob/living/silicon/hivebot)) - var/mob/living/silicon/hivebot/H = occupant - - if(H.energy >= H.energy_max) - H.energy = H.energy_max - return - else - H.energy += 50 - return - go_out() if(!( src.occupant )) return diff --git a/code/game/spacecraft/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm similarity index 100% rename from code/game/spacecraft/syndicatebeacon.dm rename to code/game/machinery/syndicatebeacon.dm diff --git a/code/game/master_controller2.dm b/code/game/master_controller2.dm deleted file mode 100644 index 8543164589..0000000000 --- a/code/game/master_controller2.dm +++ /dev/null @@ -1,120 +0,0 @@ -var/global/datum/controller/game_controller/master_controller //Set in world.New() -var/global/controllernum = "no" -var/global/controlleriteration = 0 - -datum/controller/game_controller - var/processing = 1 - - proc - setup() - setup_objects() - process() - - setup() - if(master_controller && (master_controller != src)) - del(src) - return - //There can be only one master. - - if(!air_master) - air_master = new /datum/controller/air_system() - air_master.setup() - - world.tick_lag = 0.9 - - 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" - controllernum = "yes" - spawn (100) controllernum = "no" - controlleriteration++ - - var/start_time = world.timeofday - - if (controlleriteration%2==1) //make the atmos processing only happen every other tick) - air_master.process() - - sleep(1) - - sun.calc_position() - - sleep(-1) - - for(var/mob/M in world) - if (M.metabslow) - if (controlleriteration%10==1) // For everyone who has their metabolism slowed, make updates not so frequently - M.Life() - else - M.Life() - - sleep(-1) - - for(var/datum/disease/D in active_diseases) - D.process() - - for(var/obj/machinery/machine in machines) - if(machine) - machine.process() - if(machine && machine.use_power) - machine.auto_use_power() - - - 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(start_time+10-world.timeofday) - - spawn process() - - - return 1 \ No newline at end of file diff --git a/code/game/objects/items/item.dm b/code/game/objects/items/item.dm index 3851d065fe..424a3d9f89 100644 --- a/code/game/objects/items/item.dm +++ b/code/game/objects/items/item.dm @@ -300,7 +300,7 @@ if (istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M - if (ishuman(user) || isrobot(user) || ishivebot(user) || ismonkey(user) || isalien(user)) + if (ishuman(user) || isrobot(user) || ismonkey(user) || isalien(user)) if (!( def_zone )) var/mob/user2 = user var/t = user2:zone_sel.selecting diff --git a/code/WorkInProgress/Cameras.dm b/code/game/objects/items/weapons/cameras.dm similarity index 100% rename from code/WorkInProgress/Cameras.dm rename to code/game/objects/items/weapons/cameras.dm diff --git a/code/WorkInProgress/NewBan.dm b/code/modules/admin/NewBan.dm similarity index 100% rename from code/WorkInProgress/NewBan.dm rename to code/modules/admin/NewBan.dm diff --git a/code/modules/admin/verbs/grillify.dm b/code/modules/admin/verbs/grillify.dm deleted file mode 100644 index dc728e08ef..0000000000 --- a/code/modules/admin/verbs/grillify.dm +++ /dev/null @@ -1,23 +0,0 @@ -// Made during the internet outage caused by hurricane ike -// fuck you ike -// love persh -///client/proc/grillify() -// set category = "Debug" -// set name = "spawn grilles" -// set desc="it spawns grilles okay fuck if I know" -// if(Debug2) -// // All admins should be authenticated, but... what if? -// if(!src.authenticated || !src.holder) -// src << "Only administrators may use this command." -// return -// -// log_admin("[src.key] used the grillify verb") -// world << "\blue[src.key] used the grillify verb/bitches better get yellow gloves verb!" -// -// for(var/turf/T in world) -// if(!T.density) -// spawn(-1) -// new /obj/grille(locate(T.x,T.y,T.z)) -// else -// alert("Debugging is disabled") -// return \ No newline at end of file diff --git a/code/WorkInProgress/Chemistry-Holder.dm b/code/modules/chemical/Chemistry-Holder.dm similarity index 100% rename from code/WorkInProgress/Chemistry-Holder.dm rename to code/modules/chemical/Chemistry-Holder.dm diff --git a/code/WorkInProgress/Chemistry-Machinery.dm b/code/modules/chemical/Chemistry-Machinery.dm similarity index 100% rename from code/WorkInProgress/Chemistry-Machinery.dm rename to code/modules/chemical/Chemistry-Machinery.dm diff --git a/code/WorkInProgress/Chemistry-Readme.dm b/code/modules/chemical/Chemistry-Readme.dm similarity index 100% rename from code/WorkInProgress/Chemistry-Readme.dm rename to code/modules/chemical/Chemistry-Readme.dm diff --git a/code/WorkInProgress/Chemistry-Reagents.dm b/code/modules/chemical/Chemistry-Reagents.dm similarity index 100% rename from code/WorkInProgress/Chemistry-Reagents.dm rename to code/modules/chemical/Chemistry-Reagents.dm diff --git a/code/WorkInProgress/Chemistry-Recipes.dm b/code/modules/chemical/Chemistry-Recipes.dm similarity index 100% rename from code/WorkInProgress/Chemistry-Recipes.dm rename to code/modules/chemical/Chemistry-Recipes.dm diff --git a/code/WorkInProgress/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm similarity index 100% rename from code/WorkInProgress/Chemistry-Tools.dm rename to code/modules/chemical/Chemistry-Tools.dm diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm index 2a54e80016..ea4dd9dd46 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm @@ -6,6 +6,7 @@ temperature_alert = 0 + /mob/living/carbon/alien/humanoid/Life() set invisibility = 0 set background = 1 @@ -13,245 +14,84 @@ if (src.monkeyizing) return - var/datum/gas_mixture/environment = loc.return_air() - if (src.stat != 2) //still breathing //First, resolve location and get a breath if(air_master.current_cycle%4==2) //Only try to take a breath every 4 seconds, unless suffocating - - var/datum/air_group/breath - - - //No breath from internal atmosphere so get breath from location - if(!breath) - if(istype(loc, /obj/)) - var/obj/location_as_object = loc - breath = location_as_object.handle_internal_lifeform(src, BREATH_VOLUME) - else if(istype(loc, /turf/)) - var/breath_moles = environment.total_moles()*BREATH_PERCENTAGE - breath = loc.remove_air(breath_moles) - - else //Still give containing object the chance to interact - if(istype(loc, /obj/)) - var/obj/location_as_object = loc - location_as_object.handle_internal_lifeform(src, 0) - - handle_breath(breath) - - if(breath) - loc.assume_air(breath) + spawn(0) breathe() else //Still give containing object the chance to interact if(istype(loc, /obj/)) var/obj/location_as_object = loc location_as_object.handle_internal_lifeform(src, 0) + //Apparently, the person who wrote this code designed it so that + //blinded get reset each cycle and then get activated later in the + //code. Very ugly. I dont care. Moving this stuff here so its easy + //to find it. + src.blinded = null + + //Disease Check handle_virus_updates() - handle_environment(environment) - //Handle temperature/pressure differences between body and environment also handles alien weeds! + //Update mind + update_mind() + //Handle temperature/pressure differences between body and environment + handle_environment() + + //Mutations and radiation + handle_mutations_and_radiation() + + //Chemicals in the body handle_chemicals_in_body() + //stuff in the stomach + handle_stomach() + + //Disabilities + handle_disabilities() + + //Status updates, death etc. handle_regular_status_updates() + // Update clothing + update_clothing() + if(client) handle_regular_hud_updates() + //Being buckled to a chair or bed + check_if_buckled() + + // Yup. + update_canmove() + + clamp_values() + + // Grabbing + for(var/obj/item/weapon/grab/G in src) + G.process() + + /mob/living/carbon/alien/humanoid proc + clamp_values() - handle_breath(datum/gas_mixture/breath) - //Aliens can breathe in any atmosphere - var/toxins_used = 0 + stunned = max(min(stunned, 20),0) + paralysis = max(min(paralysis, 20), 0) + weakened = max(min(weakened, 20), 0) + sleeping = max(min(sleeping, 20), 0) + bruteloss = max(bruteloss, 0) + toxloss = max(toxloss, 0) + oxyloss = max(oxyloss, 0) + fireloss = max(fireloss, 0) - if(breath.toxins > ((ONE_ATMOSPHERE*BREATH_VOLUME*0.15)/(T20C*R_IDEAL_GAS_EQUATION))) - var/available_ratio = breath.toxins/((ONE_ATMOSPHERE*BREATH_VOLUME*0.15)/(T20C*R_IDEAL_GAS_EQUATION)) - toxins_used = breath.toxins*available_ratio/6 - toxloss += 7*(1-available_ratio) - else - toxloss = max(toxloss-5, 0) - toxins_used = breath.oxygen/6 - breath.toxins -= toxins_used - breath.oxygen += toxins_used + handle_disabilities() - if(breath.temperature > (T0C+66)) - fire_alert = max(fire_alert, 1) - - return 1 - - handle_environment(datum/gas_mixture/environment) - if(!environment) - return - var/environment_heat_capacity = environment.heat_capacity() - if(istype(loc, /turf/space)) - environment_heat_capacity = loc:heat_capacity - - //If there are alien weeds on the ground then heal if needed or give some toxins - if(locate(/obj/alien/weeds) in loc) - if(health >= 100) - toxloss += 2 - else - health += 5 - - if((environment.temperature > (T0C + 50)) || (environment.temperature < (T0C + 10))) - var/transfer_coefficient - - transfer_coefficient = 1 - if(head && (head.body_parts_covered & HEAD) && (environment.temperature < head.protective_temperature)) - transfer_coefficient *= head.heat_transfer_coefficient - if(wear_mask && (wear_mask.body_parts_covered & HEAD) && (environment.temperature < wear_mask.protective_temperature)) - transfer_coefficient *= wear_mask.heat_transfer_coefficient - if(wear_suit && (wear_suit.body_parts_covered & HEAD) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(HEAD, environment.temperature, environment_heat_capacity*transfer_coefficient) - - transfer_coefficient = 1 - if(wear_suit && (wear_suit.body_parts_covered & UPPER_TORSO) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(UPPER_TORSO, environment.temperature, environment_heat_capacity*transfer_coefficient) - - transfer_coefficient = 1 - if(wear_suit && (wear_suit.body_parts_covered & LOWER_TORSO) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(LOWER_TORSO, environment.temperature, environment_heat_capacity*transfer_coefficient) - - transfer_coefficient = 1 - if(wear_suit && (wear_suit.body_parts_covered & LEGS) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(LEGS, environment.temperature, environment_heat_capacity*transfer_coefficient) - - transfer_coefficient = 1 - if(wear_suit && (wear_suit.body_parts_covered & ARMS) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(ARMS, environment.temperature, environment_heat_capacity*transfer_coefficient) - - transfer_coefficient = 1 - if(wear_suit && (wear_suit.body_parts_covered & HANDS) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(HANDS, environment.temperature, environment_heat_capacity*transfer_coefficient) - - transfer_coefficient = 1 - if(wear_suit && (wear_suit.body_parts_covered & FEET) && (environment.temperature < wear_suit.protective_temperature)) - transfer_coefficient *= wear_suit.heat_transfer_coefficient - - handle_temperature_damage(FEET, environment.temperature, environment_heat_capacity*transfer_coefficient) - - if(stat==2) - bodytemperature += 0.1*(environment.temperature - bodytemperature)*environment_heat_capacity/(environment_heat_capacity + 270000) - - //Account for massive pressure differences - return //TODO: DEFERRED - - handle_temperature_damage(body_part, exposed_temperature, exposed_intensity) - var/discomfort = abs(exposed_temperature - bodytemperature)*(exposed_intensity)/2000000 - - switch(body_part) - if(HEAD) - TakeDamage("head", 0, 2.5*discomfort) - if(UPPER_TORSO) - TakeDamage("chest", 0, 2.5*discomfort) - if(LOWER_TORSO) - TakeDamage("groin", 0, 2.0*discomfort) - if(LEGS) - TakeDamage("l_leg", 0, 0.6*discomfort) - TakeDamage("r_leg", 0, 0.6*discomfort) - if(ARMS) - TakeDamage("l_arm", 0, 0.4*discomfort) - TakeDamage("r_arm", 0, 0.4*discomfort) - if(FEET) - TakeDamage("l_foot", 0, 0.25*discomfort) - TakeDamage("r_foot", 0, 0.25*discomfort) - if(HANDS) - TakeDamage("l_hand", 0, 0.25*discomfort) - TakeDamage("r_hand", 0, 0.25*discomfort) - - handle_chemicals_in_body() - return //TODO: DEFERRED - - handle_regular_status_updates() - //No toxloss because aliens breathe in toxins - health = 100 - (oxyloss + fireloss + bruteloss) - - if(oxyloss > 25) - paralysis = max(paralysis, 3) - - if(health < -100) - death() - - return 1 - - handle_regular_hud_updates() - //Aliens can't have internals - if(internal) - internals.icon_state = "internal1" - else - internals.icon_state = "internal0" - //Aliens can breathe any atmosphere - if(oxygen_alert > 0) - oxygen_alert -= 1 - oxygen.icon_state = "oxy1" - else - oxygen.icon_state = "oxy0" - //Aliens like toxins :) - if(toxins_alert > 0) - toxins_alert -= 1 - toxin.icon_state = "tox1" - else - toxin.icon_state = "tox0" - //This makes sense, aliens hate fire - if(fire_alert > 0) - fire_alert -= 1 - fire.icon_state = "fire1" - else - fire.icon_state = "fire0" - - return 1 - - //Should aliens have DNA? - //Figure it out and come back here. - //Nannek - //As a note, the toxloss for radiation should be changed as the alien uses toxloss as a fuel - - handle_random_events() - return - -/* - if (src.radiation > 100) - src.radiation = 100 - if ((prob(1) && (src.radiation >= 75))) - randmutb(src) - src << "\red High levels of Radiation cause you to spontaneously mutate." - domutcheck(src,null) - if ((prob(7) && (src.radiation >= 75))) - if (src.paralysis < 3) - src.paralysis = 3 - src << "\red You feel weak!" - emote("collapse") - src.updatehealth() - src.radiation -= 5 - else if ((prob(7) && ((src.radiation > 50)&&(src.radiation < 75)))) - src.updatehealth() - src.radiation -= 5 - emote("gasp") - else - if (prob(7) && (src.radiation > 1)) - if (src.radiation >= 10) - src.radiation -= 10 - src.toxloss += 5 - src.updatehealth() - else - src.radiation = 0 if (src.disabilities & 2) if ((prob(1) && src.paralysis < 10 && src.r_epil < 1)) src << "\red You have a seizure!" @@ -271,87 +111,465 @@ if (src.disabilities & 16) if (prob(10)) src.stuttering = max(10, src.stuttering) - if (prob(1) && prob(2)) - spawn(0) - emote("sneeze") - return -*/ - //This is fine for the alien + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = "Hunter" + mind.key = key + + handle_mutations_and_radiation() + + if(src.fireloss) + if(src.mutations & COLD_RESISTANCE || prob(50)) + switch(src.fireloss) + if(1 to 50) + src.fireloss-- + if(51 to 100) + src.fireloss -= 5 + + if (src.mutations & HULK && src.health <= 25) + src.mutations &= ~HULK + src << "\red You suddenly feel very weak." + src.weakened = 3 + emote("collapse") + + if (src.radiation) + if (src.radiation > 100) + src.radiation = 100 + src.weakened = 10 + src << "\red You feel weak." + emote("collapse") + + if (src.radiation < 0) + src.radiation = 0 + + switch(src.radiation) + if(1 to 49) + src.radiation-- + if(prob(25)) + src.toxloss++ + src.updatehealth() + + if(50 to 74) + src.radiation -= 2 + src.toxloss++ + if(prob(5)) + src.radiation -= 5 + src.weakened = 3 + src << "\red You feel weak." + emote("collapse") + src.updatehealth() + + if(75 to 100) + src.radiation -= 3 + src.toxloss += 3 + if(prob(1)) + src << "\red You mutate!" + randmutb(src) + domutcheck(src,null) + emote("gasp") + src.updatehealth() + + + breathe() + if(src.reagents) + if(src.reagents.has_reagent("lexorin")) return + if(istype(loc, /obj/machinery/atmospherics/unary/cryo_cell)) return + + var/datum/gas_mixture/environment = loc.return_air() + var/datum/air_group/breath + // HACK NEED CHANGING LATER + if(src.health < 0) + src.losebreath++ + + if(losebreath>0) //Suffocating so do not take a breath + src.losebreath-- + if (prob(75)) //High chance of gasping for air + spawn emote("gasp") + if(istype(loc, /obj/)) + var/obj/location_as_object = loc + location_as_object.handle_internal_lifeform(src, 0) + else + //First, check for air from internal atmosphere (using an air tank and mask generally) + breath = get_breath_from_internal(BREATH_VOLUME) + + //No breath from internal atmosphere so get breath from location + if(!breath) + if(istype(loc, /obj/)) + var/obj/location_as_object = loc + breath = location_as_object.handle_internal_lifeform(src, BREATH_VOLUME) + else if(istype(loc, /turf/)) + var/breath_moles = 0 + /*if(environment.return_pressure() > ONE_ATMOSPHERE) + // Loads of air around (pressure effects will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT) + breath_moles = (ONE_ATMOSPHERE*BREATH_VOLUME/R_IDEAL_GAS_EQUATION*environment.temperature) + else*/ + // Not enough air around, take a percentage of what's there to model this properly + breath_moles = environment.total_moles()*BREATH_PERCENTAGE + + breath = loc.remove_air(breath_moles) + + else //Still give containing object the chance to interact + if(istype(loc, /obj/)) + var/obj/location_as_object = loc + location_as_object.handle_internal_lifeform(src, 0) + + handle_breath(breath) + + if(breath) + loc.assume_air(breath) + + + get_breath_from_internal(volume_needed) + if(internal) + if (!contents.Find(src.internal)) + internal = null + if (!wear_mask || !(wear_mask.flags & MASKINTERNALS) ) + internal = null + if(internal) + if (src.internals) + src.internals.icon_state = "internal1" + return internal.remove_air_volume(volume_needed) + else + if (src.internals) + src.internals.icon_state = "internal0" + return null + + update_canmove() + if(paralysis || stunned || weakened || buckled) canmove = 0 + else canmove = 1 + + handle_breath(datum/gas_mixture/breath) + if(src.nodamage) + return + + if(!breath || (breath.total_moles() == 0)) + //Aliens breathe in vaccuum + return 0 + + var/toxins_used = 0 + var/breath_pressure = (breath.total_moles()*R_IDEAL_GAS_EQUATION*breath.temperature)/BREATH_VOLUME + + //Partial pressure of the toxins in our breath + var/Toxins_pp = (breath.toxins/breath.total_moles())*breath_pressure + + if(Toxins_pp) // Detect toxins in air + + toxloss += breath.toxins*250 + toxins_alert = max(toxins_alert, 1) + + toxins_used = breath.toxins + + else + toxins_alert = 0 + + //Breathe in toxins and out oxygen + breath.toxins -= toxins_used + breath.oxygen += toxins_used + + if(breath.temperature > (T0C+66) && !(src.mutations & COLD_RESISTANCE)) // Hot air hurts :( + if(prob(20)) + src << "\red You feel a searing heat in your lungs!" + fire_alert = max(fire_alert, 1) + else + fire_alert = 0 + + //Temporary fixes to the alerts. + + return 1 + + handle_environment() + + //If there are alien weeds on the ground then heal if needed or give some toxins + if(locate(/obj/alien/weeds) in loc) + if(health >= 100) + toxloss += 15 + if(toxloss > max_plasma) + toxloss = max_plasma + + else + bruteloss -= 15 + fireloss -= 15 + + + + adjust_body_temperature(current, loc_temp, boost) + var/temperature = current + var/difference = abs(current-loc_temp) //get difference + var/increments// = difference/10 //find how many increments apart they are + if(difference > 50) + increments = difference/5 + else + increments = difference/10 + var/change = increments*boost // Get the amount to change by (x per increment) + var/temp_change + if(current < loc_temp) + temperature = min(loc_temp, temperature+change) + else if(current > loc_temp) + temperature = max(loc_temp, temperature-change) + temp_change = (temperature - current) + return temp_change + + get_thermal_protection() + var/thermal_protection = 1.0 + //Handle normal clothing + if(head && (head.body_parts_covered & HEAD)) + thermal_protection += 0.5 + if(wear_suit && (wear_suit.body_parts_covered & UPPER_TORSO)) + thermal_protection += 0.5 + if(wear_suit && (wear_suit.body_parts_covered & LEGS)) + thermal_protection += 0.2 + if(wear_suit && (wear_suit.body_parts_covered & ARMS)) + thermal_protection += 0.2 + if(wear_suit && (wear_suit.body_parts_covered & HANDS)) + thermal_protection += 0.2 + if(wear_suit && (wear_suit.flags & SUITSPACE)) + thermal_protection += 3 + if(src.mutations & COLD_RESISTANCE) + thermal_protection += 5 + + return thermal_protection + + add_fire_protection(var/temp) + var/fire_prot = 0 + if(head) + if(head.protective_temperature > temp) + fire_prot += (head.protective_temperature/10) + if(wear_mask) + if(wear_mask.protective_temperature > temp) + fire_prot += (wear_mask.protective_temperature/10) + if(wear_suit) + if(wear_suit.protective_temperature > temp) + fire_prot += (wear_suit.protective_temperature/10) + + + return fire_prot + + handle_chemicals_in_body() + + if(reagents) reagents.metabolize(src) + + if(src.nutrition > 500 && !(src.mutations & FAT)) + if(prob(5 + round((src.nutrition - 200) / 2))) + src << "\red You suddenly feel blubbery!" + src.mutations |= FAT +// update_body() + if (src.nutrition < 100 && src.mutations & FAT) + if(prob(round((50 - src.nutrition) / 100))) + src << "\blue You feel fit again!" + src.mutations &= ~FAT +// update_body() + if (src.nutrition > 0) + src.nutrition -= HUNGER_FACTOR + + if (src.drowsyness) + src.drowsyness-- + src.eye_blurry = max(2, src.eye_blurry) + if (prob(5)) + src.sleeping = 1 + src.paralysis = 5 + + confused = max(0, confused - 1) + // decrement dizziness counter, clamped to 0 + if(resting) + dizziness = max(0, dizziness - 5) + jitteriness = max(0, jitteriness - 5) + else + dizziness = max(0, dizziness - 1) + jitteriness = max(0, jitteriness - 1) + + src.updatehealth() + + return //TODO: DEFERRED + + handle_regular_status_updates() + + health = 100 - (oxyloss + fireloss + bruteloss + cloneloss) + + if(oxyloss > 50) paralysis = max(paralysis, 3) + + if(src.sleeping) + src.paralysis = max(src.paralysis, 3) + if (prob(10) && health) spawn(0) emote("snore") + src.sleeping-- + + if(src.resting) + src.weakened = max(src.weakened, 5) + + if(health < -100 || src.brain_op_stage == 4.0) + death() + else if(src.health < 0) + if(src.health <= 20 && prob(1)) spawn(0) emote("gasp") + + //if(!src.rejuv) src.oxyloss++ + if(!src.reagents.has_reagent("inaprovaline")) src.oxyloss++ + + if(src.stat != 2) src.stat = 1 + src.paralysis = max(src.paralysis, 5) + + if (src.stat != 2) //Alive. + + if (src.paralysis || src.stunned || src.weakened) //Stunned etc. + if (src.stunned > 0) + src.stunned-- + src.stat = 0 + if (src.weakened > 0) + src.weakened-- + src.lying = 1 + src.stat = 0 + if (src.paralysis > 0) + src.paralysis-- + src.blinded = 1 + src.lying = 1 + src.stat = 1 + var/h = src.hand + src.hand = 0 + drop_item() + src.hand = 1 + drop_item() + src.hand = h + + else //Not stunned. + src.lying = 0 + src.stat = 0 + + else //Dead. + src.lying = 1 + src.blinded = 1 + src.stat = 2 + + if (src.stuttering) src.stuttering-- + + if (src.eye_blind) + src.eye_blind-- + src.blinded = 1 + + if (src.ear_deaf > 0) src.ear_deaf-- + if (src.ear_damage < 25) + src.ear_damage -= 0.05 + src.ear_damage = max(src.ear_damage, 0) + + src.density = !( src.lying ) + + if ((src.sdisabilities & 1)) + src.blinded = 1 + if ((src.sdisabilities & 4)) + src.ear_deaf = 1 + + if (src.eye_blurry > 0) + src.eye_blurry-- + src.eye_blurry = max(0, src.eye_blurry) + + if (src.druggy > 0) + src.druggy-- + src.druggy = max(0, src.druggy) + + return 1 + + handle_regular_hud_updates() + + if (src.stat == 2 || src.mutations & XRAY) + src.sight |= SEE_TURFS + src.sight |= SEE_MOBS + src.sight |= SEE_OBJS + src.see_in_dark = 8 + src.see_invisible = 2 + else if (src.stat != 2) + src.sight |= SEE_MOBS + src.sight &= ~SEE_TURFS + src.sight &= ~SEE_OBJS + src.see_in_dark = 4 + src.see_invisible = 2 + + if (src.sleep) src.sleep.icon_state = text("sleep[]", src.sleeping) + if (src.rest) src.rest.icon_state = text("rest[]", src.resting) + + if (src.healths) + if (src.stat != 2) + switch(health) + if(100 to INFINITY) + src.healths.icon_state = "health0" + if(75 to 100) + src.healths.icon_state = "health1" + if(50 to 75) + src.healths.icon_state = "health2" + if(25 to 50) + src.healths.icon_state = "health3" + if(0 to 25) + src.healths.icon_state = "health4" + else + src.healths.icon_state = "health5" + else + src.healths.icon_state = "health6" + + if(src.pullin) src.pullin.icon_state = "pull[src.pulling ? 1 : 0]" + + + if (src.toxin) src.toxin.icon_state = "tox[src.toxins_alert ? 1 : 0]" + if (src.oxygen) src.oxygen.icon_state = "oxy[src.oxygen_alert ? 1 : 0]" + if (src.fire) src.fire.icon_state = "fire[src.fire_alert ? 1 : 0]" + //NOTE: the alerts dont reset when youre out of danger. dont blame me, + //blame the person who coded them. Temporary fix added. + + src.client.screen -= src.hud_used.blurry + src.client.screen -= src.hud_used.druggy + src.client.screen -= src.hud_used.vimpaired + + if ((src.blind && src.stat != 2)) + if ((src.blinded)) + src.blind.layer = 18 + else + src.blind.layer = 0 + + if (src.disabilities & 1) + src.client.screen += src.hud_used.vimpaired + + if (src.eye_blurry) + src.client.screen += src.hud_used.blurry + + if (src.druggy) + src.client.screen += src.hud_used.druggy + + if (src.stat != 2) + if (src.machine) + if (!( src.machine.check_eye(src) )) + src.reset_view(null) + else + if(!client.adminobs) + reset_view(null) + + return 1 + handle_virus_updates() if(src.bodytemperature > 406) - src.virus.cure() + for(var/datum/disease/D in viruses) + D.cure() return - if(!src.virus) - if(prob(40)) - for(var/mob/living/carbon/M in range(4, src)) - if(M.virus && M.virus.spread == "Airborne") - if(M.virus.affected_species.Find("Alien")) - if(M.virus.type in src.resistances) - continue - src.contract_disease(new M.virus.type) - for(var/obj/decal/cleanable/blood/B in range(4, src)) - if(B.virus && B.virus.spread == "Airborne") - if(B.virus.affected_species.Find("Alien")) - if(B.virus.type in src.resistances) - continue - src.contract_disease(new B.virus.type) - for(var/obj/decal/cleanable/xenoblood/X in range(4, src)) - if(X.virus && X.virus.spread == "Airborne") - if(X.virus.affected_species.Find("Alien")) - if(X.virus.type in src.resistances) - continue - src.contract_disease(new X.virus.type) + check_if_buckled() + if (src.buckled) + src.lying = (istype(src.buckled, /obj/stool/bed) ? 1 : 0) + if(src.lying) + src.drop_item() + src.density = 1 else - src.virus.stage_act() -/* -snippets + src.density = !src.lying - if (src.mach) - if (src.machine) - src.mach.icon_state = "mach1" - else - src.mach.icon_state = null - - if (!src.m_flag) - src.moved_recently = 0 - src.m_flag = null - - - - if ((istype(src.loc, /turf/space) && !( locate(/obj/movable, src.loc) ))) - var/layers = 20 - // ******* Check - if (((istype(src.head, /obj/item/clothing/head) && src.head.flags & 4) || (istype(src.wear_mask, /obj/item/clothing/mask) && (!( src.wear_mask.flags & 4 ) && src.wear_mask.flags & 8)))) - layers -= 5 - if (istype(src.w_uniform, /obj/item/clothing/under)) - layers -= 5 - if ((istype(src.wear_suit, /obj/item/clothing/suit) && src.wear_suit.flags & 8)) - layers -= 10 - if (layers > oxcheck) - oxcheck = layers - - - if(src.bodytemperature < 282.591 && (!src.firemut)) - if(src.bodytemperature < 250) - src.fireloss += 4 - src.updatehealth() - if(src.paralysis <= 2) src.paralysis += 2 - else if(prob(1) && !src.paralysis) - if(src.paralysis <= 5) src.paralysis += 5 - emote("collapse") - src << "\red You collapse from the cold!" - if(src.bodytemperature > 327.444 && (!src.firemut)) - if(src.bodytemperature > 345.444) - if(!src.eye_blurry) src << "\red The heat blurs your vision!" - src.eye_blurry = max(4, src.eye_blurry) - if(prob(3)) src.fireloss += rand(1,2) - else if(prob(3) && !src.paralysis) - src.paralysis += 2 - emote("collapse") - src << "\red You collapse from heat exaustion!" - plcheck = src.t_plasma - oxcheck = src.t_oxygen - G.turf_add(T, G.total_moles()) -*/ + handle_stomach() + spawn(0) + for(var/mob/M in stomach_contents) + if(M.loc != src) + stomach_contents.Remove(M) + continue + if(istype(M, /mob/living/carbon) && src.stat != 2) + if(M.stat == 2) + M.death(1) + stomach_contents.Remove(M) + del(M) + continue + if(air_master.current_cycle%3==1) + if(!M.nodamage) + M.bruteloss += 5 + src.nutrition += 10 diff --git a/code/modules/mob/living/carbon/alien/humanoid/life_new.dm b/code/modules/mob/living/carbon/alien/humanoid/life_new.dm deleted file mode 100644 index ea4dd9dd46..0000000000 --- a/code/modules/mob/living/carbon/alien/humanoid/life_new.dm +++ /dev/null @@ -1,575 +0,0 @@ -/mob/living/carbon/alien/humanoid - var - oxygen_alert = 0 - toxins_alert = 0 - fire_alert = 0 - - temperature_alert = 0 - - -/mob/living/carbon/alien/humanoid/Life() - set invisibility = 0 - set background = 1 - - if (src.monkeyizing) - return - - if (src.stat != 2) //still breathing - - //First, resolve location and get a breath - - if(air_master.current_cycle%4==2) - //Only try to take a breath every 4 seconds, unless suffocating - spawn(0) breathe() - - else //Still give containing object the chance to interact - if(istype(loc, /obj/)) - var/obj/location_as_object = loc - location_as_object.handle_internal_lifeform(src, 0) - - //Apparently, the person who wrote this code designed it so that - //blinded get reset each cycle and then get activated later in the - //code. Very ugly. I dont care. Moving this stuff here so its easy - //to find it. - src.blinded = null - - //Disease Check - handle_virus_updates() - - //Update mind - update_mind() - - //Handle temperature/pressure differences between body and environment - handle_environment() - - //Mutations and radiation - handle_mutations_and_radiation() - - //Chemicals in the body - handle_chemicals_in_body() - - //stuff in the stomach - handle_stomach() - - //Disabilities - handle_disabilities() - - //Status updates, death etc. - handle_regular_status_updates() - - // Update clothing - update_clothing() - - if(client) - handle_regular_hud_updates() - - //Being buckled to a chair or bed - check_if_buckled() - - // Yup. - update_canmove() - - clamp_values() - - // Grabbing - for(var/obj/item/weapon/grab/G in src) - G.process() - - -/mob/living/carbon/alien/humanoid - proc - clamp_values() - - stunned = max(min(stunned, 20),0) - paralysis = max(min(paralysis, 20), 0) - weakened = max(min(weakened, 20), 0) - sleeping = max(min(sleeping, 20), 0) - bruteloss = max(bruteloss, 0) - toxloss = max(toxloss, 0) - oxyloss = max(oxyloss, 0) - fireloss = max(fireloss, 0) - - - handle_disabilities() - - if (src.disabilities & 2) - if ((prob(1) && src.paralysis < 10 && src.r_epil < 1)) - src << "\red You have a seizure!" - src.paralysis = max(10, src.paralysis) - if (src.disabilities & 4) - if ((prob(5) && src.paralysis <= 1 && src.r_ch_cou < 1)) - src.drop_item() - spawn( 0 ) - emote("cough") - return - if (src.disabilities & 8) - if ((prob(10) && src.paralysis <= 1 && src.r_Tourette < 1)) - src.stunned = max(10, src.stunned) - spawn( 0 ) - emote("twitch") - return - if (src.disabilities & 16) - if (prob(10)) - src.stuttering = max(10, src.stuttering) - - update_mind() - if(!mind && client) - mind = new - mind.current = src - mind.assigned_role = "Hunter" - mind.key = key - - handle_mutations_and_radiation() - - if(src.fireloss) - if(src.mutations & COLD_RESISTANCE || prob(50)) - switch(src.fireloss) - if(1 to 50) - src.fireloss-- - if(51 to 100) - src.fireloss -= 5 - - if (src.mutations & HULK && src.health <= 25) - src.mutations &= ~HULK - src << "\red You suddenly feel very weak." - src.weakened = 3 - emote("collapse") - - if (src.radiation) - if (src.radiation > 100) - src.radiation = 100 - src.weakened = 10 - src << "\red You feel weak." - emote("collapse") - - if (src.radiation < 0) - src.radiation = 0 - - switch(src.radiation) - if(1 to 49) - src.radiation-- - if(prob(25)) - src.toxloss++ - src.updatehealth() - - if(50 to 74) - src.radiation -= 2 - src.toxloss++ - if(prob(5)) - src.radiation -= 5 - src.weakened = 3 - src << "\red You feel weak." - emote("collapse") - src.updatehealth() - - if(75 to 100) - src.radiation -= 3 - src.toxloss += 3 - if(prob(1)) - src << "\red You mutate!" - randmutb(src) - domutcheck(src,null) - emote("gasp") - src.updatehealth() - - - breathe() - if(src.reagents) - if(src.reagents.has_reagent("lexorin")) return - if(istype(loc, /obj/machinery/atmospherics/unary/cryo_cell)) return - - var/datum/gas_mixture/environment = loc.return_air() - var/datum/air_group/breath - // HACK NEED CHANGING LATER - if(src.health < 0) - src.losebreath++ - - if(losebreath>0) //Suffocating so do not take a breath - src.losebreath-- - if (prob(75)) //High chance of gasping for air - spawn emote("gasp") - if(istype(loc, /obj/)) - var/obj/location_as_object = loc - location_as_object.handle_internal_lifeform(src, 0) - else - //First, check for air from internal atmosphere (using an air tank and mask generally) - breath = get_breath_from_internal(BREATH_VOLUME) - - //No breath from internal atmosphere so get breath from location - if(!breath) - if(istype(loc, /obj/)) - var/obj/location_as_object = loc - breath = location_as_object.handle_internal_lifeform(src, BREATH_VOLUME) - else if(istype(loc, /turf/)) - var/breath_moles = 0 - /*if(environment.return_pressure() > ONE_ATMOSPHERE) - // Loads of air around (pressure effects will be handled elsewhere), so lets just take a enough to fill our lungs at normal atmos pressure (using n = Pv/RT) - breath_moles = (ONE_ATMOSPHERE*BREATH_VOLUME/R_IDEAL_GAS_EQUATION*environment.temperature) - else*/ - // Not enough air around, take a percentage of what's there to model this properly - breath_moles = environment.total_moles()*BREATH_PERCENTAGE - - breath = loc.remove_air(breath_moles) - - else //Still give containing object the chance to interact - if(istype(loc, /obj/)) - var/obj/location_as_object = loc - location_as_object.handle_internal_lifeform(src, 0) - - handle_breath(breath) - - if(breath) - loc.assume_air(breath) - - - get_breath_from_internal(volume_needed) - if(internal) - if (!contents.Find(src.internal)) - internal = null - if (!wear_mask || !(wear_mask.flags & MASKINTERNALS) ) - internal = null - if(internal) - if (src.internals) - src.internals.icon_state = "internal1" - return internal.remove_air_volume(volume_needed) - else - if (src.internals) - src.internals.icon_state = "internal0" - return null - - update_canmove() - if(paralysis || stunned || weakened || buckled) canmove = 0 - else canmove = 1 - - handle_breath(datum/gas_mixture/breath) - if(src.nodamage) - return - - if(!breath || (breath.total_moles() == 0)) - //Aliens breathe in vaccuum - return 0 - - var/toxins_used = 0 - var/breath_pressure = (breath.total_moles()*R_IDEAL_GAS_EQUATION*breath.temperature)/BREATH_VOLUME - - //Partial pressure of the toxins in our breath - var/Toxins_pp = (breath.toxins/breath.total_moles())*breath_pressure - - if(Toxins_pp) // Detect toxins in air - - toxloss += breath.toxins*250 - toxins_alert = max(toxins_alert, 1) - - toxins_used = breath.toxins - - else - toxins_alert = 0 - - //Breathe in toxins and out oxygen - breath.toxins -= toxins_used - breath.oxygen += toxins_used - - if(breath.temperature > (T0C+66) && !(src.mutations & COLD_RESISTANCE)) // Hot air hurts :( - if(prob(20)) - src << "\red You feel a searing heat in your lungs!" - fire_alert = max(fire_alert, 1) - else - fire_alert = 0 - - //Temporary fixes to the alerts. - - return 1 - - handle_environment() - - //If there are alien weeds on the ground then heal if needed or give some toxins - if(locate(/obj/alien/weeds) in loc) - if(health >= 100) - toxloss += 15 - if(toxloss > max_plasma) - toxloss = max_plasma - - else - bruteloss -= 15 - fireloss -= 15 - - - - adjust_body_temperature(current, loc_temp, boost) - var/temperature = current - var/difference = abs(current-loc_temp) //get difference - var/increments// = difference/10 //find how many increments apart they are - if(difference > 50) - increments = difference/5 - else - increments = difference/10 - var/change = increments*boost // Get the amount to change by (x per increment) - var/temp_change - if(current < loc_temp) - temperature = min(loc_temp, temperature+change) - else if(current > loc_temp) - temperature = max(loc_temp, temperature-change) - temp_change = (temperature - current) - return temp_change - - get_thermal_protection() - var/thermal_protection = 1.0 - //Handle normal clothing - if(head && (head.body_parts_covered & HEAD)) - thermal_protection += 0.5 - if(wear_suit && (wear_suit.body_parts_covered & UPPER_TORSO)) - thermal_protection += 0.5 - if(wear_suit && (wear_suit.body_parts_covered & LEGS)) - thermal_protection += 0.2 - if(wear_suit && (wear_suit.body_parts_covered & ARMS)) - thermal_protection += 0.2 - if(wear_suit && (wear_suit.body_parts_covered & HANDS)) - thermal_protection += 0.2 - if(wear_suit && (wear_suit.flags & SUITSPACE)) - thermal_protection += 3 - if(src.mutations & COLD_RESISTANCE) - thermal_protection += 5 - - return thermal_protection - - add_fire_protection(var/temp) - var/fire_prot = 0 - if(head) - if(head.protective_temperature > temp) - fire_prot += (head.protective_temperature/10) - if(wear_mask) - if(wear_mask.protective_temperature > temp) - fire_prot += (wear_mask.protective_temperature/10) - if(wear_suit) - if(wear_suit.protective_temperature > temp) - fire_prot += (wear_suit.protective_temperature/10) - - - return fire_prot - - handle_chemicals_in_body() - - if(reagents) reagents.metabolize(src) - - if(src.nutrition > 500 && !(src.mutations & FAT)) - if(prob(5 + round((src.nutrition - 200) / 2))) - src << "\red You suddenly feel blubbery!" - src.mutations |= FAT -// update_body() - if (src.nutrition < 100 && src.mutations & FAT) - if(prob(round((50 - src.nutrition) / 100))) - src << "\blue You feel fit again!" - src.mutations &= ~FAT -// update_body() - if (src.nutrition > 0) - src.nutrition -= HUNGER_FACTOR - - if (src.drowsyness) - src.drowsyness-- - src.eye_blurry = max(2, src.eye_blurry) - if (prob(5)) - src.sleeping = 1 - src.paralysis = 5 - - confused = max(0, confused - 1) - // decrement dizziness counter, clamped to 0 - if(resting) - dizziness = max(0, dizziness - 5) - jitteriness = max(0, jitteriness - 5) - else - dizziness = max(0, dizziness - 1) - jitteriness = max(0, jitteriness - 1) - - src.updatehealth() - - return //TODO: DEFERRED - - handle_regular_status_updates() - - health = 100 - (oxyloss + fireloss + bruteloss + cloneloss) - - if(oxyloss > 50) paralysis = max(paralysis, 3) - - if(src.sleeping) - src.paralysis = max(src.paralysis, 3) - if (prob(10) && health) spawn(0) emote("snore") - src.sleeping-- - - if(src.resting) - src.weakened = max(src.weakened, 5) - - if(health < -100 || src.brain_op_stage == 4.0) - death() - else if(src.health < 0) - if(src.health <= 20 && prob(1)) spawn(0) emote("gasp") - - //if(!src.rejuv) src.oxyloss++ - if(!src.reagents.has_reagent("inaprovaline")) src.oxyloss++ - - if(src.stat != 2) src.stat = 1 - src.paralysis = max(src.paralysis, 5) - - if (src.stat != 2) //Alive. - - if (src.paralysis || src.stunned || src.weakened) //Stunned etc. - if (src.stunned > 0) - src.stunned-- - src.stat = 0 - if (src.weakened > 0) - src.weakened-- - src.lying = 1 - src.stat = 0 - if (src.paralysis > 0) - src.paralysis-- - src.blinded = 1 - src.lying = 1 - src.stat = 1 - var/h = src.hand - src.hand = 0 - drop_item() - src.hand = 1 - drop_item() - src.hand = h - - else //Not stunned. - src.lying = 0 - src.stat = 0 - - else //Dead. - src.lying = 1 - src.blinded = 1 - src.stat = 2 - - if (src.stuttering) src.stuttering-- - - if (src.eye_blind) - src.eye_blind-- - src.blinded = 1 - - if (src.ear_deaf > 0) src.ear_deaf-- - if (src.ear_damage < 25) - src.ear_damage -= 0.05 - src.ear_damage = max(src.ear_damage, 0) - - src.density = !( src.lying ) - - if ((src.sdisabilities & 1)) - src.blinded = 1 - if ((src.sdisabilities & 4)) - src.ear_deaf = 1 - - if (src.eye_blurry > 0) - src.eye_blurry-- - src.eye_blurry = max(0, src.eye_blurry) - - if (src.druggy > 0) - src.druggy-- - src.druggy = max(0, src.druggy) - - return 1 - - handle_regular_hud_updates() - - if (src.stat == 2 || src.mutations & XRAY) - src.sight |= SEE_TURFS - src.sight |= SEE_MOBS - src.sight |= SEE_OBJS - src.see_in_dark = 8 - src.see_invisible = 2 - else if (src.stat != 2) - src.sight |= SEE_MOBS - src.sight &= ~SEE_TURFS - src.sight &= ~SEE_OBJS - src.see_in_dark = 4 - src.see_invisible = 2 - - if (src.sleep) src.sleep.icon_state = text("sleep[]", src.sleeping) - if (src.rest) src.rest.icon_state = text("rest[]", src.resting) - - if (src.healths) - if (src.stat != 2) - switch(health) - if(100 to INFINITY) - src.healths.icon_state = "health0" - if(75 to 100) - src.healths.icon_state = "health1" - if(50 to 75) - src.healths.icon_state = "health2" - if(25 to 50) - src.healths.icon_state = "health3" - if(0 to 25) - src.healths.icon_state = "health4" - else - src.healths.icon_state = "health5" - else - src.healths.icon_state = "health6" - - if(src.pullin) src.pullin.icon_state = "pull[src.pulling ? 1 : 0]" - - - if (src.toxin) src.toxin.icon_state = "tox[src.toxins_alert ? 1 : 0]" - if (src.oxygen) src.oxygen.icon_state = "oxy[src.oxygen_alert ? 1 : 0]" - if (src.fire) src.fire.icon_state = "fire[src.fire_alert ? 1 : 0]" - //NOTE: the alerts dont reset when youre out of danger. dont blame me, - //blame the person who coded them. Temporary fix added. - - src.client.screen -= src.hud_used.blurry - src.client.screen -= src.hud_used.druggy - src.client.screen -= src.hud_used.vimpaired - - if ((src.blind && src.stat != 2)) - if ((src.blinded)) - src.blind.layer = 18 - else - src.blind.layer = 0 - - if (src.disabilities & 1) - src.client.screen += src.hud_used.vimpaired - - if (src.eye_blurry) - src.client.screen += src.hud_used.blurry - - if (src.druggy) - src.client.screen += src.hud_used.druggy - - if (src.stat != 2) - if (src.machine) - if (!( src.machine.check_eye(src) )) - src.reset_view(null) - else - if(!client.adminobs) - reset_view(null) - - return 1 - - handle_virus_updates() - if(src.bodytemperature > 406) - for(var/datum/disease/D in viruses) - D.cure() - return - - check_if_buckled() - if (src.buckled) - src.lying = (istype(src.buckled, /obj/stool/bed) ? 1 : 0) - if(src.lying) - src.drop_item() - src.density = 1 - else - src.density = !src.lying - - handle_stomach() - spawn(0) - for(var/mob/M in stomach_contents) - if(M.loc != src) - stomach_contents.Remove(M) - continue - if(istype(M, /mob/living/carbon) && src.stat != 2) - if(M.stat == 2) - M.death(1) - stomach_contents.Remove(M) - del(M) - continue - if(air_master.current_cycle%3==1) - if(!M.nodamage) - M.bruteloss += 5 - src.nutrition += 10 diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 721a8e6733..a4a8a25a79 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -32,8 +32,6 @@ verbs += /mob/living/silicon/ai/proc/ai_camera_list //Added ai_network_change by Mord_Sith verbs += /mob/living/silicon/ai/proc/ai_network_change - verbs += /mob/living/silicon/ai/proc/lockdown - verbs += /mob/living/silicon/ai/proc/disablelockdown verbs += /mob/living/silicon/ai/proc/ai_statuschange //Hologram verb./N verbs += /mob/living/silicon/ai/proc/ai_hologram_change @@ -188,12 +186,10 @@ /mob/living/silicon/ai/emp_act(severity) if (prob(30)) - switch(pick(1,2,3)) //Add Random laws. + switch(pick(1,2)) if(1) cancel_camera() if(2) - lockdown() - if(3) ai_call_shuttle() ..() diff --git a/code/modules/mob/living/silicon/robot/say.dm b/code/modules/mob/living/silicon/robot/say.dm index 1bdd9c8003..c8d42e6b4c 100644 --- a/code/modules/mob/living/silicon/robot/say.dm +++ b/code/modules/mob/living/silicon/robot/say.dm @@ -5,8 +5,8 @@ return 1 if (istype(other, /mob/living/carbon/human)) return 1 - if (istype(other, /mob/living/silicon/hivebot)) - return 1 +// if (istype(other, /mob/living/silicon/hivebot)) +// return 1 return ..() /mob/living/silicon/robot/say_quote(var/text) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 30dde6e2c9..edbc64b6b7 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -57,15 +57,15 @@ return 1 return 0 -/proc/ishivebot(A) +/*proc/ishivebot(A) if(A && istype(A, /mob/living/silicon/hivebot)) return 1 - return 0 + return 0*/ -/proc/ishivemainframe(A) +/*proc/ishivemainframe(A) if(A && istype(A, /mob/living/silicon/hive_mainframe)) return 1 - return 0 + return 0*/ /proc/isAI(A) if(istype(A, /mob/living/silicon/ai)) @@ -974,20 +974,20 @@ It's fairly easy to fix if dealing with single letters but not so much with comp usr << "\blue You successfully unbuckle yourself." usr:buckled.manual_unbuckle_all(usr) if("module") - if(istype(usr, /mob/living/silicon/robot)||istype(usr, /mob/living/silicon/hivebot)) + if(istype(usr, /mob/living/silicon/robot)) if(usr:module) return usr:pick_module() if("radio") - if(istype(usr, /mob/living/silicon/robot)||istype(usr, /mob/living/silicon/hivebot)) + if(istype(usr, /mob/living/silicon/robot)) usr:radio_menu() if("panel") - if(istype(usr, /mob/living/silicon/robot)||istype(usr, /mob/living/silicon/hivebot)) + if(istype(usr, /mob/living/silicon/robot)) usr:installed_modules() if("store") - if(istype(usr, /mob/living/silicon/robot)||istype(usr, /mob/living/silicon/hivebot)) + if(istype(usr, /mob/living/silicon/robot)) usr:uneq_active() if("module1") @@ -1254,7 +1254,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp /mob/proc/equipped() if(issilicon(src)) - if(ishivebot(src)||isrobot(src)) + if(isrobot(src)) if(src:module_active) return src:module_active else @@ -1751,8 +1751,8 @@ It's fairly easy to fix if dealing with single letters but not so much with comp if(isAI(mob)) return AIMove(n,direct,mob) - if(ishivemainframe(mob)) - return MainframeMove(n,direct,mob) +// if(ishivemainframe(mob)) +// return MainframeMove(n,direct,mob) if(mob.anchored)/*If mob is not AI and is anchored. This means most anchored mobs will not be able to move. This is a fix for ninja energy_net to where mobs can not move but can still act to destroy it. diff --git a/code/modules/mob/living/carbon/human/savefile.dm b/code/modules/mob/new_player/savefile.dm similarity index 100% rename from code/modules/mob/living/carbon/human/savefile.dm rename to code/modules/mob/new_player/savefile.dm diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 58f364e0af..585cfd2c8e 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -126,8 +126,6 @@ O.verbs += /mob/living/silicon/ai/proc/ai_camera_track O.verbs += /mob/living/silicon/ai/proc/ai_alerts O.verbs += /mob/living/silicon/ai/proc/ai_camera_list - O.verbs += /mob/living/silicon/ai/proc/lockdown - O.verbs += /mob/living/silicon/ai/proc/disablelockdown O.verbs += /mob/living/silicon/ai/proc/ai_statuschange O.verbs += /mob/living/silicon/ai/proc/ai_roster diff --git a/code/game/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm similarity index 100% rename from code/game/research/circuitprinter.dm rename to code/modules/research/circuitprinter.dm diff --git a/code/game/research/designs.dm b/code/modules/research/designs.dm similarity index 100% rename from code/game/research/designs.dm rename to code/modules/research/designs.dm diff --git a/code/game/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm similarity index 100% rename from code/game/research/destructive_analyzer.dm rename to code/modules/research/destructive_analyzer.dm diff --git a/code/WorkInProgress/message_server.dm b/code/modules/research/message_server.dm similarity index 100% rename from code/WorkInProgress/message_server.dm rename to code/modules/research/message_server.dm diff --git a/code/game/research/protolathe.dm b/code/modules/research/protolathe.dm similarity index 100% rename from code/game/research/protolathe.dm rename to code/modules/research/protolathe.dm diff --git a/code/game/research/rd-readme.dm b/code/modules/research/rd-readme.dm similarity index 100% rename from code/game/research/rd-readme.dm rename to code/modules/research/rd-readme.dm diff --git a/code/game/research/rdconsole.dm b/code/modules/research/rdconsole.dm similarity index 100% rename from code/game/research/rdconsole.dm rename to code/modules/research/rdconsole.dm diff --git a/code/game/research/rdmachines.dm b/code/modules/research/rdmachines.dm similarity index 100% rename from code/game/research/rdmachines.dm rename to code/modules/research/rdmachines.dm diff --git a/code/game/research/research.dm b/code/modules/research/research.dm similarity index 100% rename from code/game/research/research.dm rename to code/modules/research/research.dm diff --git a/code/game/research/server.dm b/code/modules/research/server.dm similarity index 100% rename from code/game/research/server.dm rename to code/modules/research/server.dm diff --git a/code/WorkInProgress/BrokenInhands.dm b/code/unused/BrokenInhands.dm similarity index 100% rename from code/WorkInProgress/BrokenInhands.dm rename to code/unused/BrokenInhands.dm diff --git a/code/game/verbs/ai_lockdown.dm b/code/unused/ai_lockdown.dm similarity index 100% rename from code/game/verbs/ai_lockdown.dm rename to code/unused/ai_lockdown.dm diff --git a/code/modules/mob/living/carbon/beast/beast.dm b/code/unused/beast/beast.dm similarity index 100% rename from code/modules/mob/living/carbon/beast/beast.dm rename to code/unused/beast/beast.dm diff --git a/code/modules/mob/living/carbon/beast/bodypart.dm b/code/unused/beast/bodypart.dm similarity index 100% rename from code/modules/mob/living/carbon/beast/bodypart.dm rename to code/unused/beast/bodypart.dm diff --git a/code/modules/mob/living/carbon/beast/death.dm b/code/unused/beast/death.dm similarity index 100% rename from code/modules/mob/living/carbon/beast/death.dm rename to code/unused/beast/death.dm diff --git a/code/game/objects/carpetsplosion.dm b/code/unused/carpetsplosion.dm similarity index 100% rename from code/game/objects/carpetsplosion.dm rename to code/unused/carpetsplosion.dm diff --git a/code/WorkInProgress/computer2/airlock_control.dm b/code/unused/computer2/airlock_control.dm similarity index 100% rename from code/WorkInProgress/computer2/airlock_control.dm rename to code/unused/computer2/airlock_control.dm diff --git a/code/WorkInProgress/computer2/arcade.dm b/code/unused/computer2/arcade.dm similarity index 100% rename from code/WorkInProgress/computer2/arcade.dm rename to code/unused/computer2/arcade.dm diff --git a/code/WorkInProgress/computer2/base_program.dm b/code/unused/computer2/base_program.dm similarity index 100% rename from code/WorkInProgress/computer2/base_program.dm rename to code/unused/computer2/base_program.dm diff --git a/code/WorkInProgress/computer2/buildandrepair.dm b/code/unused/computer2/buildandrepair.dm similarity index 100% rename from code/WorkInProgress/computer2/buildandrepair.dm rename to code/unused/computer2/buildandrepair.dm diff --git a/code/WorkInProgress/computer2/computerII.dm b/code/unused/computer2/computerII.dm similarity index 100% rename from code/WorkInProgress/computer2/computerII.dm rename to code/unused/computer2/computerII.dm diff --git a/code/WorkInProgress/computer2/filebrowse.dm b/code/unused/computer2/filebrowse.dm similarity index 100% rename from code/WorkInProgress/computer2/filebrowse.dm rename to code/unused/computer2/filebrowse.dm diff --git a/code/WorkInProgress/computer2/med_rec.dm b/code/unused/computer2/med_rec.dm similarity index 100% rename from code/WorkInProgress/computer2/med_rec.dm rename to code/unused/computer2/med_rec.dm diff --git a/code/WorkInProgress/computer2/messenger.dm b/code/unused/computer2/messenger.dm similarity index 100% rename from code/WorkInProgress/computer2/messenger.dm rename to code/unused/computer2/messenger.dm diff --git a/code/WorkInProgress/computer2/peripherals.dm b/code/unused/computer2/peripherals.dm similarity index 100% rename from code/WorkInProgress/computer2/peripherals.dm rename to code/unused/computer2/peripherals.dm diff --git a/code/game/objects/items/weapons/game_kit.dm b/code/unused/game_kit.dm similarity index 100% rename from code/game/objects/items/weapons/game_kit.dm rename to code/unused/game_kit.dm diff --git a/code/modules/mob/living/silicon/hivebot/death.dm b/code/unused/hivebot/death.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/death.dm rename to code/unused/hivebot/death.dm diff --git a/code/modules/mob/living/silicon/hivebot/emote.dm b/code/unused/hivebot/emote.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/emote.dm rename to code/unused/hivebot/emote.dm diff --git a/code/modules/mob/living/silicon/hivebot/examine.dm b/code/unused/hivebot/examine.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/examine.dm rename to code/unused/hivebot/examine.dm diff --git a/code/modules/mob/living/silicon/hivebot/hive_modules.dm b/code/unused/hivebot/hive_modules.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/hive_modules.dm rename to code/unused/hivebot/hive_modules.dm diff --git a/code/modules/mob/living/silicon/hivebot/hivebot.dm b/code/unused/hivebot/hivebot.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/hivebot.dm rename to code/unused/hivebot/hivebot.dm diff --git a/code/defines/mob/living/silicon/hivebot.dm b/code/unused/hivebot/hivebotdefine.dm similarity index 100% rename from code/defines/mob/living/silicon/hivebot.dm rename to code/unused/hivebot/hivebotdefine.dm diff --git a/code/modules/mob/living/silicon/hivebot/hud.dm b/code/unused/hivebot/hud.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/hud.dm rename to code/unused/hivebot/hud.dm diff --git a/code/modules/mob/living/silicon/hivebot/life.dm b/code/unused/hivebot/life.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/life.dm rename to code/unused/hivebot/life.dm diff --git a/code/modules/mob/living/silicon/hivebot/login.dm b/code/unused/hivebot/login.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/login.dm rename to code/unused/hivebot/login.dm diff --git a/code/modules/mob/living/silicon/hivebot/mainframe.dm b/code/unused/hivebot/mainframe.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/mainframe.dm rename to code/unused/hivebot/mainframe.dm diff --git a/code/modules/mob/living/silicon/hivebot/say.dm b/code/unused/hivebot/say.dm similarity index 100% rename from code/modules/mob/living/silicon/hivebot/say.dm rename to code/unused/hivebot/say.dm diff --git a/code/modules/mining/machine_craftlathe_unused.dm b/code/unused/mining/machine_craftlathe_unused.dm similarity index 100% rename from code/modules/mining/machine_craftlathe_unused.dm rename to code/unused/mining/machine_craftlathe_unused.dm diff --git a/code/modules/mining/machine_gas_extractor_unused.dm b/code/unused/mining/machine_gas_extractor_unused.dm similarity index 100% rename from code/modules/mining/machine_gas_extractor_unused.dm rename to code/unused/mining/machine_gas_extractor_unused.dm diff --git a/code/modules/mining/machine_purifier_unused.dm b/code/unused/mining/machine_purifier_unused.dm similarity index 100% rename from code/modules/mining/machine_purifier_unused.dm rename to code/unused/mining/machine_purifier_unused.dm diff --git a/code/modules/mining/mine_generator_unused.dm b/code/unused/mining/mine_generator_unused.dm similarity index 100% rename from code/modules/mining/mine_generator_unused.dm rename to code/unused/mining/mine_generator_unused.dm diff --git a/code/modules/mining/rail_unused.dm b/code/unused/mining/rail_unused.dm similarity index 100% rename from code/modules/mining/rail_unused.dm rename to code/unused/mining/rail_unused.dm diff --git a/code/modules/mining/spaceship_builder_unused.dm b/code/unused/mining/spaceship_builder_unused.dm similarity index 100% rename from code/modules/mining/spaceship_builder_unused.dm rename to code/unused/mining/spaceship_builder_unused.dm diff --git a/code/WorkInProgress/experimental/newcombatsystem.dm b/code/unused/newcombatsystem.dm similarity index 100% rename from code/WorkInProgress/experimental/newcombatsystem.dm rename to code/unused/newcombatsystem.dm diff --git a/code/WorkInProgress/optics/beam.dm b/code/unused/optics/beam.dm similarity index 100% rename from code/WorkInProgress/optics/beam.dm rename to code/unused/optics/beam.dm diff --git a/code/WorkInProgress/optics/laser-pointer.dm b/code/unused/optics/laser-pointer.dm similarity index 100% rename from code/WorkInProgress/optics/laser-pointer.dm rename to code/unused/optics/laser-pointer.dm diff --git a/code/WorkInProgress/optics/mirror.dm b/code/unused/optics/mirror.dm similarity index 100% rename from code/WorkInProgress/optics/mirror.dm rename to code/unused/optics/mirror.dm diff --git a/code/WorkInProgress/pda2/base_os.dm b/code/unused/pda2/base_os.dm similarity index 100% rename from code/WorkInProgress/pda2/base_os.dm rename to code/unused/pda2/base_os.dm diff --git a/code/WorkInProgress/pda2/base_program.dm b/code/unused/pda2/base_program.dm similarity index 100% rename from code/WorkInProgress/pda2/base_program.dm rename to code/unused/pda2/base_program.dm diff --git a/code/WorkInProgress/pda2/pda2.dm b/code/unused/pda2/pda2.dm similarity index 100% rename from code/WorkInProgress/pda2/pda2.dm rename to code/unused/pda2/pda2.dm diff --git a/code/WorkInProgress/pda2/record_progs.dm b/code/unused/pda2/record_progs.dm similarity index 100% rename from code/WorkInProgress/pda2/record_progs.dm rename to code/unused/pda2/record_progs.dm diff --git a/code/WorkInProgress/pda2/scanners.dm b/code/unused/pda2/scanners.dm similarity index 100% rename from code/WorkInProgress/pda2/scanners.dm rename to code/unused/pda2/scanners.dm diff --git a/code/WorkInProgress/pda2/smallprogs.dm b/code/unused/pda2/smallprogs.dm similarity index 100% rename from code/WorkInProgress/pda2/smallprogs.dm rename to code/unused/pda2/smallprogs.dm diff --git a/code/game/spacecraft/manufacturing.dm b/code/unused/spacecraft/manufacturing.dm similarity index 100% rename from code/game/spacecraft/manufacturing.dm rename to code/unused/spacecraft/manufacturing.dm diff --git a/code/game/spacecraft/shipcore.dm b/code/unused/spacecraft/shipcore.dm similarity index 100% rename from code/game/spacecraft/shipcore.dm rename to code/unused/spacecraft/shipcore.dm diff --git a/tgstation.dme b/tgstation.dme index 8cc0640dba..5a3c781cf6 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -72,13 +72,12 @@ #define FILE_DIR "code/game/objects/spawners" #define FILE_DIR "code/game/objects/stacks" #define FILE_DIR "code/game/objects/storage" -#define FILE_DIR "code/game/research" -#define FILE_DIR "code/game/spacecraft" #define FILE_DIR "code/game/verbs" #define FILE_DIR "code/js" #define FILE_DIR "code/modules" #define FILE_DIR "code/modules/admin" #define FILE_DIR "code/modules/admin/verbs" +#define FILE_DIR "code/modules/chemical" #define FILE_DIR "code/modules/food" #define FILE_DIR "code/modules/mining" #define FILE_DIR "code/modules/mob" @@ -90,7 +89,6 @@ #define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid" #define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste" #define FILE_DIR "code/modules/mob/living/carbon/alien/larva" -#define FILE_DIR "code/modules/mob/living/carbon/beast" #define FILE_DIR "code/modules/mob/living/carbon/brain" #define FILE_DIR "code/modules/mob/living/carbon/human" #define FILE_DIR "code/modules/mob/living/carbon/metroid" @@ -98,7 +96,6 @@ #define FILE_DIR "code/modules/mob/living/silicon" #define FILE_DIR "code/modules/mob/living/silicon/ai" #define FILE_DIR "code/modules/mob/living/silicon/decoy" -#define FILE_DIR "code/modules/mob/living/silicon/hivebot" #define FILE_DIR "code/modules/mob/living/silicon/pai" #define FILE_DIR "code/modules/mob/living/silicon/robot" #define FILE_DIR "code/modules/mob/new_player" @@ -106,17 +103,21 @@ #define FILE_DIR "code/modules/power/antimatter" #define FILE_DIR "code/modules/power/singularity" #define FILE_DIR "code/modules/power/singularity/particle_accelerator" -#define FILE_DIR "code/modules/virus2" -#define FILE_DIR "code/modules/virus2/Disease2" +#define FILE_DIR "code/modules/research" #define FILE_DIR "code/unused" +#define FILE_DIR "code/unused/beast" +#define FILE_DIR "code/unused/computer2" #define FILE_DIR "code/unused/gamemodes" +#define FILE_DIR "code/unused/hivebot" +#define FILE_DIR "code/unused/mining" +#define FILE_DIR "code/unused/optics" +#define FILE_DIR "code/unused/pda2" +#define FILE_DIR "code/unused/spacecraft" #define FILE_DIR "code/WorkInProgress" -#define FILE_DIR "code/WorkInProgress/computer2" -#define FILE_DIR "code/WorkInProgress/experimental" -#define FILE_DIR "code/WorkInProgress/optics" #define FILE_DIR "code/WorkInProgress/organs" -#define FILE_DIR "code/WorkInProgress/pda2" #define FILE_DIR "code/WorkInProgress/recycling" +#define FILE_DIR "code/WorkInProgress/virus2" +#define FILE_DIR "code/WorkInProgress/virus2/Disease2" #define FILE_DIR "icons" #define FILE_DIR "icons/effects" #define FILE_DIR "icons/misc" @@ -245,7 +246,6 @@ #include "code\defines\mob\living\carbon\monkey.dm" #include "code\defines\mob\living\silicon\ai.dm" #include "code\defines\mob\living\silicon\decoy.dm" -#include "code\defines\mob\living\silicon\hivebot.dm" #include "code\defines\mob\living\silicon\pai.dm" #include "code\defines\mob\living\silicon\robot.dm" #include "code\defines\mob\living\silicon\silicon.dm" @@ -370,6 +370,7 @@ #include "code\game\machinery\biogenerator.dm" #include "code\game\machinery\camera.dm" #include "code\game\machinery\cell_charger.dm" +#include "code\game\machinery\cloning.dm" #include "code\game\machinery\constructable_frame.dm" #include "code\game\machinery\cryo.dm" #include "code\game\machinery\deployable.dm" @@ -398,6 +399,7 @@ #include "code\game\machinery\spaceheater.dm" #include "code\game\machinery\status_display.dm" #include "code\game\machinery\suit_storage_unit.dm" +#include "code\game\machinery\syndicatebeacon.dm" #include "code\game\machinery\teleporter.dm" #include "code\game\machinery\turrets.dm" #include "code\game\machinery\vending.dm" @@ -564,6 +566,7 @@ #include "code\game\objects\items\robot_parts.dm" #include "code\game\objects\items\trash.dm" #include "code\game\objects\items\weapons\AI_modules.dm" +#include "code\game\objects\items\weapons\cameras.dm" #include "code\game\objects\items\weapons\cards_ids.dm" #include "code\game\objects\items\weapons\cigs_lighters.dm" #include "code\game\objects\items\weapons\clown_items.dm" @@ -614,19 +617,6 @@ #include "code\game\objects\storage\kit.dm" #include "code\game\objects\storage\storage.dm" #include "code\game\objects\storage\toolbox.dm" -#include "code\game\research\circuitprinter.dm" -#include "code\game\research\designs.dm" -#include "code\game\research\destructive_analyzer.dm" -#include "code\game\research\protolathe.dm" -#include "code\game\research\rd-readme.dm" -#include "code\game\research\rdconsole.dm" -#include "code\game\research\rdmachines.dm" -#include "code\game\research\research.dm" -#include "code\game\research\server.dm" -#include "code\game\spacecraft\manufacturing.dm" -#include "code\game\spacecraft\shipcore.dm" -#include "code\game\spacecraft\syndicatebeacon.dm" -#include "code\game\verbs\ai_lockdown.dm" #include "code\game\verbs\AI_status.dm" #include "code\game\verbs\authorize.dm" #include "code\game\verbs\checkkarma.dm" @@ -642,6 +632,7 @@ #include "code\modules\admin\create_mob.dm" #include "code\modules\admin\create_object.dm" #include "code\modules\admin\create_turf.dm" +#include "code\modules\admin\NewBan.dm" #include "code\modules\admin\newbanjob.dm" #include "code\modules\admin\verbs\adminhelp.dm" #include "code\modules\admin\verbs\adminjump.dm" @@ -663,26 +654,25 @@ #include "code\modules\admin\verbs\striketeam_syndicate.dm" #include "code\modules\admin\verbs\ticklag.dm" #include "code\modules\admin\verbs\tripAI.dm" +#include "code\modules\chemical\Chemistry-Holder.dm" +#include "code\modules\chemical\Chemistry-Machinery.dm" +#include "code\modules\chemical\Chemistry-Reagents.dm" +#include "code\modules\chemical\Chemistry-Recipes.dm" +#include "code\modules\chemical\Chemistry-Tools.dm" #include "code\modules\food\food.dm" #include "code\modules\food\recipes_microwave.dm" #include "code\modules\mining\datum_processing_recipe.dm" -#include "code\modules\mining\machine_craftlathe_unused.dm" -#include "code\modules\mining\machine_gas_extractor_unused.dm" #include "code\modules\mining\machine_input_output_plates.dm" #include "code\modules\mining\machine_processing.dm" -#include "code\modules\mining\machine_purifier_unused.dm" #include "code\modules\mining\machine_stacking.dm" #include "code\modules\mining\machine_unloading.dm" #include "code\modules\mining\mine_areas.dm" -#include "code\modules\mining\mine_generator_unused.dm" #include "code\modules\mining\mine_items.dm" #include "code\modules\mining\mine_turfs.dm" #include "code\modules\mining\mint.dm" #include "code\modules\mining\money_bag.dm" #include "code\modules\mining\ores_materials_coins.dm" -#include "code\modules\mining\rail_unused.dm" #include "code\modules\mining\satchel_ore_boxdm.dm" -#include "code\modules\mining\spaceship_builder_unused.dm" #include "code\modules\mob\login.dm" #include "code\modules\mob\logout.dm" #include "code\modules\mob\mob.dm" @@ -702,7 +692,7 @@ #include "code\modules\mob\living\carbon\alien\humanoid\emote.dm" #include "code\modules\mob\living\carbon\alien\humanoid\hud.dm" #include "code\modules\mob\living\carbon\alien\humanoid\humanoid.dm" -#include "code\modules\mob\living\carbon\alien\humanoid\life_new.dm" +#include "code\modules\mob\living\carbon\alien\humanoid\life.dm" #include "code\modules\mob\living\carbon\alien\humanoid\login.dm" #include "code\modules\mob\living\carbon\alien\humanoid\queen.dm" #include "code\modules\mob\living\carbon\alien\humanoid\caste\drone.dm" @@ -715,9 +705,6 @@ #include "code\modules\mob\living\carbon\alien\larva\life.dm" #include "code\modules\mob\living\carbon\alien\larva\login.dm" #include "code\modules\mob\living\carbon\alien\larva\powers.dm" -#include "code\modules\mob\living\carbon\beast\beast.dm" -#include "code\modules\mob\living\carbon\beast\bodypart.dm" -#include "code\modules\mob\living\carbon\beast\death.dm" #include "code\modules\mob\living\carbon\brain\brain.dm" #include "code\modules\mob\living\carbon\brain\death.dm" #include "code\modules\mob\living\carbon\brain\hud.dm" @@ -731,7 +718,6 @@ #include "code\modules\mob\living\carbon\human\human.dm" #include "code\modules\mob\living\carbon\human\life.dm" #include "code\modules\mob\living\carbon\human\login.dm" -#include "code\modules\mob\living\carbon\human\savefile.dm" #include "code\modules\mob\living\carbon\human\say.dm" #include "code\modules\mob\living\carbon\human\whisper.dm" #include "code\modules\mob\living\carbon\metroid\death.dm" @@ -767,16 +753,6 @@ #include "code\modules\mob\living\silicon\decoy\death.dm" #include "code\modules\mob\living\silicon\decoy\decoy.dm" #include "code\modules\mob\living\silicon\decoy\life.dm" -#include "code\modules\mob\living\silicon\hivebot\death.dm" -#include "code\modules\mob\living\silicon\hivebot\emote.dm" -#include "code\modules\mob\living\silicon\hivebot\examine.dm" -#include "code\modules\mob\living\silicon\hivebot\hive_modules.dm" -#include "code\modules\mob\living\silicon\hivebot\hivebot.dm" -#include "code\modules\mob\living\silicon\hivebot\hud.dm" -#include "code\modules\mob\living\silicon\hivebot\life.dm" -#include "code\modules\mob\living\silicon\hivebot\login.dm" -#include "code\modules\mob\living\silicon\hivebot\mainframe.dm" -#include "code\modules\mob\living\silicon\hivebot\say.dm" #include "code\modules\mob\living\silicon\pai\death.dm" #include "code\modules\mob\living\silicon\pai\examine.dm" #include "code\modules\mob\living\silicon\pai\hud.dm" @@ -800,6 +776,7 @@ #include "code\modules\mob\new_player\hud.dm" #include "code\modules\mob\new_player\new_player.dm" #include "code\modules\mob\new_player\preferences.dm" +#include "code\modules\mob\new_player\savefile.dm" #include "code\modules\power\apc.dm" #include "code\modules\power\cable.dm" #include "code\modules\power\cell.dm" @@ -830,37 +807,33 @@ #include "code\modules\power\singularity\particle_accelerator\particle_control.dm" #include "code\modules\power\singularity\particle_accelerator\particle_emitter.dm" #include "code\modules\power\singularity\particle_accelerator\particle_power.dm" -#include "code\modules\virus2\Prob.dm" -#include "code\modules\virus2\Disease2\analyser.dm" -#include "code\modules\virus2\Disease2\base.dm" -#include "code\modules\virus2\Disease2\biohazard destroyer.dm" -#include "code\modules\virus2\Disease2\cureimplanter.dm" -#include "code\modules\virus2\Disease2\curer.dm" -#include "code\modules\virus2\Disease2\diseasesplicer.dm" -#include "code\modules\virus2\Disease2\dishincubator.dm" -#include "code\modules\virus2\Disease2\isolator.dm" -#include "code\modules\virus2\Disease2\monkeydispensor.dm" -#include "code\unused\vehicle.dm" -#include "code\unused\gamemodes\monkey.dm" -#include "code\WorkInProgress\BrokenInhands.dm" +#include "code\modules\research\circuitprinter.dm" +#include "code\modules\research\designs.dm" +#include "code\modules\research\destructive_analyzer.dm" +#include "code\modules\research\message_server.dm" +#include "code\modules\research\protolathe.dm" +#include "code\modules\research\rd-readme.dm" +#include "code\modules\research\rdconsole.dm" +#include "code\modules\research\rdmachines.dm" +#include "code\modules\research\research.dm" +#include "code\modules\research\server.dm" #include "code\WorkInProgress\buildmode.dm" -#include "code\WorkInProgress\Cameras.dm" -#include "code\WorkInProgress\Chemistry-Holder.dm" -#include "code\WorkInProgress\Chemistry-Machinery.dm" -#include "code\WorkInProgress\Chemistry-Reagents.dm" -#include "code\WorkInProgress\Chemistry-Recipes.dm" -#include "code\WorkInProgress\Chemistry-Tools.dm" -#include "code\WorkInProgress\cloning.dm" #include "code\WorkInProgress\explosion_particles.dm" -#include "code\WorkInProgress\message_server.dm" -#include "code\WorkInProgress\NewBan.dm" -#include "code\WorkInProgress\organs\implants.dm" #include "code\WorkInProgress\organs\organs.dm" #include "code\WorkInProgress\recycling\conveyor.dm" #include "code\WorkInProgress\recycling\disposal-construction.dm" #include "code\WorkInProgress\recycling\disposal.dm" -#include "code\WorkInProgress\recycling\scrap.dm" #include "code\WorkInProgress\recycling\sortingmachinery.dm" +#include "code\WorkInProgress\virus2\Prob.dm" +#include "code\WorkInProgress\virus2\Disease2\analyser.dm" +#include "code\WorkInProgress\virus2\Disease2\base.dm" +#include "code\WorkInProgress\virus2\Disease2\biohazard destroyer.dm" +#include "code\WorkInProgress\virus2\Disease2\cureimplanter.dm" +#include "code\WorkInProgress\virus2\Disease2\curer.dm" +#include "code\WorkInProgress\virus2\Disease2\diseasesplicer.dm" +#include "code\WorkInProgress\virus2\Disease2\dishincubator.dm" +#include "code\WorkInProgress\virus2\Disease2\isolator.dm" +#include "code\WorkInProgress\virus2\Disease2\monkeydispensor.dm" #include "interface\skin.dmf" #include "maps\tgstation.2.0.8.dmm" // END_INCLUDE