From a69a4fbc462874c244c5f010eb40e36cf270aad1 Mon Sep 17 00:00:00 2001 From: "mport2004@gmail.com" Date: Tue, 4 Oct 2011 03:48:45 +0000 Subject: [PATCH] Fixed a rechargestation runtime. Added a few misc areas. Changed a number in the prefs that might help with less assistants. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2328 316c924e-a436-60f5-8080-3fe189b3f50e --- code/defines/area/Space Station 13 areas.dm | 27 +++ code/game/machinery/portable_turret.dm | 12 +- code/game/machinery/rechargestation.dm | 71 +++--- code/game/objects/structures.dm | 244 ++++++++++---------- code/modules/mob/new_player/new_player.dm | 6 +- code/modules/mob/new_player/preferences.dm | 60 +---- 6 files changed, 201 insertions(+), 219 deletions(-) diff --git a/code/defines/area/Space Station 13 areas.dm b/code/defines/area/Space Station 13 areas.dm index 9e7d56b980..f22383c661 100644 --- a/code/defines/area/Space Station 13 areas.dm +++ b/code/defines/area/Space Station 13 areas.dm @@ -1167,6 +1167,33 @@ proc/process_ghost_teleport_locs() name = "AI Main New" icon_state = "storage" + + +//Misc + + + +/area/wreck/ai + name = "AI Chamber" + icon_state = "ai" + +/area/wreck/main + name = "Wreck" + icon_state = "storage" + +/area/wreck/engineering + name = "Power Room" + icon_state = "engine" + +/area/wreck/bridge + name = "Bridge" + icon_state = "bridge" + +/area/generic + name = "Unknown" + icon_state = "storage" + + ///////////////////////////////////////////////////////////////////// /* Lists of areas to be used with is_type_in_list. diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 470ab8518d..43f4362dda 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -923,4 +923,14 @@ Neutralize All Unidentified Life Signs: []
"}, spawn() sleep(30) Parent_Turret.attacked = 0 - ..() \ No newline at end of file + ..() + + + + +/obj/machinery/porta_turret/stationary + emagged = 1 + + New() + installation = new/obj/item/weapon/gun/energy/laser(src.loc) + ..() diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index d04a51e2c8..bfd9e39209 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -75,43 +75,44 @@ restock_modules() if(src.occupant) - if (istype(occupant, /mob/living/silicon/robot)) + if(istype(occupant, /mob/living/silicon/robot)) var/mob/living/silicon/robot/R = occupant - var/list/um = R.contents|R.module.modules - // ^ makes sinle list of active (R.contents) and inactive modules (R.module.modules) - for(var/obj/O in um) - // Engineering - if(istype(O,/obj/item/weapon/rcd)) - if(O:matter < 30) - O:matter += 1 - if(istype(O,/obj/item/stack/sheet/metal) || istype(O,/obj/item/stack/sheet/rglass) || istype(O,/obj/item/weapon/cable_coil)) - if(O:amount < 50) - O:amount += 1 - // Security - if(istype(O,/obj/item/device/flash)) - if(O:broken) - O:broken = 0 - if(istype(O,/obj/item/weapon/gun/energy/taser/cyborg)) - if(O:power_supply.charge < O:power_supply.maxcharge) - O:power_supply.give(100) - if(istype(O,/obj/item/weapon/melee/baton)) - if(O:charges < 10) - O:charges += 1 - //Service - if(istype(O,/obj/item/weapon/reagent_containers/food/condiment/enzyme)) - if(O.reagents.get_reagent_amount("enzyme") < 50) - O.reagents.add_reagent("enzyme", 1) - //Medical - if(istype(O,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline)) - if(O.reagents.get_reagent_amount("inaprovaline") < 30) - O.reagents.add_reagent("inaprovaline", 1) - if(istype(O,/obj/item/weapon/reagent_containers/glass/bottle/antitoxin)) - if(O.reagents.get_reagent_amount("anti_toxin") < 30) - O.reagents.add_reagent("anti_toxin", 1) + if(R.module && R.module.modules) + var/list/um = R.contents|R.module.modules + // ^ makes sinle list of active (R.contents) and inactive modules (R.module.modules) + for(var/obj/O in um) + // Engineering + if(istype(O,/obj/item/weapon/rcd)) + if(O:matter < 30) + O:matter += 1 + if(istype(O,/obj/item/stack/sheet/metal) || istype(O,/obj/item/stack/sheet/rglass) || istype(O,/obj/item/weapon/cable_coil)) + if(O:amount < 50) + O:amount += 1 + // Security + if(istype(O,/obj/item/device/flash)) + if(O:broken) + O:broken = 0 + if(istype(O,/obj/item/weapon/gun/energy/taser/cyborg)) + if(O:power_supply.charge < O:power_supply.maxcharge) + O:power_supply.give(100) + if(istype(O,/obj/item/weapon/melee/baton)) + if(O:charges < 10) + O:charges += 1 + //Service + if(istype(O,/obj/item/weapon/reagent_containers/food/condiment/enzyme)) + if(O.reagents.get_reagent_amount("enzyme") < 50) + O.reagents.add_reagent("enzyme", 1) + //Medical + if(istype(O,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline)) + if(O.reagents.get_reagent_amount("inaprovaline") < 30) + O.reagents.add_reagent("inaprovaline", 1) + if(istype(O,/obj/item/weapon/reagent_containers/glass/bottle/antitoxin)) + if(O.reagents.get_reagent_amount("anti_toxin") < 30) + O.reagents.add_reagent("anti_toxin", 1) - if(R) - if(R.module) - R.module.respawn_consumable(R) + if(R) + if(R.module) + R.module.respawn_consumable(R) verb diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 64a19d330f..aef7dff3fe 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -1,140 +1,142 @@ obj/structure icon = 'structures.dmi' - girder - icon_state = "girder" - anchored = 1 - density = 1 - var/state = 0 +/obj/structure/girder + icon_state = "girder" + anchored = 1 + density = 1 + var/state = 0 - displaced - icon_state = "displaced" - anchored = 0 + attackby(obj/item/W as obj, mob/user as mob) + if(istype(W, /obj/item/weapon/wrench) && state == 0 && anchored && !istype(src,/obj/structure/girder/displaced)) + playsound(src.loc, 'Ratchet.ogg', 100, 1) + user << "\blue Now disassembling the girder" + if(do_after(user,40)) + user << "\blue You dissasembled the girder!" + new /obj/item/stack/sheet/metal(get_turf(src)) + del(src) - reinforced - icon_state = "reinforced" - state = 2 - -/obj/structure/girder/attackby(obj/item/W as obj, mob/user as mob) - if(istype(W, /obj/item/weapon/wrench) && state == 0 && anchored && !istype(src,/obj/structure/girder/displaced)) - playsound(src.loc, 'Ratchet.ogg', 100, 1) - user << "\blue Now disassembling the girder" - if(do_after(user,40)) - user << "\blue You dissasembled the girder!" + else if(istype(W, /obj/item/weapon/pickaxe/plasmacutter)) + user << "\blue Now slicing apart the girder" + if(do_after(user,30)) + user << "\blue You slice apart the girder!" new /obj/item/stack/sheet/metal(get_turf(src)) del(src) - else if(istype(W, /obj/item/weapon/pickaxe/plasmacutter)) - user << "\blue Now slicing apart the girder" - if(do_after(user,30)) - user << "\blue You slice apart the girder!" - new /obj/item/stack/sheet/metal(get_turf(src)) - del(src) - - else if(istype(W, /obj/item/weapon/pickaxe/diamonddrill)) - user << "\blue You drill through the girder!" - new /obj/item/stack/sheet/metal(get_turf(src)) - del(src) - - else if((istype(W, /obj/item/stack/sheet/metal)) && (W:amount >= 2) && istype(src,/obj/structure/girder/displaced)) - W:use(2) - user << "\blue You create a false wall! Push on it to open or close the passage." - new /obj/structure/falsewall (src.loc) - del(src) - - else if(istype(W, /obj/item/stack/sheet/r_metal) && istype(src,/obj/structure/girder/displaced)) - W:use(2) - user << "\blue You create a false r wall! Push on it to open or close the passage." - new /obj/structure/falserwall (src.loc) - del(src) - - else if(istype(W, /obj/item/weapon/screwdriver) && state == 2 && istype(src,/obj/structure/girder/reinforced)) - playsound(src.loc, 'Screwdriver.ogg', 100, 1) - user << "\blue Now unsecuring support struts" - if(do_after(user,40)) - user << "\blue You unsecured the support struts!" - state = 1 - - else if(istype(W, /obj/item/weapon/wirecutters) && istype(src,/obj/structure/girder/reinforced) && state == 1) - playsound(src.loc, 'Wirecutter.ogg', 100, 1) - user << "\blue Now removing support struts" - if(do_after(user,40)) - user << "\blue You removed the support struts!" - new/obj/structure/girder( src.loc ) + else if(istype(W, /obj/item/weapon/pickaxe/diamonddrill)) + user << "\blue You drill through the girder!" + new /obj/item/stack/sheet/metal(get_turf(src)) del(src) - else if(istype(W, /obj/item/weapon/crowbar) && state == 0 && anchored ) - playsound(src.loc, 'Crowbar.ogg', 100, 1) - user << "\blue Now dislodging the girder" - if(do_after(user, 40)) - user << "\blue You dislodged the girder!" - new/obj/structure/girder/displaced( src.loc ) - del(src) - - else if(istype(W, /obj/item/weapon/wrench) && state == 0 && !anchored ) - playsound(src.loc, 'Ratchet.ogg', 100, 1) - user << "\blue Now securing the girder" - if(get_turf(user, 40)) - user << "\blue You secured the girder!" - new/obj/structure/girder( src.loc ) - del(src) - - else if((istype(W, /obj/item/stack/sheet/metal)) && (W:amount >= 2)) - user << "\blue Now adding plating..." - if (do_after(user,40)) - user << "\blue You added the plating!" - var/turf/Tsrc = get_turf(src) - Tsrc.ReplaceWithWall() + else if((istype(W, /obj/item/stack/sheet/metal)) && (W:amount >= 2) && istype(src,/obj/structure/girder/displaced)) W:use(2) + user << "\blue You create a false wall! Push on it to open or close the passage." + new /obj/structure/falsewall (src.loc) del(src) + + else if(istype(W, /obj/item/stack/sheet/r_metal) && istype(src,/obj/structure/girder/displaced)) + W:use(2) + user << "\blue You create a false r wall! Push on it to open or close the passage." + new /obj/structure/falserwall (src.loc) + del(src) + + else if(istype(W, /obj/item/weapon/screwdriver) && state == 2 && istype(src,/obj/structure/girder/reinforced)) + playsound(src.loc, 'Screwdriver.ogg', 100, 1) + user << "\blue Now unsecuring support struts" + if(do_after(user,40)) + user << "\blue You unsecured the support struts!" + state = 1 + + else if(istype(W, /obj/item/weapon/wirecutters) && istype(src,/obj/structure/girder/reinforced) && state == 1) + playsound(src.loc, 'Wirecutter.ogg', 100, 1) + user << "\blue Now removing support struts" + if(do_after(user,40)) + user << "\blue You removed the support struts!" + new/obj/structure/girder( src.loc ) + del(src) + + else if(istype(W, /obj/item/weapon/crowbar) && state == 0 && anchored ) + playsound(src.loc, 'Crowbar.ogg', 100, 1) + user << "\blue Now dislodging the girder" + if(do_after(user, 40)) + user << "\blue You dislodged the girder!" + new/obj/structure/girder/displaced( src.loc ) + del(src) + + else if(istype(W, /obj/item/weapon/wrench) && state == 0 && !anchored ) + playsound(src.loc, 'Ratchet.ogg', 100, 1) + user << "\blue Now securing the girder" + if(get_turf(user, 40)) + user << "\blue You secured the girder!" + new/obj/structure/girder( src.loc ) + del(src) + + else if((istype(W, /obj/item/stack/sheet/metal)) && (W:amount >= 2)) + user << "\blue Now adding plating..." + if (do_after(user,40)) + user << "\blue You added the plating!" + var/turf/Tsrc = get_turf(src) + Tsrc.ReplaceWithWall() + W:use(2) + del(src) + return + + else if (istype(W, /obj/item/stack/sheet/r_metal)) + if (src.icon_state == "reinforced") //Time to finalize! + user << "\blue Now finalising reinforced wall." + if(do_after(user, 50)) + user << "\blue Wall fully reinforced!" + var/turf/Tsrc = get_turf(src) + Tsrc.ReplaceWithRWall() + if (W) + W:use(1) + del(src) + return + else + user << "\blue Now reinforcing girders" + if (do_after(user,60)) + user << "\blue Girders reinforced!" + W:use(1) + new/obj/structure/girder/reinforced( src.loc ) + del(src) + return + else + ..() + + + blob_act() + if(prob(40)) + del(src) + + + ex_act(severity) + switch(severity) + if(1.0) + del(src) + return + if(2.0) + if (prob(30)) + var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) + new remains(loc) + del(src) + return + if(3.0) + if (prob(5)) + var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) + new remains(loc) + del(src) + return + else return - else if (istype(W, /obj/item/stack/sheet/r_metal)) - if (src.icon_state == "reinforced") //Time to finalize! - user << "\blue Now finalising reinforced wall." - if(do_after(user, 50)) - user << "\blue Wall fully reinforced!" - var/turf/Tsrc = get_turf(src) - Tsrc.ReplaceWithRWall() - if (W) - W:use(1) - del(src) - return - else - user << "\blue Now reinforcing girders" - if (do_after(user,60)) - user << "\blue Girders reinforced!" - W:use(1) - new/obj/structure/girder/reinforced( src.loc ) - del(src) - return - else - ..() -/obj/structure/girder/blob_act() - if(prob(40)) - del(src) - -/obj/structure/girder/ex_act(severity) - switch(severity) - if(1.0) - del(src) - return - if(2.0) - if (prob(30)) - var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) - new remains(loc) - del(src) - return - if(3.0) - if (prob(5)) - var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) - new remains(loc) - del(src) - return - else - return +/obj/structure/girder/displaced + icon_state = "displaced" + anchored = 0 +/obj/structure/girder/reinforced + icon_state = "reinforced" + state = 2 // LATTICE diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 7ae4bc21da..4d0b9cf82e 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -37,11 +37,11 @@ mob/new_player if(!preferences.savefile_load(src, 0)) preferences.ShowChoices(src) - if (!client.changes) + if(!client.changes) changes() else var/lastchangelog = length('changelog.html') - if (!client.changes && preferences.lastchangelog!=lastchangelog) + if(!client.changes && preferences.lastchangelog!=lastchangelog) changes() preferences.lastchangelog = lastchangelog preferences.savefile_save(src) @@ -52,7 +52,7 @@ mob/new_player Quick note: local dream daemon instances don't seem to cache images right. Might be a local problem with my machine but it's annoying nontheless. */ - if (client) + if(client) //load the PDA iconset into the client src << browse_rsc('pda_atmos.png') src << browse_rsc('pda_back.png') diff --git a/code/modules/mob/new_player/preferences.dm b/code/modules/mob/new_player/preferences.dm index e7d5cf283c..32556a78d6 100644 --- a/code/modules/mob/new_player/preferences.dm +++ b/code/modules/mob/new_player/preferences.dm @@ -69,7 +69,7 @@ datum/preferences New() randomize_name() for(var/n in occupation) - n=1 + n=0 ..() //The mob should have a gender you want before running this proc. @@ -586,26 +586,6 @@ datum/preferences if ("random") randomize_hair_color("hair") -/* - if (link_tags["r_hair"]) - var/new_component = input(user, "Please select red hair component: 1-255", "Character Generation") as text - - if (new_component) - r_hair = max(min(round(text2num(new_component)), 255), 1) - - if (link_tags["g_hair"]) - var/new_component = input(user, "Please select green hair component: 1-255", "Character Generation") as text - - if (new_component) - g_hair = max(min(round(text2num(new_component)), 255), 1) - - if (link_tags["b_hair"]) - var/new_component = input(user, "Please select blue hair component: 1-255", "Character Generation") as text - - if (new_component) - b_hair = max(min(round(text2num(new_component)), 255), 1) -*/ - if (link_tags["facial"]) switch(link_tags["facial"]) if ("input") @@ -617,25 +597,6 @@ datum/preferences if ("random") randomize_hair_color("facial") -/* - if (link_tags["r_facial"]) - var/new_component = input(user, "Please select red facial component: 1-255", "Character Generation") as text - - if (new_component) - r_facial = max(min(round(text2num(new_component)), 255), 1) - - if (link_tags["g_facial"]) - var/new_component = input(user, "Please select green facial component: 1-255", "Character Generation") as text - - if (new_component) - g_facial = max(min(round(text2num(new_component)), 255), 1) - - if (link_tags["b_facial"]) - var/new_component = input(user, "Please select blue facial component: 1-255", "Character Generation") as text - - if (new_component) - b_facial = max(min(round(text2num(new_component)), 255), 1) -*/ if (link_tags["eyes"]) switch(link_tags["eyes"]) if ("input") @@ -647,25 +608,6 @@ datum/preferences if ("random") randomize_eyes_color() -/* - if (link_tags["r_eyes"]) - var/new_component = input(user, "Please select red eyes component: 1-255", "Character Generation") as text - - if (new_component) - r_eyes = max(min(round(text2num(new_component)), 255), 1) - - if (link_tags["g_eyes"]) - var/new_component = input(user, "Please select green eyes component: 1-255", "Character Generation") as text - - if (new_component) - g_eyes = max(min(round(text2num(new_component)), 255), 1) - - if (link_tags["b_eyes"]) - var/new_component = input(user, "Please select blue eyes component: 1-255", "Character Generation") as text - - if (new_component) - b_eyes = max(min(round(text2num(new_component)), 255), 1) -*/ if (link_tags["s_tone"]) switch(link_tags["s_tone"]) if ("random")