From 7ac7ecb27729523279454bccc0db63a61021ecc3 Mon Sep 17 00:00:00 2001 From: Incoming Date: Thu, 21 Aug 2014 20:05:41 -0400 Subject: [PATCH 001/124] Summon Events Initial Commit: See the pull for complete details --- code/datums/spells/mind_transfer.dm | 4 +- code/game/gamemodes/gameticker.dm | 5 + code/game/gamemodes/wizard/rightandwrong.dm | 26 ++++- code/game/gamemodes/wizard/spellbook.dm | 10 +- .../objects/items/weapons/cigs_lighters.dm | 6 ++ code/modules/events/event_manager.dm | 3 +- code/modules/events/wizard/aid.dm | 46 +++++++++ code/modules/events/wizard/blobies.dm | 11 ++ code/modules/events/wizard/curseditems.dm | 43 ++++++++ .../modules/events/wizard/departmentrevolt.dm | 47 +++++++++ code/modules/events/wizard/fakeexplosion.dm | 12 +++ code/modules/events/wizard/ghost.dm | 27 +++++ code/modules/events/wizard/greentext.dm | 81 +++++++++++++++ code/modules/events/wizard/imposter.dm | 51 ++++++++++ code/modules/events/wizard/invincible.dm | 12 +++ code/modules/events/wizard/lava.dm | 42 ++++++++ code/modules/events/wizard/petsplosion.dm | 17 ++++ code/modules/events/wizard/race.dm | 22 ++++ code/modules/events/wizard/shuffle.dm | 96 ++++++++++++++++++ code/modules/events/wizard/summons.dm | 25 +++++ code/modules/mob/dead/observer/observer.dm | 38 ++++++- icons/obj/wizard.dmi | Bin 8879 -> 9130 bytes tgstation.dme | 14 +++ 23 files changed, 629 insertions(+), 9 deletions(-) create mode 100644 code/modules/events/wizard/aid.dm create mode 100644 code/modules/events/wizard/blobies.dm create mode 100644 code/modules/events/wizard/curseditems.dm create mode 100644 code/modules/events/wizard/departmentrevolt.dm create mode 100644 code/modules/events/wizard/fakeexplosion.dm create mode 100644 code/modules/events/wizard/ghost.dm create mode 100644 code/modules/events/wizard/greentext.dm create mode 100644 code/modules/events/wizard/imposter.dm create mode 100644 code/modules/events/wizard/invincible.dm create mode 100644 code/modules/events/wizard/lava.dm create mode 100644 code/modules/events/wizard/petsplosion.dm create mode 100644 code/modules/events/wizard/race.dm create mode 100644 code/modules/events/wizard/shuffle.dm create mode 100644 code/modules/events/wizard/summons.dm diff --git a/code/datums/spells/mind_transfer.dm b/code/datums/spells/mind_transfer.dm index 586fd7a2700..0c8032c9b7e 100644 --- a/code/datums/spells/mind_transfer.dm +++ b/code/datums/spells/mind_transfer.dm @@ -18,7 +18,7 @@ Urist: I don't feel like figuring out how you store object spells so I'm leaving Make sure spells that are removed from spell_list are actually removed and deleted when mind transfering. Also, you never added distance checking after target is selected. I've went ahead and did that. */ -/obj/effect/proc_holder/spell/targeted/mind_transfer/cast(list/targets,mob/user = usr) +/obj/effect/proc_holder/spell/targeted/mind_transfer/cast(list/targets,mob/user = usr, distanceoverride) if(!targets.len) user << "No mind found." return @@ -29,7 +29,7 @@ Also, you never added distance checking after target is selected. I've went ahea var/mob/living/target = targets[1] - if(!(target in oview(range)))//If they are not in overview after selection. Do note that !() is necessary for in to work because ! takes precedence over it. + if(!(target in oview(range)) && !distanceoverride)//If they are not in overview after selection. Do note that !() is necessary for in to work because ! takes precedence over it. user << "They are too far away!" return diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index 55357a20be6..48bfd7d9fe5 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -198,6 +198,11 @@ var/round_start_time = 0 world << sound('sound/effects/explosionfar.ogg') flick("station_intact_fade_red",cinematic) cinematic.icon_state = "summary_nukefail" + if("fake") //The round isn't over, we're just freaking people out for fun + flick("intro_nuke",cinematic) + sleep(35) + world << sound('sound/items/bikehorn.ogg') + flick("summary_selfdes",cinematic) else flick("intro_nuke",cinematic) sleep(35) diff --git a/code/game/gamemodes/wizard/rightandwrong.dm b/code/game/gamemodes/wizard/rightandwrong.dm index 1cc217b188f..c03b2fae173 100644 --- a/code/game/gamemodes/wizard/rightandwrong.dm +++ b/code/game/gamemodes/wizard/rightandwrong.dm @@ -1,4 +1,4 @@ - +//In this file: Summon Magic/Summon Guns/Summon Events /mob/proc/rightandwrong(var/summon_type) //0 = Summon Guns, 1 = Summon Magic var/list/gunslist = list("taser","egun","laser","revolver","detective","smg","nuclear","deagle","gyrojet","pulse","suppressed","cannon","doublebarrel","shotgun","combatshotgun","mateba","smg","uzi","crossbow","saw") @@ -129,4 +129,26 @@ new /obj/item/weapon/antag_spawner/contract(get_turf(H)) if("staffchaos") new /obj/item/weapon/gun/magic/staff/chaos(get_turf(H)) - H << "You suddenly feel lucky." \ No newline at end of file + H << "You suddenly feel lucky." + +/mob/proc/summonevents() + if(events) //if there isn't something is very wrong + if(!events.wizardmode) //lets get this party started + events.control = list() //out with the old + for(var/type in typesof(/datum/round_event_control/wizard) - /datum/round_event_control/wizard) //in with the new + var/datum/round_event_control/wizard/W = new type() + if(!W.typepath) + continue //don't want this one! leave it for the garbage collector + events.control += W //add it to the list of all events (controls) + events.frequency_lower = 600 //1 minute lower bound + events.frequency_upper = 3000 //5 minutes upper bound + events.wizardmode = 1 + events.reschedule() + + else //Speed it up + events.frequency_lower = round(events.frequency_lower * 0.8) //1 minute | 48 seconds | 34.8 seconds | 30.7 seconds | 24.6 seconds + events.frequency_upper = round(events.frequency_upper * 0.6) //5 minutes | 3 minutes | 1 minute 48 seconds | 1 minute 4.8 seconds | 38.9 seconds + if(events.frequency_upper < events.frequency_lower) + events.frequency_upper = events.frequency_lower //this can't happen unless somehow multiple spellbooks are used, but just in case + + events.reschedule() \ No newline at end of file diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index 1c093893398..a03dfbded4d 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -112,6 +112,9 @@ dat += "Summon Magic (One time use, global spell)
" dat += "Share the wonders of magic with the crew and show them why they aren't to be trusted with it at the same time.
" + dat += "Summon Events (One time use, persistent global spell)
" + dat += "Give murphy's law a little push and replace all events with special wizard ones that will confound and confuse everyone. Multiple castings increase the rate of these events.
" + dat += "
" dat += "Return
" @@ -196,7 +199,7 @@ uses-- /* */ - var/list/available_spells = list(magicmissile = "Magic Missile", fireball = "Fireball", disintegrate = "Disintegrate", disabletech = "Disable Tech", smoke = "Smoke", blind = "Blind", mindswap = "Mind Transfer", forcewall = "Forcewall", blink = "Blink", teleport = "Teleport", mutate = "Mutate", etherealjaunt = "Ethereal Jaunt", knock = "Knock", horseman = "Curse of the Horseman", fleshtostone = "Flesh to Stone", summonguns = "Summon Guns", summonmagic = "Summon Magic", staffchange = "Staff of Change", soulstone = "Six Soul Stone Shards and the spell Artificer", armor = "Mastercrafted Armor Set", staffanimate = "Staff of Animation", staffchaos = "Staff of Chaos", staffdoor = "Staff of Door Creation", wands = "Wand Assortment") + var/list/available_spells = list(magicmissile = "Magic Missile", fireball = "Fireball", disintegrate = "Disintegrate", disabletech = "Disable Tech", smoke = "Smoke", blind = "Blind", mindswap = "Mind Transfer", forcewall = "Forcewall", blink = "Blink", teleport = "Teleport", mutate = "Mutate", etherealjaunt = "Ethereal Jaunt", knock = "Knock", horseman = "Curse of the Horseman", fleshtostone = "Flesh to Stone", summonguns = "Summon Guns", summonmagic = "Summon Magic", summonevents = "Summon Events", staffchange = "Staff of Change", soulstone = "Six Soul Stone Shards and the spell Artificer", armor = "Mastercrafted Armor Set", staffanimate = "Staff of Animation", staffchaos = "Staff of Chaos", staffdoor = "Staff of Door Creation", wands = "Wand Assortment") var/already_knows = 0 for(var/obj/effect/proc_holder/spell/aspell in H.mind.spell_list) if(available_spells[href_list["spell_choice"]] == initial(aspell.name)) @@ -300,6 +303,11 @@ H.rightandwrong(1) max_uses-- temp = "You have cast summon magic." + if("summonevents") + feedback_add_details("wizard_spell_learned","SE") //please do not change the abbreviation to keep data processing consistent. Add a unique id to any new spells + H.summonevents() + max_uses-- + temp = "You have cast summon events." if("staffchange") feedback_add_details("wizard_spell_learned","ST") //please do not change the abbreviation to keep data processing consistent. Add a unique id to any new spells new /obj/item/weapon/gun/magic/staff/change(get_turf(H)) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 23243aef5cd..a848cb4dc3f 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -269,6 +269,12 @@ CIGARETTE PACKETS ARE IN FANCY.DM src.pixel_x = rand(-5.0, 5) src.pixel_y = rand(-5.0, 5) +/obj/item/clothing/mask/cigarette/rollie/trippy/New() + ..() + reagents.add_reagent("mushroomhallucinogen", 50) + light() + //for(var/mob/M in player_list) M << 'sound/misc/Smoke_Weed_Everyday.ogg' + /obj/item/weapon/cigbutt/roach name = "roach" diff --git a/code/modules/events/event_manager.dm b/code/modules/events/event_manager.dm index b41e08d2d0c..50670b5e44f 100644 --- a/code/modules/events/event_manager.dm +++ b/code/modules/events/event_manager.dm @@ -9,6 +9,7 @@ var/datum/controller/event/events var/frequency_upper = 9000 //15 minutes upper bound. Basically an event will happen every 15 to 30 minutes. var/holiday //This will be a string of the name of any realworld holiday which occurs today (GMT time) + var/wizardmode = 0 //If the summon events spell is in effect this is true //Initial controller setup. /datum/controller/event/New() @@ -20,7 +21,7 @@ var/datum/controller/event/events for(var/type in typesof(/datum/round_event_control)) var/datum/round_event_control/E = new type() - if(!E.typepath) + if(!E.typepath || E.typepath in typesof(/datum/round_event/wizard/)) continue //don't want this one! leave it for the garbage collector control += E //add it to the list of all events (controls) reschedule() diff --git a/code/modules/events/wizard/aid.dm b/code/modules/events/wizard/aid.dm new file mode 100644 index 00000000000..42c9082afb2 --- /dev/null +++ b/code/modules/events/wizard/aid.dm @@ -0,0 +1,46 @@ +//in this file: Various events that directly aid the wizard. This is the "lets entice the wizard to use summon events!" file. + +/datum/round_event_control/wizard/robelesscasting //EI NUDTH! + name = "Robeless Casting" + weight = 3 + typepath = /datum/round_event/wizard/robelesscasting/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/robelesscasting/start() + + for(var/mob/living/L in mob_list) //Hey if a corgi has magic missle he should get the same benifit as anyone + if(L.mind && L.mind.spell_list.len != 0) + var/spell_improved = 0 + for(var/obj/effect/proc_holder/spell/S in L.mind.spell_list) + if(S.clothes_req) + S.clothes_req = 0 + spell_improved = 1 + if(spell_improved) L << "You suddenly feel like you never needed those garish robes in the first place..." + +//--// + +/datum/round_event_control/wizard/improvedcasting //blink x5 disintergrate x5 here I come! + name = "Improved Casting" + weight = 3 + typepath = /datum/round_event/wizard/improvedcasting/ + max_occurrences = 4 //because that'd be max level spells + earliest_start = 0 + +/datum/round_event/wizard/improvedcasting/start() + for(var/mob/living/L in mob_list) + if(L.mind && L.mind.spell_list.len != 0) + for(var/obj/effect/proc_holder/spell/S in L.mind.spell_list) + S.name = initial(S.name) + S.spell_level++ + S.charge_max = round(initial(S.charge_max) - S.spell_level * (initial(S.charge_max) - S.cooldown_min)/ S.level_max) + if(S.charge_max < S.charge_counter) + S.charge_counter = S.charge_max + switch(S.spell_level) + if(1) S.name = "Efficient [S.name]" + if(2) S.name = "Quickened [S.name]" + if(3) S.name = "Free [S.name]" + if(4) S.name = "Instant [S.name]" + if(5) S.name = "Ludicrous [S.name]" + + L << "You suddenly feel more competent with your casting!" \ No newline at end of file diff --git a/code/modules/events/wizard/blobies.dm b/code/modules/events/wizard/blobies.dm new file mode 100644 index 00000000000..aff93fccaa7 --- /dev/null +++ b/code/modules/events/wizard/blobies.dm @@ -0,0 +1,11 @@ +/datum/round_event_control/wizard/blobies //avast! + name = "Zombie Outbreak" + weight = 3 + typepath = /datum/round_event/wizard/blobies/ + max_occurrences = 3 + earliest_start = 0 + +/datum/round_event/wizard/blobies/start() + + for(var/mob/living/carbon/human/H in dead_mob_list) + new /mob/living/simple_animal/hostile/blobspore(H.loc) diff --git a/code/modules/events/wizard/curseditems.dm b/code/modules/events/wizard/curseditems.dm new file mode 100644 index 00000000000..8f359dd6ce1 --- /dev/null +++ b/code/modules/events/wizard/curseditems.dm @@ -0,0 +1,43 @@ +/datum/round_event_control/wizard/cursed_items //fashion disasters + name = "Cursed Items" + weight = 3 + typepath = /datum/round_event/wizard/cursed_items/ + max_occurrences = 3 + earliest_start = 0 + +/datum/round_event/wizard/cursed_items/start() + var/item_set = pick("wizardmimic", "swords", "bigfatdoobie", "boxing", "voicemodulators", "headphones") + var/list/wearslots = list(slot_wear_suit, slot_shoes, slot_head, slot_wear_mask, slot_r_hand, slot_gloves, slot_ears) + var/list/loadout = list() + var/list/all_spawned_items = list() + loadout.len = 7 + + switch(item_set) + if("wizardmimic") loadout = list(/obj/item/clothing/suit/wizrobe, /obj/item/clothing/shoes/sandal, /obj/item/clothing/head/wizard) + if("swords") loadout[5] = /obj/item/weapon/katana + if("bigfatdoobie") loadout[4] = /obj/item/clothing/mask/cigarette/rollie/trippy/ + if("boxing") + loadout[4] = /obj/item/clothing/mask/luchador + loadout[6] = /obj/item/clothing/gloves/boxing + if("voicemodulators") loadout[4] = /obj/item/clothing/mask/gas/voice + if("headphones") loadout[7] = /obj/item/clothing/ears/earmuffs + + for(var/mob/living/carbon/human/H in living_mob_list) + var/list/slots = list(H.wear_suit, H.shoes, H.head, H.wear_mask, H.r_hand, H.gloves, H.ears) //add new slots as needed to back + for(var/i = 1, i <= loadout.len, i++) + if(loadout[i]) + var/obj/item/J = loadout[i] + var/obj/item/I = new J //dumb but required because of byond throwing a fit anytime new gets too close to a list + H.unEquip(slots[i]) + H.equip_to_slot_or_del(I, wearslots[i]) + all_spawned_items += I + + for(var/obj/item/I in all_spawned_items) + I.flags += NODROP + I.name = "cursed " + I.name + + + for(var/mob/living/carbon/human/H in living_mob_list) + var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread() + smoke.set_up(max(1,1), 0, H.loc) + smoke.start() \ No newline at end of file diff --git a/code/modules/events/wizard/departmentrevolt.dm b/code/modules/events/wizard/departmentrevolt.dm new file mode 100644 index 00000000000..597e8921240 --- /dev/null +++ b/code/modules/events/wizard/departmentrevolt.dm @@ -0,0 +1,47 @@ +/datum/round_event_control/wizard/deprevolt //stationwide! + name = "Departmental Uprising" + weight = 2 + typepath = /datum/round_event/wizard/deprevolt/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/deprevolt/start() + + var/list/tidecolor + var/list/jobs_to_revolt + var/nation + var/list/citizens + + tidecolor = pick("grey", "white", "yellow", "purple", "brown", "whatevercolorrepresentstheservicepeople") + switch(tidecolor) + if("grey") //God help you + jobs_to_revolt = list("Assistant") + nation = pick("Assa", "Mainte") + if("white") + jobs_to_revolt = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Geneticist", "Virologist") + nation = pick("Mede", "Healtha") + if("yellow") + jobs_to_revolt = list("Chief Engineer", "Station Engineer", "Atmospheric Technician") + nation = pick("Atomo", "Engino") + if("purple") + jobs_to_revolt = list("Research Director","Scientist", "Roboticist") + nation = pick("Sci", "Griffa") + if("brown") + jobs_to_revolt = list("Quartermaster", "Cargo Technician", "Shaft Miner") + nation = pick("Cargo", "Guna") + if("whatevercolorrepresentstheservicepeople") //the few, the proud, the technically aligned + jobs_to_revolt = list("Bartender", "Chef", "Botanist", "Clown", "Mime", "Janitor", "Chaplain") + nation = pick("Honka", "Boozo", "Fatu", "Danka") + + nation += pick("stan", "topia", "land") + + for(var/mob/living/carbon/human/H in mob_list) + if(H.mind && H.mind.assigned_role in jobs_to_revolt && !(H.mind in ticker.mode.traitors)) + citizens += H + ticker.mode.traitors += H.mind + H.mind.special_role = "separatist" + H.attack_log += "\[[time_stamp()]\] Was made into a separatist, long live [nation]!" + H << "You are a separatist! [nation] forever! Protect the soverignty of your newfound land with your comrades in arms!" + + if(citizens) + message_admins("The nation of [nation] has been formed. Affected jobs are [jobs_to_revolt].") \ No newline at end of file diff --git a/code/modules/events/wizard/fakeexplosion.dm b/code/modules/events/wizard/fakeexplosion.dm new file mode 100644 index 00000000000..893b6d2e95b --- /dev/null +++ b/code/modules/events/wizard/fakeexplosion.dm @@ -0,0 +1,12 @@ +/datum/round_event_control/wizard/fake_explosion //Oh no the station is gone! + name = "Fake Explosion" + weight = 2 + typepath = /datum/round_event/wizard/fake_explosion/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/fake_explosion/start() + for(var/mob/M in player_list) + M << 'sound/machines/Alarm.ogg' + sleep(100) + ticker.station_explosion_cinematic(1,"fake") //:o) \ No newline at end of file diff --git a/code/modules/events/wizard/ghost.dm b/code/modules/events/wizard/ghost.dm new file mode 100644 index 00000000000..bb60ee25214 --- /dev/null +++ b/code/modules/events/wizard/ghost.dm @@ -0,0 +1,27 @@ +/datum/round_event_control/wizard/ghost //The spook is real + name = "G-G-G-Ghosts!" + weight = 3 + typepath = /datum/round_event/wizard/ghost/ + max_occurrences = 5 + earliest_start = 0 + +/datum/round_event/wizard/ghost/start() + for(var/mob/dead/observer/G in player_list) + G.invisibility = 0 + G << "You suddenly feel extremely obvious..." + + +//--// + +/datum/round_event_control/wizard/possession //Oh shit + name = "Possessing G-G-G-Ghosts!" + weight = 2 + typepath = /datum/round_event/wizard/possession + max_occurrences = 5 + earliest_start = 0 + +/datum/round_event/wizard/possession/start() + for(var/mob/dead/observer/G in player_list) + G.verbs += /mob/dead/observer/verb/boo + G.verbs += /mob/dead/observer/verb/possess + G << "You suddenly feel a welling of new spooky powers..." diff --git a/code/modules/events/wizard/greentext.dm b/code/modules/events/wizard/greentext.dm new file mode 100644 index 00000000000..9c04c198247 --- /dev/null +++ b/code/modules/events/wizard/greentext.dm @@ -0,0 +1,81 @@ +/datum/round_event_control/wizard/greentext //Gotta have it! + name = "Greentext" + weight = 4 + typepath = /datum/round_event/wizard/greentext/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/greentext/start() + + var/list/holder_canadates = player_list + for(var/mob/M in holder_canadates) + if(!ishuman(M)) + holder_canadates -= M + if(!holder_canadates) //Very unlikely, but just in case + return 0 + + var/mob/living/carbon/human/H = pick(holder_canadates) + new /obj/item/weapon/greentext(H.loc) + H << "The mythical greentext appear at your feet! Pick it up if you dare..." + + +/obj/item/weapon/greentext/ + name = "greentext" + desc = "for some the pursuit of greentext is the greatest calling in life..." + w_class = 4.0 + icon = 'icons/obj/wizard.dmi' + icon_state = "greentext" + var/mob/living/last_holder + var/mob/living/new_holder + var/list/color_altered_mobs = list() + +/obj/item/weapon/greentext/equipped(mob/living/user as mob) + user << "So long as you leave this place with greentext in hand you know will be happy..." + if(user.mind && user.mind.objectives.len > 0) + user << "... so long as you still perform your other objectives that is!" + new_holder = user + if(!last_holder) + last_holder = user + if(!(user in color_altered_mobs)) + color_altered_mobs += user + user.color = "#00FF00" + processing_objects.Add(src) + ..() + +/obj/item/weapon/greentext/dropped(mob/living/user as mob) + if(user in color_altered_mobs) + user << "A sudden wave of failure washes over you..." + user.color = "#FF0000" //ya blew it + last_holder = null + new_holder = null + processing_objects.Remove(src) + ..() + +/obj/item/weapon/greentext/process() + if(new_holder && new_holder.z == 2)//you're winner! + new_holder << "At last it feels like victory is assured!" + if(!(new_holder in ticker.mode.traitors)) + ticker.mode.traitors += new_holder.mind + new_holder.mind.special_role = "winner" + var/datum/objective/O = new /datum/objective("Succeed") + O.completed = 1 //YES! + O.owner = new_holder.mind + new_holder.mind.objectives += O + new_holder.attack_log += "\[[time_stamp()]\] Won with greentext!!!" + color_altered_mobs -= new_holder + Destroy() + + if(last_holder && last_holder != new_holder) //Somehow it was swiped without ever getting dropped + last_holder << "A sudden wave of failure washes over you..." + last_holder.color = "#FF0000" + last_holder = new_holder //long live the king + +/obj/item/weapon/greentext/Destroy() + for(var/mob/M in mob_list) + var/message = "A dark temptation has passsed from this world" + if(M in color_altered_mobs) + message += " and you're finally able to forgive yourself" + M.color = initial(M.color) + message += "..." + M << message + ..() \ No newline at end of file diff --git a/code/modules/events/wizard/imposter.dm b/code/modules/events/wizard/imposter.dm new file mode 100644 index 00000000000..3d2b538d727 --- /dev/null +++ b/code/modules/events/wizard/imposter.dm @@ -0,0 +1,51 @@ +/datum/round_event_control/wizard/imposter //Mirror Mania + name = "Imposter Wizard" + weight = 1 + typepath = /datum/round_event/wizard/imposter/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/imposter/start() + + for(var/datum/mind/M in ticker.mode.wizards) + if(!ishuman(M.current)) continue + var/mob/living/carbon/human/W = M.current + var/list/candidates = get_candidates(BE_WIZARD) + if(!candidates) return //Sad Trombone + var/client/C = pick(candidates) + + new /obj/effect/effect/harmless_smoke(W.loc) + + var/mob/living/carbon/human/I = new /mob/living/carbon/human(W.loc) + I.real_name = W.real_name + I.dna.unique_enzymes = W.dna.unique_enzymes + I.name = W.real_name + I.dna.blood_type = W.dna.blood_type + I.dna.uni_identity = W.dna.uni_identity + I.dna.struc_enzymes = W.dna.struc_enzymes + updateappearance(I) + if(W.ears) I.equip_to_slot_or_del(new W.ears(I), slot_ears) + if(W.w_uniform) I.equip_to_slot_or_del(new W.w_uniform(I), slot_w_uniform) + if(W.shoes) I.equip_to_slot_or_del(new W.shoes(I), slot_shoes) + if(W.wear_suit) I.equip_to_slot_or_del(new W.wear_suit(I), slot_wear_suit) + if(W.head) I.equip_to_slot_or_del(new W.head(I), slot_head) + if(W.back) I.equip_to_slot_or_del(new W.back(I), slot_back) + I.key = C.key + + //Operation: Fuck off and scare people + I.mind.spell_list += new /obj/effect/proc_holder/spell/targeted/area_teleport/teleport(null) + I.mind.spell_list += new /obj/effect/proc_holder/spell/targeted/turf_teleport/blink(null) + I.mind.spell_list += new /obj/effect/proc_holder/spell/targeted/ethereal_jaunt(null) + + ticker.mode.traitors += I.mind + I.mind.special_role = "imposter" + + var/datum/objective/protect/protect_objective = new /datum/objective/protect + protect_objective.owner = I.mind + protect_objective.target = W.mind + protect_objective.explanation_text = "Protect [W.real_name], the wizard." + I.mind.objectives += protect_objective + + I.attack_log += "\[[time_stamp()]\] Is an imposter!" + I << "You are an imposter! Trick and confuse the crew to misdirect malice from your handsome original!" + I << sound('sound/effects/magic.ogg') diff --git a/code/modules/events/wizard/invincible.dm b/code/modules/events/wizard/invincible.dm new file mode 100644 index 00000000000..34aa2e6ea18 --- /dev/null +++ b/code/modules/events/wizard/invincible.dm @@ -0,0 +1,12 @@ +/datum/round_event_control/wizard/invincible //Boolet Proof + name = "Invincibility" + weight = 3 + typepath = /datum/round_event/wizard/invincible/ + max_occurrences = 5 + earliest_start = 0 + +/datum/round_event/wizard/invincible/start() + + for(var/mob/living/carbon/human/H in living_mob_list) + H.reagents.add_reagent("adminordrazine", 40) //100 ticks of absolute invinciblity (barring gibs) + H << "Yes! I am invincible!" \ No newline at end of file diff --git a/code/modules/events/wizard/lava.dm b/code/modules/events/wizard/lava.dm new file mode 100644 index 00000000000..a3abc5fe1f1 --- /dev/null +++ b/code/modules/events/wizard/lava.dm @@ -0,0 +1,42 @@ +/datum/round_event_control/wizard/lava //THE LEGEND NEVER DIES + name = "The Floor Is LAVA!" + weight = 2 + typepath = /datum/round_event/wizard/lava/ + max_occurrences = 3 + earliest_start = 0 + +/datum/round_event/wizard/lava/ + + endWhen = 120 //2 minutes + +/datum/round_event/wizard/lava/start() + + for(var/turf/simulated/floor/F in world) + if(F.z == 1) + F.name = "lava" + F.desc = "The floor is LAVA!" + F.overlays += "lava" + F.lava = 1 + +/datum/round_event/wizard/lava/tick() + + for(var/mob/living/carbon/L in living_mob_list) + if(istype(L.loc, /turf/simulated/floor)) // Are they on LAVA?! + var/turf/simulated/floor/F = L.loc + if(F.lava) + var/safe = 0 + for(var/obj/structure/O in F.contents) + if(O.level > F.level && !istype(O, /obj/structure/window)) // Something to stand on and it isn't under the floor! + safe = 1 + if(!safe) + L.adjustFireLoss(3) + +/datum/round_event/wizard/lava/end() + + for(var/turf/simulated/floor/F in world) // Reset everything. + if(F.z == 1) + F.name = initial(F.name) + F.desc = initial(F.desc) + F.overlays.Cut() + F.lava = 0 + F.update_icon() \ No newline at end of file diff --git a/code/modules/events/wizard/petsplosion.dm b/code/modules/events/wizard/petsplosion.dm new file mode 100644 index 00000000000..4e74d32a4d9 --- /dev/null +++ b/code/modules/events/wizard/petsplosion.dm @@ -0,0 +1,17 @@ +/datum/round_event_control/wizard/petsplosion //the horror + name = "Petsplosion" + weight = 2 + typepath = /datum/round_event/wizard/petsplosion/ + max_occurrences = 3 + earliest_start = 0 + +/datum/round_event/wizard/petsplosion/ + endWhen = 61 //1 minute (+1 tick for endWhen not to interfere with tick) + var/countdown = 0 + +/datum/round_event/wizard/petsplosion/tick() + if(activeFor >= 30 * countdown) // 0 seconds : 2 animals | 30 seconds : 4 animals | 1 minute : 8 animals + countdown += 1 + for(var/mob/living/simple_animal/F in living_mob_list) //If you cull the heard before the next replication, things will be easier for you + if(!istype(F, /mob/living/simple_animal/hostile)) + new F.type(F.loc) \ No newline at end of file diff --git a/code/modules/events/wizard/race.dm b/code/modules/events/wizard/race.dm new file mode 100644 index 00000000000..f4adc145869 --- /dev/null +++ b/code/modules/events/wizard/race.dm @@ -0,0 +1,22 @@ +/datum/round_event_control/wizard/race //Lizard Wizard? Lizard Wizard. + name = "Race Swap" + weight = -1 + typepath = /datum/round_event/wizard/race/ + max_occurrences = 50 + earliest_start = 0 + +/datum/round_event/wizard/race/start() + + var/all_the_same = 0 + var/all_species = typesof(/datum/species) - /datum/species + var/new_species = pick(all_species) + + if(prob(50)) + all_the_same = 1 + + for(var/mob/living/carbon/human/H in mob_list) //yes, even the dead + if(H.dna) + H.dna.species = new new_species + H.regenerate_icons() + if(!all_the_same) + new_species = pick(all_species) diff --git a/code/modules/events/wizard/shuffle.dm b/code/modules/events/wizard/shuffle.dm new file mode 100644 index 00000000000..e49d9be5368 --- /dev/null +++ b/code/modules/events/wizard/shuffle.dm @@ -0,0 +1,96 @@ +/datum/round_event/wizard/shuffle/start() + + +/datum/round_event_control/wizard/shuffleloc //Somewhere an AI is crying + name = "Change Places!" + weight = 2 + typepath = /datum/round_event/wizard/shuffleloc/ + max_occurrences = 5 + earliest_start = 0 + +/datum/round_event/wizard/shuffleloc/start() + var/list/moblocs = list() + var/list/mobs = list() + + for(var/mob/living/carbon/human/H in living_mob_list) + if(H.z != 1) continue //lets not try to strand people in space or stuck in the wizards den + moblocs += H.loc + mobs += H + + if(!mobs) return + + shuffle(moblocs) + shuffle(mobs) + + for(var/mob/living/carbon/human/H in mobs) + if(!moblocs) break //locs aren't always unique, so this may come into play + H.loc = moblocs[moblocs.len] + moblocs.len -= 1 + + for(var/mob/living/carbon/human/H in living_mob_list) + var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread() + smoke.set_up(max(1,1), 0, H.loc) + smoke.start() + +//---// + +/datum/round_event_control/wizard/shufflenames //Face/off joke + name = "Change Faces!" + weight = 4 + typepath = /datum/round_event/wizard/shufflenames/ + max_occurrences = 5 + earliest_start = 0 + +/datum/round_event/wizard/shufflenames/start() + var/list/mobnames = list() + var/list/mobs = list() + + for(var/mob/living/carbon/human/H in living_mob_list) + mobnames += H.name + mobs += H + + if(!mobs) return + + shuffle(mobnames) + shuffle(mobs) + + for(var/mob/living/carbon/human/H in mobs) + if(!mobnames) break + H.name = mobnames[mobnames.len] + mobnames.len -= 1 + + for(var/mob/living/carbon/human/H in living_mob_list) + var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread() + smoke.set_up(max(1,1), 0, H.loc) + smoke.start() + +//---// + +/datum/round_event_control/wizard/shuffleminds //Basically Mass Ranged Mindswap + name = "Change Minds!" + weight = 1 + typepath = /datum/round_event/wizard/shuffleminds/ + max_occurrences = 3 + earliest_start = 0 + +/datum/round_event/wizard/shuffleminds/start() + var/list/mobs = list() + + for(var/mob/living/carbon/human/H in living_mob_list) + if(!H.mind || H.mind in ticker.mode.wizards) continue //the wizard(s) are spared on this one + mobs += H + + if(!mobs) return + + shuffle(mobs) + + var/obj/effect/proc_holder/spell/targeted/mind_transfer/swapper = new /obj/effect/proc_holder/spell/targeted/mind_transfer/ + for(var/mob/living/carbon/human/H in mobs) + swapper.cast(list(H), mobs[mobs.len], 1) + mobs.len -= 1 + if(mobs.len <= 1) break + + for(var/mob/living/carbon/human/H in living_mob_list) + var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread() + smoke.set_up(max(1,1), 0, H.loc) + smoke.start() diff --git a/code/modules/events/wizard/summons.dm b/code/modules/events/wizard/summons.dm new file mode 100644 index 00000000000..67a154d5ac6 --- /dev/null +++ b/code/modules/events/wizard/summons.dm @@ -0,0 +1,25 @@ +/datum/round_event_control/wizard/summonguns //The Classic + name = "Summon Guns" + weight = 1 + typepath = /datum/round_event/wizard/summonguns/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/summonguns/start() + if(!ticker.mode.wizards) return + var/datum/mind/M = pick(ticker.mode.wizards) + if(M.current) + M.current.rightandwrong(0) + +/datum/round_event_control/wizard/summonmagic //The Somewhat Less Classic + name = "Summon Magic" + weight = 1 + typepath = /datum/round_event/wizard/summonmagic/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/summonmagic/start() + if(!ticker.mode.wizards) return + var/datum/mind/M = pick(ticker.mode.wizards) + if(M.current) + M.current.rightandwrong(1) \ No newline at end of file diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index e79d3fbc795..e40817fa596 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -17,6 +17,7 @@ //If you died in the game and are a ghsot - this will remain as null. //Note that this is not a reliable way to determine if admins started as observers, since they change mobs a lot. var/atom/movable/following = null + var/fun_verbs = 0 /mob/dead/observer/New(mob/body) sight |= SEE_TURFS | SEE_MOBS | SEE_OBJS | SEE_SELF @@ -47,6 +48,11 @@ if(!name) //To prevent nameless ghosts name = random_name(gender) real_name = name + + if(!fun_verbs) + verbs -= /mob/dead/observer/verb/boo + verbs -= /mob/dead/observer/verb/possess + ..() /mob/dead/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) @@ -231,7 +237,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp A.loc = T else A << "This mob is not located in the game world." -/* + /mob/dead/observer/verb/boo() set category = "Ghost" set name = "Boo!" @@ -245,7 +251,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp return //Maybe in the future we can add more spooky code here! return -*/ + /mob/dead/observer/memory() set hidden = 1 @@ -262,4 +268,30 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if (see_invisible == SEE_INVISIBLE_OBSERVER_NOLIGHTING) see_invisible = SEE_INVISIBLE_OBSERVER else - see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING \ No newline at end of file + see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING + +/mob/dead/observer/verb/possess() + set category = "Ghost" + set name = "Possess!" + set desc= "Take over the body of a mindless creature!" + + var/list/possessible = list() + for(var/mob/living/L in living_mob_list) + if(!(L in player_list) && !L.mind) + possessible += L + + var/mob/living/target = input("Your new life begins today!", "Possess Mob", null, null) as null|anything in possessible + + if(!target) + return 0 + if(can_reenter_corpse || (mind && mind.current)) + if(alert(src, "Your soul is still tied to your former life as [mind.current.name], if you go foward there is no going back to that life. Are you sure you wish to continue?", "Move On", "Yes", "No") == "No") + return 0 + if(target.key) + src << "Someone has taken this body while you were choosing!" + return 0 + + target.key = key + return 1 + + diff --git a/icons/obj/wizard.dmi b/icons/obj/wizard.dmi index 4f8a97b2475d4b81e328f999ff93af2fd3d16062..19a835048640332de3e58ed85b7bd2c369c617e0 100644 GIT binary patch literal 9130 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 ZLyp@{R_WR5q>pca`x?6HWp}MY{vScAi~5 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 diff --git a/tgstation.dme b/tgstation.dme index 548d5fabb98..8e72e487e5b 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -842,6 +842,20 @@ #include "code\modules\events\wormholes.dm" #include "code\modules\events\holiday\halloween.dm" #include "code\modules\events\holiday\xmas.dm" +#include "code\modules\events\wizard\aid.dm" +#include "code\modules\events\wizard\blobies.dm" +#include "code\modules\events\wizard\curseditems.dm" +#include "code\modules\events\wizard\departmentrevolt.dm" +#include "code\modules\events\wizard\fakeexplosion.dm" +#include "code\modules\events\wizard\ghost.dm" +#include "code\modules\events\wizard\greentext.dm" +#include "code\modules\events\wizard\imposter.dm" +#include "code\modules\events\wizard\invincible.dm" +#include "code\modules\events\wizard\lava.dm" +#include "code\modules\events\wizard\petsplosion.dm" +#include "code\modules\events\wizard\race.dm" +#include "code\modules\events\wizard\shuffle.dm" +#include "code\modules\events\wizard\summons.dm" #include "code\modules\flufftext\Dreaming.dm" #include "code\modules\flufftext\Hallucination.dm" #include "code\modules\flufftext\TextFilters.dm" From 81e178737d6a0768322692d875fadb9c8880a513 Mon Sep 17 00:00:00 2001 From: GunHog Date: Thu, 21 Aug 2014 22:59:30 -0500 Subject: [PATCH 002/124] Silicon Medical and Security HUDs! - The AI can now access both Security and Medical HUDs via a new button on its UI. The Medical HUD is exactly equal to all others. The AI's Security HUD cannot detect implants. - Cyborg HUD modules have been removed in favor of an inbuilt command, to make it less of a hassle to access them. - HUD code has been given its own file such that it can be used by any mob. In addition, HUD users are placed into a list instead of searching for only humans and checking them for a HUD item. This is to make it easier to expand. - Security HUD messages can now be received by any mob using a SecHUD. --- code/_globalvars/lists/objects.dm | 4 +- code/_onclick/hud/_defines.dm | 29 ++-- code/_onclick/hud/ai.dm | 11 +- code/_onclick/hud/screen_objects.dm | 10 +- code/game/data_huds.dm | 134 ++++++++++++++++++ code/modules/clothing/glasses/hud.dm | 97 +------------ code/modules/mob/living/carbon/human/life.dm | 4 +- code/modules/mob/living/carbon/slime/hud.dm | 2 +- code/modules/mob/living/silicon/ai/life.dm | 7 + code/modules/mob/living/silicon/pai/hud.dm | 82 ----------- code/modules/mob/living/silicon/pai/life.dm | 4 +- code/modules/mob/living/silicon/robot/life.dm | 11 +- .../modules/mob/living/silicon/robot/robot.dm | 5 + .../mob/living/silicon/robot/robot_modules.dm | 2 - code/modules/mob/living/silicon/silicon.dm | 18 +++ code/modules/mob/mob_helpers.dm | 10 +- config/admins.txt | 1 + tgstation.dme | 2 +- 18 files changed, 220 insertions(+), 213 deletions(-) create mode 100644 code/game/data_huds.dm delete mode 100644 code/modules/mob/living/silicon/pai/hud.dm diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index 5dbd2be86fa..a799dd0ee1c 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -12,4 +12,6 @@ var/global/list/active_diseases = list() var/global/list/chemical_reactions_list //list of all /datum/chemical_reaction datums. Used during chemical reactions var/global/list/chemical_reagents_list //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff var/global/list/surgeries_list = list() //list of all surgeries by name, associated with their path. -var/global/list/table_recipes = list() //list of all table craft recipes \ No newline at end of file +var/global/list/table_recipes = list() //list of all table craft recipes +var/global/list/med_hud_users = list() //list of all entities using a medical HUD. +var/global/list/sec_hud_users = list() //list of all entities using a security HUD. \ No newline at end of file diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 932d14deeeb..978aba075b2 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -94,20 +94,21 @@ // AI -#define ui_ai_core "SOUTH:6,WEST:16" -#define ui_ai_camera_list "SOUTH:6,WEST+1:16" -#define ui_ai_track_with_camera "SOUTH:6,WEST+2:16" -#define ui_ai_camera_light "SOUTH:6,WEST+3:16" -#define ui_ai_crew_monitor "SOUTH:6,WEST+4:16" -#define ui_ai_crew_manifest "SOUTH:6,WEST+5:16" -#define ui_ai_alerts "SOUTH:6,WEST+6:16" -#define ui_ai_announcement "SOUTH:6,WEST+7:16" -#define ui_ai_shuttle "SOUTH:6,WEST+8:16" -#define ui_ai_state_laws "SOUTH:6,WEST+9:16" -#define ui_ai_pda_send "SOUTH:6,WEST+10:16" -#define ui_ai_pda_log "SOUTH:6,WEST+11:16" -#define ui_ai_take_picture "SOUTH:6,WEST+12:16" -#define ui_ai_view_images "SOUTH:6,WEST+13:16" +#define ui_ai_core "SOUTH:6,WEST" +#define ui_ai_camera_list "SOUTH:6,WEST+1" +#define ui_ai_track_with_camera "SOUTH:6,WEST+2" +#define ui_ai_camera_light "SOUTH:6,WEST+3" +#define ui_ai_crew_monitor "SOUTH:6,WEST+4" +#define ui_ai_crew_manifest "SOUTH:6,WEST+5" +#define ui_ai_alerts "SOUTH:6,WEST+6" +#define ui_ai_announcement "SOUTH:6,WEST+7" +#define ui_ai_shuttle "SOUTH:6,WEST+8" +#define ui_ai_state_laws "SOUTH:6,WEST+9" +#define ui_ai_pda_send "SOUTH:6,WEST+10" +#define ui_ai_pda_log "SOUTH:6,WEST+11" +#define ui_ai_take_picture "SOUTH:6,WEST+12" +#define ui_ai_view_images "SOUTH:6,WEST+13" +#define ui_ai_sensor "SOUTH:6,WEST+14" //Pop-up inventory #define ui_shoes "WEST+1:8,SOUTH:5" diff --git a/code/_onclick/hud/ai.dm b/code/_onclick/hud/ai.dm index 9f254878373..b2d288b25e1 100644 --- a/code/_onclick/hud/ai.dm +++ b/code/_onclick/hud/ai.dm @@ -130,6 +130,15 @@ using.layer = 20 adding += using - mymob.client.screen += adding + other +//Medical/Security sensors + using = new /obj/screen() + using.name = "Sensor Augmentation" + using.icon = 'icons/mob/screen_ai.dmi' + using.icon_state = "ai_sensor" + using.screen_loc = ui_ai_sensor + using.layer = 20 + adding += using + + mymob.client.screen += adding + other return \ No newline at end of file diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index b0d6037131c..e1156dc0d8e 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -355,9 +355,6 @@ if(isAI(usr)) var/mob/living/silicon/ai/AI = usr AI.aicamera.toggle_camera_mode() - else if(isrobot(usr)) - var/mob/living/silicon/robot/R = usr - R.aicamera.toggle_camera_mode() if("View Images") if(isAI(usr)) @@ -367,6 +364,13 @@ var/mob/living/silicon/robot/R = usr R.aicamera.viewpictures() + if("Sensor Augmentation") + if(isAI(usr)) + var/mob/living/silicon/ai/AI = usr + AI.sensor_mode() + else if(isrobot(usr)) + var/mob/living/silicon/robot/R = usr + R.sensor_mode() else return 0 return 1 diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm new file mode 100644 index 00000000000..1a1ab5040f4 --- /dev/null +++ b/code/game/data_huds.dm @@ -0,0 +1,134 @@ +/* Using the HUD procs is simple. Call these procs in the life.dm of the intended mob. +Use the regular_hud_updates() proc before process_med_hud(mob) or process_sec_hud(mob) so +the HUD updates properly! */ + +//Deletes the current HUD images so they can be refreshed with new ones. +mob/proc/regular_hud_updates() //Used in the life.dm of mobs that can use HUDs. + if(client) + for(var/image/hud in client.images) + if(copytext(hud.icon_state,1,4) == "hud") + client.images -= hud + if(src in med_hud_users) + med_hud_users -= src + if(src in sec_hud_users) + sec_hud_users -= src + + +//Medical HUD procs + +proc/RoundHealth(health) + + switch(health) + if(100 to INFINITY) + return "health100" + if(70 to 100) + return "health80" + if(50 to 70) + return "health60" + if(30 to 50) + return "health40" + if(18 to 30) + return "health25" + if(5 to 18) + return "health10" + if(1 to 5) + return "health1" + if(-99 to 0) + return "health0" + else + return "health-100" + return "0" + +//Medical HUD outputs. Called by the Life() proc of the mob using it, usually. +proc/process_med_hud(var/mob/M, var/mob/eye) + if(!M) + return + if(!M.client) + return + if(!(M in med_hud_users)) + med_hud_users += M + var/client/C = M.client + var/image/holder + var/turf/T + if(eye) + T = get_turf(eye) + else + T = get_turf(M) + for(var/mob/living/carbon/human/patient in range(T)) + var/foundVirus = 0 + for(var/datum/disease/D in patient.viruses) + if(!D.hidden[SCANNER]) + foundVirus++ + if(!C) continue + + holder = patient.hud_list[HEALTH_HUD] + if(patient.stat == 2) + holder.icon_state = "hudhealth-100" + else + holder.icon_state = "hud[RoundHealth(patient.health)]" + C.images += holder + + holder = patient.hud_list[STATUS_HUD] + if(patient.stat == 2) + holder.icon_state = "huddead" + else if(patient.status_flags & XENO_HOST) + holder.icon_state = "hudxeno" + else if(foundVirus) + holder.icon_state = "hudill" + else + holder.icon_state = "hudhealthy" + C.images += holder + + +//Security HUDs. Pass a value for the second argument to enable implant viewing or other special features. +proc/process_sec_hud(var/mob/M, var/advanced_mode,var/mob/eye) + if(!M) + return + if(!M.client) + return + if(!(M in sec_hud_users)) + sec_hud_users += M + var/client/C = M.client + var/image/holder + var/turf/T + if(eye) + T = get_turf(eye) + else + T = get_turf(M) + for(var/mob/living/carbon/human/perp in range(T)) + holder = perp.hud_list[ID_HUD] + holder.icon_state = "hudno_id" + if(perp.wear_id) + holder.icon_state = "hud[ckey(perp.wear_id.GetJobName())]" + C.images += holder + + if(advanced_mode) //If set, the SecHUD will display the implants a person has. + for(var/obj/item/weapon/implant/I in perp) + if(I.implanted) + if(istype(I,/obj/item/weapon/implant/tracking)) + holder = perp.hud_list[IMPTRACK_HUD] + holder.icon_state = "hud_imp_tracking" + else if(istype(I,/obj/item/weapon/implant/loyalty)) + holder = perp.hud_list[IMPLOYAL_HUD] + holder.icon_state = "hud_imp_loyal" + else if(istype(I,/obj/item/weapon/implant/chem)) + holder = perp.hud_list[IMPCHEM_HUD] + holder.icon_state = "hud_imp_chem" + else + continue + C.images += holder + break + + var/perpname = perp.get_face_name(perp.get_id_name("")) + if(perpname) + var/datum/data/record/R = find_record("name", perpname, data_core.security) + if(R) + holder = perp.hud_list[WANTED_HUD] + switch(R.fields["criminal"]) + if("*Arrest*") holder.icon_state = "hudwanted" + if("Incarcerated") holder.icon_state = "hudincarcerated" + if("Parolled") holder.icon_state = "hudparolled" + if("Released") holder.icon_state = "hudreleased" + else + continue + C.images += holder \ No newline at end of file diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index 8b22d9da546..bccba91bd4f 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -25,63 +25,12 @@ name = "Health Scanner HUD" desc = "A heads-up display that scans the humans in view and provides accurate data about their health status." icon_state = "healthhud" - proc - RoundHealth(health) - RoundHealth(health) - switch(health) - if(100 to INFINITY) - return "health100" - if(70 to 100) - return "health80" - if(50 to 70) - return "health60" - if(30 to 50) - return "health40" - if(18 to 30) - return "health25" - if(5 to 18) - return "health10" - if(1 to 5) - return "health1" - if(-99 to 0) - return "health0" - else - return "health-100" - return "0" +/obj/item/clothing/glasses/hud/health/process_hud(var/mob/M) + process_med_hud(M) - process_hud(var/mob/M) - if(!M) return - if(!M.client) return - var/client/C = M.client - var/image/holder - for(var/mob/living/carbon/human/patient in view(M)) - var/foundVirus = 0 - for(var/datum/disease/D in patient.viruses) - if(!D.hidden[SCANNER]) - foundVirus++ - if(!C) continue - - holder = patient.hud_list[HEALTH_HUD] - if(patient.stat == 2) - holder.icon_state = "hudhealth-100" - else - holder.icon_state = "hud[RoundHealth(patient.health)]" - C.images += holder - - holder = patient.hud_list[STATUS_HUD] - if(patient.stat == 2) - holder.icon_state = "huddead" - else if(patient.status_flags & XENO_HOST) - holder.icon_state = "hudxeno" - else if(foundVirus) - holder.icon_state = "hudill" - else - holder.icon_state = "hudhealthy" - C.images += holder - /obj/item/clothing/glasses/hud/health/night name = "Night Vision Health Scanner HUD" desc = "An advanced medical head-up display that allows doctors to find patients in complete darkness." @@ -123,44 +72,4 @@ invis_view = 2 /obj/item/clothing/glasses/hud/security/process_hud(var/mob/M) - if(!M) return - if(!M.client) return - var/client/C = M.client - var/image/holder - for(var/mob/living/carbon/human/perp in view(M)) - holder = perp.hud_list[ID_HUD] - holder.icon_state = "hudno_id" - if(perp.wear_id) - holder.icon_state = "hud[ckey(perp.wear_id.GetJobName())]" - C.images += holder - - - for(var/obj/item/weapon/implant/I in perp) - if(I.implanted) - if(istype(I,/obj/item/weapon/implant/tracking)) - holder = perp.hud_list[IMPTRACK_HUD] - holder.icon_state = "hud_imp_tracking" - else if(istype(I,/obj/item/weapon/implant/loyalty)) - holder = perp.hud_list[IMPLOYAL_HUD] - holder.icon_state = "hud_imp_loyal" - else if(istype(I,/obj/item/weapon/implant/chem)) - holder = perp.hud_list[IMPCHEM_HUD] - holder.icon_state = "hud_imp_chem" - else - continue - C.images += holder - break - - var/perpname = perp.get_face_name(perp.get_id_name("")) - if(perpname) - var/datum/data/record/R = find_record("name", perpname, data_core.security) - if(R) - holder = perp.hud_list[WANTED_HUD] - switch(R.fields["criminal"]) - if("*Arrest*") holder.icon_state = "hudwanted" - if("Incarcerated") holder.icon_state = "hudincarcerated" - if("Parolled") holder.icon_state = "hudparolled" - if("Discharged") holder.icon_state = "huddischarged" - else - continue - C.images += holder \ No newline at end of file + process_sec_hud(M,1) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 58d70c745ec..24e66c15437 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -594,9 +594,7 @@ /mob/living/carbon/human/proc/handle_regular_hud_updates() if(!client) return 0 - for(var/image/hud in client.images) - if(copytext(hud.icon_state,1,4) == "hud") //ugly, but icon comparison is worse, I believe - client.images.Remove(hud) + regular_hud_updates() //For MED/SEC HUD icon deletion client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask) diff --git a/code/modules/mob/living/carbon/slime/hud.dm b/code/modules/mob/living/carbon/slime/hud.dm index 24a0a6e112b..ad8ac6a00f6 100644 --- a/code/modules/mob/living/carbon/slime/hud.dm +++ b/code/modules/mob/living/carbon/slime/hud.dm @@ -1,2 +1,2 @@ -/mob/living/carbon/slime/proc/regular_hud_updates() +/mob/living/carbon/slime/regular_hud_updates() return \ No newline at end of file diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index f9f5c89b9da..ba80efa41b1 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -163,6 +163,13 @@ sleep(50) theAPC = null + regular_hud_updates() + switch(src.sensor_mode) + if (SEC_HUD) + process_sec_hud(src,0,src.eyeobj) + if (MED_HUD) + process_med_hud(src,src.eyeobj) + /mob/living/silicon/ai/updatehealth() if(status_flags & GODMODE) health = maxHealth diff --git a/code/modules/mob/living/silicon/pai/hud.dm b/code/modules/mob/living/silicon/pai/hud.dm deleted file mode 100644 index 395c75c64a0..00000000000 --- a/code/modules/mob/living/silicon/pai/hud.dm +++ /dev/null @@ -1,82 +0,0 @@ -/mob/living/silicon/pai/proc/regular_hud_updates() - if(client) - for(var/image/hud in client.images) - if(copytext(hud.icon_state,1,4) == "hud") - client.images -= hud - -/mob/living/silicon/pai/proc/securityHUD() - if(client) - var/image/holder - var/turf/T = get_turf(src.loc) - for(var/mob/living/carbon/human/perp in view(T)) - holder = perp.hud_list[ID_HUD] - holder.icon_state = "hudno_id" - if(perp.wear_id) - holder.icon_state = "hud[ckey(perp:wear_id:GetJobName())]" - client.images += holder - - var/perpname = perp.get_face_name(perp.get_id_name("")) - if(perpname) - var/datum/data/record/R = find_record("name", perpname, data_core.security) - if(R) - holder = perp.hud_list[WANTED_HUD] - switch(R.fields["criminal"]) - if("*Arrest*") holder.icon_state = "hudwanted" - if("Incarcerated") holder.icon_state = "hudincarcerated" - if("Parolled") holder.icon_state = "hudparolled" - if("Discharged") holder.icon_state = "huddischarged" - else - continue - client.images += holder - -/mob/living/silicon/pai/proc/medicalHUD() - if(client) - var/image/holder - var/turf/T = get_turf(src.loc) - for(var/mob/living/carbon/human/patient in view(T)) - - var/foundVirus = 0 - for(var/datum/disease/D in patient.viruses) - if(!D.hidden[SCANNER]) - foundVirus = 1 - - holder = patient.hud_list[HEALTH_HUD] - if(patient.stat == 2) - holder.icon_state = "hudhealth-100" - client.images += holder - else - holder.icon_state = "hud[RoundHealth(patient.health)]" - client.images += holder - - holder = patient.hud_list[STATUS_HUD] - if(patient.stat == 2) - holder.icon_state = "huddead" - else if(patient.status_flags & XENO_HOST) - holder.icon_state = "hudxeno" - else if(foundVirus) - holder.icon_state = "hudill" - else - holder.icon_state = "hudhealthy" - client.images += holder - -/mob/living/silicon/pai/proc/RoundHealth(health) - switch(health) - if(100 to INFINITY) - return "health100" - if(70 to 100) - return "health80" - if(50 to 70) - return "health60" - if(30 to 50) - return "health40" - if(20 to 30) - return "health25" - if(5 to 15) - return "health10" - if(1 to 5) - return "health1" - if(-99 to 0) - return "health0" - else - return "health-100" - return "0" diff --git a/code/modules/mob/living/silicon/pai/life.dm b/code/modules/mob/living/silicon/pai/life.dm index 385c0ae6760..01a231717d3 100644 --- a/code/modules/mob/living/silicon/pai/life.dm +++ b/code/modules/mob/living/silicon/pai/life.dm @@ -11,9 +11,9 @@ regular_hud_updates() if(src.secHUD == 1) - src.securityHUD() + process_sec_hud(src) if(src.medHUD == 1) - src.medicalHUD() + process_med_hud(src) if(silence_time) if(world.timeofday >= silence_time) silence_time = null diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index e3feb824109..1162c2baee2 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -165,12 +165,13 @@ if(see_override) see_invisible = see_override - for(var/image/hud in client.images) - if(copytext(hud.icon_state,1,4) == "hud") //ugly, but icon comparison is worse, I believe - client.images.Remove(hud) + regular_hud_updates() //Handles MED/SEC HUDs for borgs. - var/obj/item/borg/sight/hud/hud = (locate(/obj/item/borg/sight/hud) in src) - if(hud && hud.hud) hud.hud.process_hud(src) + switch(sensor_mode) + if (SEC_HUD) + process_sec_hud(src, 1) + if (MED_HUD) + process_med_hud(src) if (src.healths) if (src.stat != 2) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 1ee5ba23466..210e2a1d75e 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -1038,6 +1038,11 @@ checklaws() +/mob/living/silicon/robot/sensor_mode() //Medical/Security HUD controller for borgs + set category = "Robot Commands" + set desc = "Augment visual feed with internal sensor overlays." + ..() + /mob/living/silicon/robot/proc/deconstruct() var/turf/T = get_turf(src) if (robot_suit) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index e9faf2b07f2..a2df8da25d9 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -76,7 +76,6 @@ /obj/item/weapon/robot_module/medical/New() ..() - modules += new /obj/item/borg/sight/hud/med(src) modules += new /obj/item/device/healthanalyzer(src) modules += new /obj/item/weapon/reagent_containers/borghypo(src) modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src) @@ -146,7 +145,6 @@ /obj/item/weapon/robot_module/security/New() ..() - modules += new /obj/item/borg/sight/hud/sec(src) modules += new /obj/item/weapon/handcuffs/cyborg(src) modules += new /obj/item/weapon/melee/baton/loaded(src) modules += new /obj/item/weapon/gun/energy/taser/cyborg(src) diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 06b452e6d59..ffd9184e479 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -15,6 +15,10 @@ var/lawcheck[1] var/ioncheck[1] + var/sensor_mode = 0 //Determines the current HUD. + #define SEC_HUD 1 //Security HUD mode + #define MED_HUD 2 //Medical HUD mode + /mob/living/silicon/proc/cancelAlarm() return @@ -311,3 +315,17 @@ /mob/living/silicon/assess_threat() //Secbots won't hunt silicon units return -10 + +/mob/living/silicon/verb/sensor_mode() + set name = "Set Sensor Augmentation" + var/sensor_type = input("Please select sensor type.", "Sensor Integration", null) in list("Security", "Medical","Disable") + switch(sensor_type) + if ("Security") + sensor_mode = SEC_HUD + src << "Security records overlay enabled." + if ("Medical") + sensor_mode = MED_HUD + src << "Life signs monitor overlay enabled." + if ("Disable") + sensor_mode = 0 + src << "Sensor augmentations disabled." \ No newline at end of file diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 40eb8d8364f..9804e2ac6c0 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -456,7 +456,9 @@ proc/is_special_character(mob/M) // returns 1 for special characters and 2 for h /proc/broadcast_hud_message(var/message, var/broadcast_source) var/turf/sourceturf = get_turf(broadcast_source) - for(var/mob/living/carbon/human/human in mob_list) - var/turf/humanturf = get_turf(human) - if((humanturf.z == sourceturf.z) && istype(human.glasses, /obj/item/clothing/glasses/hud/security)) - human.show_message("\icon[human.glasses] [message]", 1) \ No newline at end of file + var/user_list = sec_hud_users //A local var is used for easy addition of other HUD types. + var/hud_icon = /obj/item/weapon/handcuffs //Icon displayed when the HUD triggered. Handcuffs for Sec HUDs. + for(var/mob/hud_user in user_list) + var/turf/userturf = get_turf(hud_user) + if(userturf.z == sourceturf.z) //Must have same z-level. + hud_user.show_message("\icon[hud_icon] [message]", 1) \ No newline at end of file diff --git a/config/admins.txt b/config/admins.txt index 68fea1b2a47..ad4596c377d 100644 --- a/config/admins.txt +++ b/config/admins.txt @@ -7,6 +7,7 @@ # NOTE: if the rank-name cannot be found in admin_ranks.txt, they will not be adminned! ~Carn # # NOTE: syntax was changed to allow hyphenation of ranknames, since spaces are stripped. # ############################################################################################### +Gun Hog = Game Master razharas = Game Master Niknakflak = Game Master rolan7 = Game Master diff --git a/tgstation.dme b/tgstation.dme index da6e81f5e41..114c82f8fe1 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -220,6 +220,7 @@ #include "code\game\atoms.dm" #include "code\game\atoms_movable.dm" #include "code\game\communications.dm" +#include "code\game\data_huds.dm" #include "code\game\dna.dm" #include "code\game\shuttle_engines.dm" #include "code\game\skincmd.dm" @@ -1037,7 +1038,6 @@ #include "code\modules\mob\living\silicon\decoy\life.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" #include "code\modules\mob\living\silicon\pai\life.dm" #include "code\modules\mob\living\silicon\pai\pai.dm" #include "code\modules\mob\living\silicon\pai\personality.dm" From 1dbc2756a6d3bae07a1cb218164a0739df06dc64 Mon Sep 17 00:00:00 2001 From: GunHog Date: Fri, 22 Aug 2014 08:00:02 -0500 Subject: [PATCH 003/124] RR's tweak + derpfix Makes the sensor augmentation check for silicon instead of one for both the AI and Borgs, since they are not actually different procs. Reverts an accidental removal of the borg camera function, thinking it came from NT's code. --- code/_onclick/hud/screen_objects.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index e1156dc0d8e..76a45d87877 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -355,6 +355,9 @@ if(isAI(usr)) var/mob/living/silicon/ai/AI = usr AI.aicamera.toggle_camera_mode() + else if(isrobot(usr)) + var/mob/living/silicon/robot/R = usr + R.aicamera.toggle_camera_mode() if("View Images") if(isAI(usr)) @@ -365,12 +368,9 @@ R.aicamera.viewpictures() if("Sensor Augmentation") - if(isAI(usr)) - var/mob/living/silicon/ai/AI = usr - AI.sensor_mode() - else if(isrobot(usr)) - var/mob/living/silicon/robot/R = usr - R.sensor_mode() + if(issilicon(usr)) + var/mob/living/silicon/S = usr + S.sensor_mode() else return 0 return 1 From add78717834626020736c65616d0f5a4d049c725 Mon Sep 17 00:00:00 2001 From: GunHog Date: Fri, 22 Aug 2014 09:03:39 -0500 Subject: [PATCH 004/124] Nerfs to AI's HUDs - AI Medical HUDs require that the person's suit sensors be enabled (any active mode) in order to view status data. - AI Security HUDs display only the person's job as given by their ID, no security status or implant detection. --- code/game/data_huds.dm | 39 ++++++++++++------- code/modules/clothing/glasses/hud.dm | 2 +- code/modules/mob/living/silicon/ai/life.dm | 2 +- code/modules/mob/living/silicon/pai/life.dm | 4 +- code/modules/mob/living/silicon/robot/life.dm | 4 +- 5 files changed, 30 insertions(+), 21 deletions(-) diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 1a1ab5040f4..d93f073a1ab 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -40,7 +40,7 @@ proc/RoundHealth(health) return "0" //Medical HUD outputs. Called by the Life() proc of the mob using it, usually. -proc/process_med_hud(var/mob/M, var/mob/eye) +proc/process_med_hud(var/mob/M,var/local_scanner,var/mob/eye) if(!M) return if(!M.client) @@ -55,6 +55,15 @@ proc/process_med_hud(var/mob/M, var/mob/eye) else T = get_turf(M) for(var/mob/living/carbon/human/patient in range(T)) + + if(!local_scanner) //Used for the AI's MedHUD, only works if the patient has activated suit sensors. + if(istype(patient.w_uniform, /obj/item/clothing/under)) + var/obj/item/clothing/under/U = patient.w_uniform + if(!U.sensor_mode) + continue + else + continue + var/foundVirus = 0 for(var/datum/disease/D in patient.viruses) if(!D.hidden[SCANNER]) @@ -102,7 +111,7 @@ proc/process_sec_hud(var/mob/M, var/advanced_mode,var/mob/eye) holder.icon_state = "hud[ckey(perp.wear_id.GetJobName())]" C.images += holder - if(advanced_mode) //If set, the SecHUD will display the implants a person has. + if(advanced_mode) //If not set, the Sec HUD will only display the job. for(var/obj/item/weapon/implant/I in perp) if(I.implanted) if(istype(I,/obj/item/weapon/implant/tracking)) @@ -119,16 +128,16 @@ proc/process_sec_hud(var/mob/M, var/advanced_mode,var/mob/eye) C.images += holder break - var/perpname = perp.get_face_name(perp.get_id_name("")) - if(perpname) - var/datum/data/record/R = find_record("name", perpname, data_core.security) - if(R) - holder = perp.hud_list[WANTED_HUD] - switch(R.fields["criminal"]) - if("*Arrest*") holder.icon_state = "hudwanted" - if("Incarcerated") holder.icon_state = "hudincarcerated" - if("Parolled") holder.icon_state = "hudparolled" - if("Released") holder.icon_state = "hudreleased" - else - continue - C.images += holder \ No newline at end of file + var/perpname = perp.get_face_name(perp.get_id_name("")) + if(perpname) + var/datum/data/record/R = find_record("name", perpname, data_core.security) + if(R) + holder = perp.hud_list[WANTED_HUD] + switch(R.fields["criminal"]) + if("*Arrest*") holder.icon_state = "hudwanted" + if("Incarcerated") holder.icon_state = "hudincarcerated" + if("Parolled") holder.icon_state = "hudparolled" + if("Released") holder.icon_state = "hudreleased" + else + continue + C.images += holder \ No newline at end of file diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index bccba91bd4f..49c3979df2b 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -28,7 +28,7 @@ /obj/item/clothing/glasses/hud/health/process_hud(var/mob/M) - process_med_hud(M) + process_med_hud(M, 1) /obj/item/clothing/glasses/hud/health/night diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index ba80efa41b1..7f89175b4e9 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -168,7 +168,7 @@ if (SEC_HUD) process_sec_hud(src,0,src.eyeobj) if (MED_HUD) - process_med_hud(src,src.eyeobj) + process_med_hud(src,0,src.eyeobj) /mob/living/silicon/ai/updatehealth() if(status_flags & GODMODE) diff --git a/code/modules/mob/living/silicon/pai/life.dm b/code/modules/mob/living/silicon/pai/life.dm index 01a231717d3..8039c632602 100644 --- a/code/modules/mob/living/silicon/pai/life.dm +++ b/code/modules/mob/living/silicon/pai/life.dm @@ -11,9 +11,9 @@ regular_hud_updates() if(src.secHUD == 1) - process_sec_hud(src) + process_sec_hud(src, 1) if(src.medHUD == 1) - process_med_hud(src) + process_med_hud(src, 1) if(silence_time) if(world.timeofday >= silence_time) silence_time = null diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 1162c2baee2..6ecfb1d4520 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -171,7 +171,7 @@ if (SEC_HUD) process_sec_hud(src, 1) if (MED_HUD) - process_med_hud(src) + process_med_hud(src, 1) if (src.healths) if (src.stat != 2) @@ -294,7 +294,7 @@ fire_stacks = max(0, fire_stacks) else ExtinguishMob() - + //adjustFireLoss(3) return From 70d29f25ff65d98d5808dd987dc598ee05c6ac96 Mon Sep 17 00:00:00 2001 From: Incoming Date: Fri, 22 Aug 2014 10:07:04 -0400 Subject: [PATCH 005/124] whoops missed balancing an event --- code/modules/events/wizard/race.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/events/wizard/race.dm b/code/modules/events/wizard/race.dm index f4adc145869..a28dab20daf 100644 --- a/code/modules/events/wizard/race.dm +++ b/code/modules/events/wizard/race.dm @@ -1,8 +1,8 @@ /datum/round_event_control/wizard/race //Lizard Wizard? Lizard Wizard. name = "Race Swap" - weight = -1 + weight = 2 typepath = /datum/round_event/wizard/race/ - max_occurrences = 50 + max_occurrences = 5 earliest_start = 0 /datum/round_event/wizard/race/start() From 965f4feb9a1b200bf41d2cbee50c7644aedb92ae Mon Sep 17 00:00:00 2001 From: GunHog Date: Fri, 22 Aug 2014 09:21:42 -0500 Subject: [PATCH 006/124] AI Medical sensors ignore binary life mode. --- code/game/data_huds.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index d93f073a1ab..d1fd55d6aca 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -59,7 +59,7 @@ proc/process_med_hud(var/mob/M,var/local_scanner,var/mob/eye) if(!local_scanner) //Used for the AI's MedHUD, only works if the patient has activated suit sensors. if(istype(patient.w_uniform, /obj/item/clothing/under)) var/obj/item/clothing/under/U = patient.w_uniform - if(!U.sensor_mode) + if(U.sensor_mode < 2) continue else continue From 2602aeebc8ae06a9ccb987025af6471e5db1cd1d Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Fri, 22 Aug 2014 10:13:18 -0700 Subject: [PATCH 007/124] aliums 2spukki --- code/game/objects/effects/aliens.dm | 189 +++++++++++++++++- .../carbon/alien/humanoid/alien_powers.dm | 4 +- icons/mob/alien.dmi | Bin 85143 -> 103457 bytes 3 files changed, 185 insertions(+), 8 deletions(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 3a12acdd6ca..f248e92e0d2 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -47,6 +47,152 @@ desc = "Purple slime solidified into a wall." icon_state = "resinwall" //same as resin, but consistency ho! + +/obj/structure/alien/resin/wall/New() + ..() + update_icon() + for(var/direction in list(1,2,4,8,5,6,9,10)) + if(locate(/obj/structure/alien/resin,get_step(src,direction))) + var/obj/structure/alien/resin/T = locate(/obj/structure/alien/resin,get_step(src,direction)) + T.update_icon() + +/obj/structure/alien/resin/update_icon() + spawn(2) //So it properly updates when deleting + var/dir_sum = 0 + for(var/direction in list(1,2,4,8,5,6,9,10)) + var/skip_sum = 0 + for(var/obj/structure/window/W in src.loc) + if(W.dir == direction) //So smooth tables don't go smooth through windows + skip_sum = 1 + continue + var/inv_direction //inverse direction + switch(direction) + if(1) + inv_direction = 2 + if(2) + inv_direction = 1 + if(4) + inv_direction = 8 + if(8) + inv_direction = 4 + if(5) + inv_direction = 10 + if(6) + inv_direction = 9 + if(9) + inv_direction = 6 + if(10) + inv_direction = 5 + for(var/obj/structure/window/W in get_step(src,direction)) + if(W.dir == inv_direction) //So smooth tables don't go smooth through windows when the window is on the other table's tile + skip_sum = 1 + continue + if(!skip_sum) //means there is a window between the two tiles in this direction + if(locate(/obj/structure/alien/resin,get_step(src,direction))) + if(direction <5) + dir_sum += direction + else + if(direction == 5) //This permits the use of all table directions. (Set up so clockwise around the central table is a higher value, from north) + dir_sum += 16 + if(direction == 6) + dir_sum += 32 + if(direction == 8) //Aherp and Aderp. Jezes I am stupid. -- SkyMarshal + dir_sum += 8 + if(direction == 10) + dir_sum += 64 + if(direction == 9) + dir_sum += 128 + + var/resin_type = 0 //stand_alone table + if(dir_sum%16 in cardinal) + resin_type = 1 //endtable + dir_sum %= 16 + if(dir_sum%16 in list(3,12)) + resin_type = 2 //1 tile thick, streight table + if(dir_sum%16 == 3) //3 doesn't exist as a dir + dir_sum = 2 + if(dir_sum%16 == 12) //12 doesn't exist as a dir. + dir_sum = 4 + if(dir_sum%16 in list(5,6,9,10)) + if(locate(/obj/structure/alien/resin,get_step(src.loc,dir_sum%16))) + resin_type = 3 //full table (not the 1 tile thick one, but one of the 'tabledir' tables) + else + resin_type = 2 //1 tile thick, corner table (treated the same as streight tables in code later on) + dir_sum %= 16 + if(dir_sum%16 in list(13,14,7,11)) //Three-way intersection + resin_type = 5 //full table as three-way intersections are not sprited, would require 64 sprites to handle all combinations. TOO BAD -- SkyMarshal + switch(dir_sum%16) //Begin computation of the special type tables. --SkyMarshal + if(7) + if(dir_sum == 23) + resin_type = 6 + dir_sum = 8 + else if(dir_sum == 39) + dir_sum = 4 + resin_type = 6 + else if(dir_sum == 55 || dir_sum == 119 || dir_sum == 247 || dir_sum == 183) + dir_sum = 4 + resin_type = 3 + else + dir_sum = 4 + if(11) + if(dir_sum == 75) + dir_sum = 5 + resin_type = 6 + else if(dir_sum == 139) + dir_sum = 9 + resin_type = 6 + else if(dir_sum == 203 || dir_sum == 219 || dir_sum == 251 || dir_sum == 235) + dir_sum = 8 + resin_type = 3 + else + dir_sum = 8 + if(13) + if(dir_sum == 29) + dir_sum = 10 + resin_type = 6 + else if(dir_sum == 141) + dir_sum = 6 + resin_type = 6 + else if(dir_sum == 189 || dir_sum == 221 || dir_sum == 253 || dir_sum == 157) + dir_sum = 1 + resin_type = 3 + else + dir_sum = 1 + if(14) + if(dir_sum == 46) + dir_sum = 1 + resin_type = 6 + else if(dir_sum == 78) + dir_sum = 2 + resin_type = 6 + else if(dir_sum == 110 || dir_sum == 254 || dir_sum == 238 || dir_sum == 126) + dir_sum = 2 + resin_type = 3 + else + dir_sum = 2 //These translate the dir_sum to the correct dirs from the 'tabledir' icon_state. + if(dir_sum%16 == 15) + resin_type = 4 //4-way intersection, the 'middle' table sprites will be used. + switch(resin_type) + if(0) + icon_state = "[initial(icon_state)]" + if(1) + icon_state = "[initial(icon_state)]_1tileendresin" + if(2) + icon_state = "[initial(icon_state)]_1tilethick" + if(3) + icon_state = "[initial(icon_state)]_dir" + if(4) + icon_state = "[initial(icon_state)]_middle" + if(5) + icon_state = "[initial(icon_state)]_dir2" + if(6) + icon_state = "[initial(icon_state)]_dir3" + if (dir_sum in list(1,2,4,8,5,6,9,10)) + dir = dir_sum + else + dir = 2 + + /obj/structure/alien/resin/wall/BlockSuperconductivity() return 1 @@ -57,6 +203,13 @@ opacity = 0 health = 120 +/obj/structure/alien/resin/membrane/New() + ..() + update_icon() + for(var/direction in list(1,2,4,8,5,6,9,10)) + if(locate(/obj/structure/alien/resin,get_step(src,direction))) + var/obj/structure/alien/resin/T = locate(/obj/structure/alien/resin,get_step(src,direction)) + T.update_icon() /obj/structure/alien/resin/proc/healthcheck() if(health <=0) @@ -145,11 +298,12 @@ /obj/structure/alien/weeds gender = PLURAL - name = "weeds" - desc = "Weird purple weeds." + name = "resin floor" + desc = "A thick resin surface covers the floor." icon_state = "weeds" anchored = 1 density = 0 + layer = 2.6 var/health = 15 var/obj/structure/alien/weeds/node/linked_node = null @@ -162,7 +316,7 @@ return if(icon_state == "weeds") icon_state = pick("weeds", "weeds1", "weeds2") - + fullUpdateWeedOverlays() spawn(rand(150, 200)) if(src) Life() @@ -226,10 +380,35 @@ healthcheck() +/obj/structure/alien/weeds/proc/updateWeedOverlays() + + overlays.Cut() + var/turf/N = get_step(src, NORTH) + var/turf/S = get_step(src, SOUTH) + var/turf/E = get_step(src, EAST) + var/turf/W = get_step(src, WEST) + if(!locate(/obj/structure/alien) in N.contents) + if(istype(N, /turf/simulated/floor)) + src.overlays += image('icons/mob/alien.dmi', "weeds_side_s", layer=2.6, pixel_y = 32) + if(!locate(/obj/structure/alien) in S.contents) + if(istype(S, /turf/simulated/floor)) + src.overlays += image('icons/mob/alien.dmi', "weeds_side_n", layer=2.6, pixel_y = -32) + if(!locate(/obj/structure/alien) in E.contents) + if(istype(E, /turf/simulated/floor)) + src.overlays += image('icons/mob/alien.dmi', "weeds_side_w", layer=2.6, pixel_x = 32) + if(!locate(/obj/structure/alien) in W.contents) + if(istype(W, /turf/simulated/floor)) + src.overlays += image('icons/mob/alien.dmi', "weeds_side_e", layer=2.6, pixel_x = -32) + + +/obj/structure/alien/weeds/proc/fullUpdateWeedOverlays() + for (var/obj/structure/alien/weeds/W in range(1,src)) + W.updateWeedOverlays() + //Weed nodes /obj/structure/alien/weeds/node - name = "purple sac" - desc = "Weird purple octopus-like thing." + name = "glowing resin" + desc = "Blue bioluminescence shines from beneath the surface." icon_state = "weednode" luminosity = NODERANGE var/node_range = NODERANGE diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index 80cb1fdc642..2df6900028d 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -143,15 +143,13 @@ Doesn't work on other aliens/AI.*/ set category = "Alien" if(powerc(75)) - var/choice = input("Choose what you wish to shape.","Resin building") as null|anything in list("resin door","resin wall","resin membrane","resin nest") //would do it through typesof but then the player choice would have the type path and we don't want the internal workings to be exposed ICly - Urist + var/choice = input("Choose what you wish to shape.","Resin building") as null|anything in list("resin wall","resin membrane","resin nest") //would do it through typesof but then the player choice would have the type path and we don't want the internal workings to be exposed ICly - Urist if(!choice || !powerc(75)) return adjustToxLoss(-75) src << "You shape a [choice]." for(var/mob/O in viewers(src, null)) O.show_message(text("[src] vomits up a thick purple substance and begins to shape it!"), 1) switch(choice) - if("resin door") - new /obj/structure/mineral_door/resin(loc) if("resin wall") new /obj/structure/alien/resin/wall(loc) if("resin membrane") diff --git a/icons/mob/alien.dmi b/icons/mob/alien.dmi index f679da879313baf6f2f5a9938018e9e7ef0b999b..a8466bfeb98cd8dc244d19fa149cdce611a39eab 100644 GIT binary patch literal 103457 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 Date: Fri, 22 Aug 2014 14:25:49 -0400 Subject: [PATCH 008/124] z.restricts cursed item loadouts that would ruin the day of anyone in deep space Moves the robeless casting from uncommon to rare --- code/modules/events/wizard/aid.dm | 2 +- code/modules/events/wizard/curseditems.dm | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/code/modules/events/wizard/aid.dm b/code/modules/events/wizard/aid.dm index 42c9082afb2..73877ce34b4 100644 --- a/code/modules/events/wizard/aid.dm +++ b/code/modules/events/wizard/aid.dm @@ -2,7 +2,7 @@ /datum/round_event_control/wizard/robelesscasting //EI NUDTH! name = "Robeless Casting" - weight = 3 + weight = 2 typepath = /datum/round_event/wizard/robelesscasting/ max_occurrences = 1 earliest_start = 0 diff --git a/code/modules/events/wizard/curseditems.dm b/code/modules/events/wizard/curseditems.dm index 8f359dd6ce1..01f191c61df 100644 --- a/code/modules/events/wizard/curseditems.dm +++ b/code/modules/events/wizard/curseditems.dm @@ -10,19 +10,26 @@ var/list/wearslots = list(slot_wear_suit, slot_shoes, slot_head, slot_wear_mask, slot_r_hand, slot_gloves, slot_ears) var/list/loadout = list() var/list/all_spawned_items = list() + var/ruins_spaceworthiness loadout.len = 7 switch(item_set) - if("wizardmimic") loadout = list(/obj/item/clothing/suit/wizrobe, /obj/item/clothing/shoes/sandal, /obj/item/clothing/head/wizard) + if("wizardmimic") + loadout = list(/obj/item/clothing/suit/wizrobe, /obj/item/clothing/shoes/sandal, /obj/item/clothing/head/wizard) + ruins_spaceworthiness = 1 if("swords") loadout[5] = /obj/item/weapon/katana - if("bigfatdoobie") loadout[4] = /obj/item/clothing/mask/cigarette/rollie/trippy/ + if("bigfatdoobie") + loadout[4] = /obj/item/clothing/mask/cigarette/rollie/trippy/ + ruins_spaceworthiness = 1 if("boxing") loadout[4] = /obj/item/clothing/mask/luchador loadout[6] = /obj/item/clothing/gloves/boxing + ruins_spaceworthiness = 1 if("voicemodulators") loadout[4] = /obj/item/clothing/mask/gas/voice if("headphones") loadout[7] = /obj/item/clothing/ears/earmuffs for(var/mob/living/carbon/human/H in living_mob_list) + if(ruins_spaceworthiness && H.z != 1) continue //#savetheminers var/list/slots = list(H.wear_suit, H.shoes, H.head, H.wear_mask, H.r_hand, H.gloves, H.ears) //add new slots as needed to back for(var/i = 1, i <= loadout.len, i++) if(loadout[i]) From 4639bcec55df6a0ccef2b1a6241f108fca82db0f Mon Sep 17 00:00:00 2001 From: Incoming Date: Sat, 23 Aug 2014 16:31:29 -0400 Subject: [PATCH 009/124] Imposter and department revolt are now bugtested and fully functional. We feature complete save for the nitpicks! --- .../modules/events/wizard/departmentrevolt.dm | 28 +++++++++++-------- code/modules/events/wizard/imposter.dm | 12 ++++---- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/code/modules/events/wizard/departmentrevolt.dm b/code/modules/events/wizard/departmentrevolt.dm index 597e8921240..118220799a1 100644 --- a/code/modules/events/wizard/departmentrevolt.dm +++ b/code/modules/events/wizard/departmentrevolt.dm @@ -8,9 +8,9 @@ /datum/round_event/wizard/deprevolt/start() var/list/tidecolor - var/list/jobs_to_revolt + var/list/jobs_to_revolt = list() var/nation - var/list/citizens + var/list/citizens = list() tidecolor = pick("grey", "white", "yellow", "purple", "brown", "whatevercolorrepresentstheservicepeople") switch(tidecolor) @@ -36,12 +36,18 @@ nation += pick("stan", "topia", "land") for(var/mob/living/carbon/human/H in mob_list) - if(H.mind && H.mind.assigned_role in jobs_to_revolt && !(H.mind in ticker.mode.traitors)) - citizens += H - ticker.mode.traitors += H.mind - H.mind.special_role = "separatist" - H.attack_log += "\[[time_stamp()]\] Was made into a separatist, long live [nation]!" - H << "You are a separatist! [nation] forever! Protect the soverignty of your newfound land with your comrades in arms!" - - if(citizens) - message_admins("The nation of [nation] has been formed. Affected jobs are [jobs_to_revolt].") \ No newline at end of file + if(H.mind) + var/datum/mind/M = H.mind + if(M.assigned_role && !(M in ticker.mode.traitors)) + for(var/job in jobs_to_revolt) + if(M.assigned_role == job) + citizens += H + ticker.mode.traitors += M + M.special_role = "separatist" + H.attack_log += "\[[time_stamp()]\] Was made into a separatist, long live [nation]!" + H << "You are a separatist! [nation] forever! Protect the soverignty of your newfound land with your comrades in arms!" + if(citizens.len) + var/message + for(var/job in jobs_to_revolt) + message += "[job]," + message_admins("The nation of [nation] has been formed. Affected jobs are [message]") \ No newline at end of file diff --git a/code/modules/events/wizard/imposter.dm b/code/modules/events/wizard/imposter.dm index 3d2b538d727..d12f57e3d7c 100644 --- a/code/modules/events/wizard/imposter.dm +++ b/code/modules/events/wizard/imposter.dm @@ -24,12 +24,12 @@ I.dna.uni_identity = W.dna.uni_identity I.dna.struc_enzymes = W.dna.struc_enzymes updateappearance(I) - if(W.ears) I.equip_to_slot_or_del(new W.ears(I), slot_ears) - if(W.w_uniform) I.equip_to_slot_or_del(new W.w_uniform(I), slot_w_uniform) - if(W.shoes) I.equip_to_slot_or_del(new W.shoes(I), slot_shoes) - if(W.wear_suit) I.equip_to_slot_or_del(new W.wear_suit(I), slot_wear_suit) - if(W.head) I.equip_to_slot_or_del(new W.head(I), slot_head) - if(W.back) I.equip_to_slot_or_del(new W.back(I), slot_back) + if(W.ears) I.equip_to_slot_or_del(new W.ears.type, slot_ears) + if(W.w_uniform) I.equip_to_slot_or_del(new W.w_uniform.type , slot_w_uniform) + if(W.shoes) I.equip_to_slot_or_del(new W.shoes.type, slot_shoes) + if(W.wear_suit) I.equip_to_slot_or_del(new W.wear_suit.type, slot_wear_suit) + if(W.head) I.equip_to_slot_or_del(new W.head.type, slot_head) + if(W.back) I.equip_to_slot_or_del(new W.back.type, slot_back) I.key = C.key //Operation: Fuck off and scare people From b47df3a9cf9ac1c32391df0c70db1b89319a4b20 Mon Sep 17 00:00:00 2001 From: Incoming Date: Tue, 26 Aug 2014 17:43:39 -0400 Subject: [PATCH 010/124] Flexes spellllang n bartflags --- code/game/gamemodes/wizard/spellbook.dm | 2 +- code/modules/events/wizard/curseditems.dm | 2 +- code/modules/events/wizard/greentext.dm | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index a03dfbded4d..fbf062feb25 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -113,7 +113,7 @@ dat += "Share the wonders of magic with the crew and show them why they aren't to be trusted with it at the same time.
" dat += "Summon Events (One time use, persistent global spell)
" - dat += "Give murphy's law a little push and replace all events with special wizard ones that will confound and confuse everyone. Multiple castings increase the rate of these events.
" + dat += "Give Murphy's law a little push and replace all events with special wizard ones that will confound and confuse everyone. Multiple castings increase the rate of these events.
" dat += "
" diff --git a/code/modules/events/wizard/curseditems.dm b/code/modules/events/wizard/curseditems.dm index 01f191c61df..0ea04f6650b 100644 --- a/code/modules/events/wizard/curseditems.dm +++ b/code/modules/events/wizard/curseditems.dm @@ -40,7 +40,7 @@ all_spawned_items += I for(var/obj/item/I in all_spawned_items) - I.flags += NODROP + I.flags |= NODROP I.name = "cursed " + I.name diff --git a/code/modules/events/wizard/greentext.dm b/code/modules/events/wizard/greentext.dm index 9c04c198247..6ac5ad460ee 100644 --- a/code/modules/events/wizard/greentext.dm +++ b/code/modules/events/wizard/greentext.dm @@ -72,7 +72,7 @@ /obj/item/weapon/greentext/Destroy() for(var/mob/M in mob_list) - var/message = "A dark temptation has passsed from this world" + var/message = "A dark temptation has passed from this world" if(M in color_altered_mobs) message += " and you're finally able to forgive yourself" M.color = initial(M.color) From ca77a4e31dcaef520b9ac6334b4a70fde0e58bc5 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Wed, 27 Aug 2014 15:16:28 -0700 Subject: [PATCH 011/124] more icons for stuff, nightvision for aliens with hud icon button and toggle verb --- code/_onclick/hud/_defines.dm | 1 + code/_onclick/hud/alien.dm | 8 +++++- code/_onclick/hud/alien_larva.dm | 8 +++++- code/_onclick/hud/hud.dm | 1 + code/_onclick/hud/screen_objects.dm | 5 +++- code/game/objects/structures/mineral_doors.dm | 22 ----------------- .../stool_bed_chair_nest/alien_nests.dm | 8 +++--- code/modules/mob/living/carbon/alien/alien.dm | 1 - .../carbon/alien/humanoid/alien_powers.dm | 23 +++++++++++++++--- .../living/carbon/alien/humanoid/humanoid.dm | 1 + .../mob/living/carbon/alien/humanoid/life.dm | 8 ++++-- .../mob/living/carbon/alien/humanoid/queen.dm | 2 +- icons/mob/alien.dmi | Bin 103457 -> 92873 bytes icons/mob/screen_alien.dmi | Bin 25979 -> 25102 bytes 14 files changed, 52 insertions(+), 36 deletions(-) diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 932d14deeeb..b8734438aac 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -80,6 +80,7 @@ #define ui_alien_toxin "EAST-1:28,CENTER+5:25" #define ui_alien_fire "EAST-1:28,CENTER+4:25" #define ui_alien_oxygen "EAST-1:28,CENTER+3:25" +#define ui_alien_nightvision "EAST-1:28,CENTER+2:25" //Middle right (status indicators) #define ui_nutrition "EAST-1:28,CENTER-3:11" diff --git a/code/_onclick/hud/alien.dm b/code/_onclick/hud/alien.dm index 270d848eab9..797561e37cf 100644 --- a/code/_onclick/hud/alien.dm +++ b/code/_onclick/hud/alien.dm @@ -142,6 +142,12 @@ mymob.healths.name = "health" mymob.healths.screen_loc = ui_alien_health + nightvisionicon = new /obj/screen() + nightvisionicon.icon ='icons/mob/screen_alien.dmi' + nightvisionicon.icon_state = "nightvision1" + nightvisionicon.name = "nightvision" + nightvisionicon.screen_loc = ui_alien_nightvision + alien_plasma_display = new /obj/screen() alien_plasma_display.icon = 'icons/mob/screen_gen.dmi' alien_plasma_display.icon_state = "power_display2" @@ -168,6 +174,6 @@ mymob.client.screen = null - mymob.client.screen += list( mymob.throw_icon, mymob.zone_sel, mymob.oxygen, mymob.toxin, mymob.fire, mymob.healths, alien_plasma_display, mymob.pullin, mymob.blind, mymob.flash) //, mymob.hands, mymob.rest, mymob.sleep, mymob.mach ) + mymob.client.screen += list( mymob.throw_icon, mymob.zone_sel, mymob.oxygen, mymob.toxin, mymob.fire, mymob.healths, nightvisionicon, alien_plasma_display, mymob.pullin, mymob.blind, mymob.flash) //, mymob.hands, mymob.rest, mymob.sleep, mymob.mach ) mymob.client.screen += adding + other diff --git a/code/_onclick/hud/alien_larva.dm b/code/_onclick/hud/alien_larva.dm index d1888d6d369..2775f546c6f 100644 --- a/code/_onclick/hud/alien_larva.dm +++ b/code/_onclick/hud/alien_larva.dm @@ -48,6 +48,12 @@ mymob.healths.name = "health" mymob.healths.screen_loc = ui_alien_health + nightvisionicon = new /obj/screen() + nightvisionicon.icon ='icons/mob/screen_alien.dmi' + nightvisionicon.icon_state = "nightvision1" + nightvisionicon.name = "nightvision" + nightvisionicon.screen_loc = ui_alien_nightvision + mymob.pullin = new /obj/screen() mymob.pullin.icon = 'icons/mob/screen_alien.dmi' mymob.pullin.icon_state = "pull0" @@ -74,5 +80,5 @@ mymob.client.screen = null - mymob.client.screen += list( mymob.zone_sel, mymob.oxygen, mymob.toxin, mymob.fire, mymob.healths, mymob.pullin, mymob.blind, mymob.flash) //, mymob.rest, mymob.sleep, mymob.mach ) + mymob.client.screen += list( mymob.zone_sel, mymob.oxygen, mymob.toxin, mymob.fire, mymob.healths, nightvisionicon, mymob.pullin, mymob.blind, mymob.flash) //, mymob.rest, mymob.sleep, mymob.mach ) mymob.client.screen += adding + other \ No newline at end of file diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 103d639189d..ed7abd1d7ca 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -100,6 +100,7 @@ var/datum/global_hud/global_hud = new() var/obj/screen/blobpwrdisplay var/obj/screen/blobhealthdisplay var/obj/screen/alien_plasma_display + var/obj/screen/nightvisionicon var/obj/screen/r_hand_hud_object var/obj/screen/l_hand_hud_object var/obj/screen/action_intent diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index b0d6037131c..f3910c9e246 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -366,7 +366,10 @@ else if(isrobot(usr)) var/mob/living/silicon/robot/R = usr R.aicamera.viewpictures() - + if("nightvision") + if(isalien(usr)) + var/mob/living/carbon/alien/humanoid/A = usr + A.nightvisiontoggle() else return 0 return 1 diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index 657acb8b02c..e163f334470 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -249,25 +249,3 @@ for(var/i = 1, i <= oreAmount, i++) new/obj/item/stack/sheet/mineral/wood(get_turf(src)) qdel(src) - -/obj/structure/mineral_door/resin - mineralType = "resin" - hardness = 1 - close_delay = 100 - openSound = 'sound/effects/attackblob.ogg' - closeSound = 'sound/effects/attackblob.ogg' - -/obj/structure/mineral_door/resin/TryToSwitchState(atom/user) - if(isalien(user)) - return ..() - -/obj/structure/mineral_door/resin/Dismantle(devastated = 0) - qdel(src) - -/obj/structure/mineral_door/resin/CheckHardness() - playsound(loc, 'sound/effects/attackblob.ogg', 100, 1) - ..() - -/obj/structure/mineral_door/resin/BlockSuperconductivity() - if(opacity) - return 1 \ No newline at end of file diff --git a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm index 4512e2b45cc..01da7d6066e 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm @@ -12,7 +12,6 @@ "[user.name] pulls [buckled_mob.name] free from the sticky nest!",\ "[user.name] pulls you free from the gelatinous resin.",\ "You hear squelching...") - buckled_mob.pixel_y = 0 unbuckle() /obj/structure/stool/bed/nest/unbuckle_myself(mob/user as mob) @@ -22,7 +21,6 @@ "You hear squelching...") spawn(600) if(user && buckled_mob && user.buckled == src) - buckled_mob.pixel_y = 0 unbuckle() /obj/structure/stool/bed/nest/buckle_mob(mob/M as mob, mob/user as mob) @@ -47,11 +45,15 @@ M.loc = src.loc M.dir = src.dir M.update_canmove() - M.pixel_y = 6 src.buckled_mob = M src.add_fingerprint(user) + src.overlays += image('icons/mob/alien.dmi', "nestoverlay", layer=6) return +/obj/structure/stool/bed/nest/unbuckle() + overlays.Cut() + ..() + /obj/structure/stool/bed/nest/attackby(obj/item/weapon/W as obj, mob/user as mob) var/aforce = W.force health = max(0, health - aforce) diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index 0263237a03d..66dd57eafb0 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -33,7 +33,6 @@ var/heat_protection = 0.5 - /mob/living/carbon/alien/New() verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index 2df6900028d..02239466ee4 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -142,10 +142,10 @@ Doesn't work on other aliens/AI.*/ set desc = "Secrete tough malleable resin." set category = "Alien" - if(powerc(75)) + if(powerc(55)) var/choice = input("Choose what you wish to shape.","Resin building") as null|anything in list("resin wall","resin membrane","resin nest") //would do it through typesof but then the player choice would have the type path and we don't want the internal workings to be exposed ICly - Urist - if(!choice || !powerc(75)) return - adjustToxLoss(-75) + if(!choice || !powerc(55)) return + adjustToxLoss(-55) src << "You shape a [choice]." for(var/mob/O in viewers(src, null)) O.show_message(text("[src] vomits up a thick purple substance and begins to shape it!"), 1) @@ -170,4 +170,19 @@ Doesn't work on other aliens/AI.*/ A.loc = loc //Paralyse(10) src.visible_message("[src] hurls out the contents of their stomach!") - return \ No newline at end of file + return + +/mob/living/carbon/alien/humanoid/verb/nightvisiontoggle() + set name = "Toggle Night Vision" + set category = "Alien" + + if(nightvision == 0) + see_in_dark = 8 + see_invisible = SEE_INVISIBLE_MINIMUM + nightvision = 1 + hud_used.nightvisionicon.icon_state = "nightvision1" + else if(nightvision == 1) + see_in_dark = 4 + see_invisible = 45 + nightvision = 0 + hud_used.nightvisionicon.icon_state = "nightvision0" \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index c5c99d24fd7..c3ec78aa6f9 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -5,6 +5,7 @@ var/obj/item/l_store = null var/caste = "" update_icon = 1 + var/nightvision = 1 //This is fine right now, if we're adding organ specific damage this needs to be updated /mob/living/carbon/alien/humanoid/New() diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm index a759c75c0cf..6b3b8196cd0 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm @@ -389,8 +389,12 @@ sight |= SEE_MOBS sight &= ~SEE_TURFS sight &= ~SEE_OBJS - see_in_dark = 4 - see_invisible = SEE_INVISIBLE_LEVEL_TWO + if(nightvision) + see_in_dark = 8 + see_invisible = SEE_INVISIBLE_MINIMUM + else if(!nightvision) + see_in_dark = 4 + see_invisible = 45 if(see_override) see_invisible = see_override diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index 4b47808e80a..a4358eea84c 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -22,7 +22,7 @@ break real_name = src.name - verbs.Add(/mob/living/carbon/alien/humanoid/proc/corrosive_acid,/mob/living/carbon/alien/humanoid/proc/neurotoxin,/mob/living/carbon/alien/humanoid/proc/resin) + verbs.Add(/mob/living/carbon/alien/humanoid/proc/corrosive_acid,/mob/living/carbon/alien/humanoid/proc/neurotoxin,/mob/living/carbon/alien/humanoid/proc/resin,/mob/living/carbon/alien/humanoid/verb/nightvisiontoggle) ..() /mob/living/carbon/alien/humanoid/queen/handle_regular_hud_updates() diff --git a/icons/mob/alien.dmi b/icons/mob/alien.dmi index a8466bfeb98cd8dc244d19fa149cdce611a39eab..fb6dcd22512841ea2268a389f5fc99dd4c4d9113 100644 GIT binary patch literal 92873 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 literal 103457 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

~zpEgGN?ndkZ*Wc2JL1ic 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 WJ)A=b;u3Ht=)R7@oieSb;r|CPh=tGq literal 25979 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 Date: Wed, 27 Aug 2014 17:16:49 -0700 Subject: [PATCH 012/124] awful awful table smoothing pasta replaced with smoothwall modification --- code/game/objects/effects/aliens.dm | 175 +++--------------- code/game/smoothwall.dm | 13 +- .../carbon/alien/humanoid/alien_powers.dm | 2 +- icons/mob/alien.dmi | Bin 92873 -> 77250 bytes 4 files changed, 37 insertions(+), 153 deletions(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index f248e92e0d2..09c583ec679 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -22,18 +22,37 @@ opacity = 1 anchored = 1 var/health = 200 - + var/resintype = null /obj/structure/alien/resin/New(location) + relativewall_neighbours() ..() air_update_turf(1) return +/obj/structure/alien/resin/relativewall() + + var/junction = 0 //will be used to determine from which side the wall is connected to other walls + + for(var/obj/structure/alien/resin/W in orange(src,1)) + if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls + junction |= get_dir(src,W) + var/obj/structure/alien/resin/resin = src + resin.icon_state = "[resin.resintype][junction]" + return + /obj/structure/alien/resin/Destroy() density = 0 air_update_turf(1) ..() return +/obj/structure/alien/resin/Del() + spawn(10) + for(var/obj/structure/alien/resin/wall/W in range(src,1)) + W.relativewall_neighbours() + for(var/obj/structure/alien/resin/membrane/W in range(src,1)) + W.relativewall_neighbours() + /obj/structure/alien/resin/Move() var/turf/T = loc ..() @@ -46,152 +65,10 @@ name = "resin wall" desc = "Purple slime solidified into a wall." icon_state = "resinwall" //same as resin, but consistency ho! - + resintype = "wall" /obj/structure/alien/resin/wall/New() ..() - update_icon() - for(var/direction in list(1,2,4,8,5,6,9,10)) - if(locate(/obj/structure/alien/resin,get_step(src,direction))) - var/obj/structure/alien/resin/T = locate(/obj/structure/alien/resin,get_step(src,direction)) - T.update_icon() - -/obj/structure/alien/resin/update_icon() - spawn(2) //So it properly updates when deleting - var/dir_sum = 0 - for(var/direction in list(1,2,4,8,5,6,9,10)) - var/skip_sum = 0 - for(var/obj/structure/window/W in src.loc) - if(W.dir == direction) //So smooth tables don't go smooth through windows - skip_sum = 1 - continue - var/inv_direction //inverse direction - switch(direction) - if(1) - inv_direction = 2 - if(2) - inv_direction = 1 - if(4) - inv_direction = 8 - if(8) - inv_direction = 4 - if(5) - inv_direction = 10 - if(6) - inv_direction = 9 - if(9) - inv_direction = 6 - if(10) - inv_direction = 5 - for(var/obj/structure/window/W in get_step(src,direction)) - if(W.dir == inv_direction) //So smooth tables don't go smooth through windows when the window is on the other table's tile - skip_sum = 1 - continue - if(!skip_sum) //means there is a window between the two tiles in this direction - if(locate(/obj/structure/alien/resin,get_step(src,direction))) - if(direction <5) - dir_sum += direction - else - if(direction == 5) //This permits the use of all table directions. (Set up so clockwise around the central table is a higher value, from north) - dir_sum += 16 - if(direction == 6) - dir_sum += 32 - if(direction == 8) //Aherp and Aderp. Jezes I am stupid. -- SkyMarshal - dir_sum += 8 - if(direction == 10) - dir_sum += 64 - if(direction == 9) - dir_sum += 128 - - var/resin_type = 0 //stand_alone table - if(dir_sum%16 in cardinal) - resin_type = 1 //endtable - dir_sum %= 16 - if(dir_sum%16 in list(3,12)) - resin_type = 2 //1 tile thick, streight table - if(dir_sum%16 == 3) //3 doesn't exist as a dir - dir_sum = 2 - if(dir_sum%16 == 12) //12 doesn't exist as a dir. - dir_sum = 4 - if(dir_sum%16 in list(5,6,9,10)) - if(locate(/obj/structure/alien/resin,get_step(src.loc,dir_sum%16))) - resin_type = 3 //full table (not the 1 tile thick one, but one of the 'tabledir' tables) - else - resin_type = 2 //1 tile thick, corner table (treated the same as streight tables in code later on) - dir_sum %= 16 - if(dir_sum%16 in list(13,14,7,11)) //Three-way intersection - resin_type = 5 //full table as three-way intersections are not sprited, would require 64 sprites to handle all combinations. TOO BAD -- SkyMarshal - switch(dir_sum%16) //Begin computation of the special type tables. --SkyMarshal - if(7) - if(dir_sum == 23) - resin_type = 6 - dir_sum = 8 - else if(dir_sum == 39) - dir_sum = 4 - resin_type = 6 - else if(dir_sum == 55 || dir_sum == 119 || dir_sum == 247 || dir_sum == 183) - dir_sum = 4 - resin_type = 3 - else - dir_sum = 4 - if(11) - if(dir_sum == 75) - dir_sum = 5 - resin_type = 6 - else if(dir_sum == 139) - dir_sum = 9 - resin_type = 6 - else if(dir_sum == 203 || dir_sum == 219 || dir_sum == 251 || dir_sum == 235) - dir_sum = 8 - resin_type = 3 - else - dir_sum = 8 - if(13) - if(dir_sum == 29) - dir_sum = 10 - resin_type = 6 - else if(dir_sum == 141) - dir_sum = 6 - resin_type = 6 - else if(dir_sum == 189 || dir_sum == 221 || dir_sum == 253 || dir_sum == 157) - dir_sum = 1 - resin_type = 3 - else - dir_sum = 1 - if(14) - if(dir_sum == 46) - dir_sum = 1 - resin_type = 6 - else if(dir_sum == 78) - dir_sum = 2 - resin_type = 6 - else if(dir_sum == 110 || dir_sum == 254 || dir_sum == 238 || dir_sum == 126) - dir_sum = 2 - resin_type = 3 - else - dir_sum = 2 //These translate the dir_sum to the correct dirs from the 'tabledir' icon_state. - if(dir_sum%16 == 15) - resin_type = 4 //4-way intersection, the 'middle' table sprites will be used. - switch(resin_type) - if(0) - icon_state = "[initial(icon_state)]" - if(1) - icon_state = "[initial(icon_state)]_1tileendresin" - if(2) - icon_state = "[initial(icon_state)]_1tilethick" - if(3) - icon_state = "[initial(icon_state)]_dir" - if(4) - icon_state = "[initial(icon_state)]_middle" - if(5) - icon_state = "[initial(icon_state)]_dir2" - if(6) - icon_state = "[initial(icon_state)]_dir3" - if (dir_sum in list(1,2,4,8,5,6,9,10)) - dir = dir_sum - else - dir = 2 - /obj/structure/alien/resin/wall/BlockSuperconductivity() return 1 @@ -202,14 +79,10 @@ icon_state = "resinmembrane" opacity = 0 health = 120 - -/obj/structure/alien/resin/membrane/New() + resintype = "membrane" +/ +obj/structure/alien/resin/membrane/New() ..() - update_icon() - for(var/direction in list(1,2,4,8,5,6,9,10)) - if(locate(/obj/structure/alien/resin,get_step(src,direction))) - var/obj/structure/alien/resin/T = locate(/obj/structure/alien/resin,get_step(src,direction)) - T.update_icon() /obj/structure/alien/resin/proc/healthcheck() if(health <=0) diff --git a/code/game/smoothwall.dm b/code/game/smoothwall.dm index 29800a163e8..5eff7012653 100644 --- a/code/game/smoothwall.dm +++ b/code/game/smoothwall.dm @@ -15,7 +15,12 @@ for(var/obj/structure/falsewall/W in orange(src,1)) if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls junction |= get_dir(src,W) - + for(var/obj/structure/alien/resin/wall/W in orange(src,1)) + if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls + junction |= get_dir(src,W) + for(var/obj/structure/alien/resin/membrane/W in orange(src,1)) + if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls + junction |= get_dir(src,W) /* Commenting this out for now until we figure out what to do with shuttle smooth walls, if anything. As they are now, they sort of work screwy and may need further coding. Or just be scrapped.*/ /*else @@ -41,6 +46,10 @@ else var/obj/structure/falsewall/fwall = src fwall.icon_state = "[fwall.mineral][junction]" + else if(istype(src,/obj/structure/alien/resin)) + var/obj/structure/alien/resin/resin = src + resin.icon_state = "[resin.resintype][junction]" + /* else if(istype(src,/turf/simulated/shuttle/wall)) var/newicon = icon; var/newiconstate = icon_state; @@ -81,6 +90,8 @@ for(var/obj/structure/falsewall/W in range(src,1)) W.relativewall() W.update_icon()//Refreshes the wall to make sure the icons don't desync + for(var/obj/structure/alien/resin/W in range(src,1)) + W.relativewall() return /turf/simulated/wall/New() diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index 02239466ee4..d72d40f40da 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -138,7 +138,7 @@ Doesn't work on other aliens/AI.*/ return /mob/living/carbon/alien/humanoid/proc/resin() - set name = "Secrete Resin (75)" + set name = "Secrete Resin (55)" set desc = "Secrete tough malleable resin." set category = "Alien" diff --git a/icons/mob/alien.dmi b/icons/mob/alien.dmi index fb6dcd22512841ea2268a389f5fc99dd4c4d9113..dcc9b5bb253a6fb1b57b496a0e3a6fdabc09fbb3 100644 GIT binary patch literal 77250 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≷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 From c9d13e7aa7e83d779aacde38c31eb780c89ebdc9 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Wed, 27 Aug 2014 18:32:28 -0700 Subject: [PATCH 013/124] no more hideous smoothtable shit --- code/game/objects/effects/aliens.dm | 10 ++++------ .../structures/stool_bed_chair_nest/alien_nests.dm | 3 +++ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 09c583ec679..73f10d6a636 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -41,17 +41,15 @@ return /obj/structure/alien/resin/Destroy() - density = 0 - air_update_turf(1) - ..() - return - -/obj/structure/alien/resin/Del() spawn(10) for(var/obj/structure/alien/resin/wall/W in range(src,1)) W.relativewall_neighbours() for(var/obj/structure/alien/resin/membrane/W in range(src,1)) W.relativewall_neighbours() + density = 0 + air_update_turf(1) + ..() + return /obj/structure/alien/resin/Move() var/turf/T = loc diff --git a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm index 01da7d6066e..85be91aa910 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm @@ -12,6 +12,7 @@ "[user.name] pulls [buckled_mob.name] free from the sticky nest!",\ "[user.name] pulls you free from the gelatinous resin.",\ "You hear squelching...") + buckled_mob.pixel_y = 0 unbuckle() /obj/structure/stool/bed/nest/unbuckle_myself(mob/user as mob) @@ -21,6 +22,7 @@ "You hear squelching...") spawn(600) if(user && buckled_mob && user.buckled == src) + buckled_mob.pixel_y = 0 unbuckle() /obj/structure/stool/bed/nest/buckle_mob(mob/M as mob, mob/user as mob) @@ -45,6 +47,7 @@ M.loc = src.loc M.dir = src.dir M.update_canmove() + M.pixel_y = 1 src.buckled_mob = M src.add_fingerprint(user) src.overlays += image('icons/mob/alien.dmi', "nestoverlay", layer=6) From ea4350a0a17facb9dec32d147b0c6efadf3e35d9 Mon Sep 17 00:00:00 2001 From: Incoming Date: Thu, 28 Aug 2014 12:10:48 -0400 Subject: [PATCH 014/124] Adds the magicarp event as a rare happening. --- code/modules/events/wizard/magicarp.dm | 36 +++++++++++++++++++ .../living/simple_animal/hostile/hostile.dm | 1 + tgstation.dme | 1 + 3 files changed, 38 insertions(+) create mode 100644 code/modules/events/wizard/magicarp.dm diff --git a/code/modules/events/wizard/magicarp.dm b/code/modules/events/wizard/magicarp.dm new file mode 100644 index 00000000000..bc841a92764 --- /dev/null +++ b/code/modules/events/wizard/magicarp.dm @@ -0,0 +1,36 @@ +/datum/round_event_control/wizard/magicarp //these fish is loaded + name = "Magicarp" + weight = 1 + typepath = /datum/round_event/wizard/magicarp/ + max_occurrences = 1 + earliest_start = 0 + +/datum/round_event/wizard/magicarp/ + announceWhen = 3 + startWhen = 50 + +/datum/round_event/wizard/magicarp/setup() + startWhen = rand(40, 60) + +/datum/round_event/wizard/magicarp/announce() + priority_announce("Unknown magical entities have been detected near [station_name()], please stand-by.", "Lifesign Alert") + +/datum/round_event/wizard/magicarp/start() + for(var/obj/effect/landmark/C in landmarks_list) + if(C.name == "carpspawn") + new /mob/living/simple_animal/hostile/carp/ranged(C.loc) + +/mob/living/simple_animal/hostile/carp/ranged + name = "magicarp" + desc = "50% magic, 50% carp, 100% horrible." + ranged = 1 + retreat_distance = 2 + minimum_distance = 0 //Between shots they can and will close in to nash + projectiletype = /obj/item/projectile/magic + projectilesound = 'sound/weapons/emitter.ogg' + maxHealth = 50 + health = 50 + +/mob/living/simple_animal/hostile/carp/ranged/New() + projectiletype = pick(typesof(/obj/item/projectile/magic)) + ..() \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index ebdf71d9228..821c8d120be 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -266,6 +266,7 @@ qdel(A) return A.current = target + A.firer = src A.yo = target:y - start:y A.xo = target:x - start:x spawn( 0 ) diff --git a/tgstation.dme b/tgstation.dme index 8e72e487e5b..f3a62e33157 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -852,6 +852,7 @@ #include "code\modules\events\wizard\imposter.dm" #include "code\modules\events\wizard\invincible.dm" #include "code\modules\events\wizard\lava.dm" +#include "code\modules\events\wizard\magicarp.dm" #include "code\modules\events\wizard\petsplosion.dm" #include "code\modules\events\wizard\race.dm" #include "code\modules\events\wizard\shuffle.dm" From d3d351dea8d9420cee47514843a02158d0a7266f Mon Sep 17 00:00:00 2001 From: Incoming Date: Thu, 28 Aug 2014 14:37:42 -0400 Subject: [PATCH 015/124] Red Carp! --- code/modules/events/wizard/magicarp.dm | 4 ++++ icons/mob/animal.dmi | Bin 193246 -> 199285 bytes 2 files changed, 4 insertions(+) diff --git a/code/modules/events/wizard/magicarp.dm b/code/modules/events/wizard/magicarp.dm index bc841a92764..2bb0641a9a4 100644 --- a/code/modules/events/wizard/magicarp.dm +++ b/code/modules/events/wizard/magicarp.dm @@ -23,6 +23,10 @@ /mob/living/simple_animal/hostile/carp/ranged name = "magicarp" desc = "50% magic, 50% carp, 100% horrible." + icon_state = "magicarp" + icon_living = "magicarp" + icon_dead = "magicarp_dead" + icon_gib = "magicarp_gib" ranged = 1 retreat_distance = 2 minimum_distance = 0 //Between shots they can and will close in to nash diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi index de5a8113a540e014b6f6227dc9b6aea144f62a52..6466f049aedf21374e44caeaf29a26b37a9bfdbd 100644 GIT binary patch delta 10361 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 delta 4274 zcmb7IcU03$untY-#sZ-!QWQZ@ngSw7XaWKvDi=~8|mND+YxC{;mhAP^F| zlmODJp-C~4AT5+Y2$4_%$;-X}z5m|Zv**mto|)a5@0&flXLnwm#4myW5duIbj)6d+ zU%xouAP~prr&hK>`W}I9PrL$xy!`z@ps+W{JgndRHJ%>q;*|ONkE4Uw16hT|O_|9cdkZ!b_( zZRbBCBK*`4TbnSSWh(ByB&mHfU$65Qhm#qsuh`n`PW;xQp`-}KZw82H5K;IVAzpWI z+&1&7`C0R2q4Se@ytn99=T#CPUSczj70N8B>g`k#THMEE$+9*4JevTU%-!V(r1qSGFPK^|2A}>kend2QaU{t>;EWLVF(*-&R&87{- zd5uGJLx$tLaL`=Za2(*Zz*4`*d9CN4mOolX+^QW4wM!ps-I4Qkz>Zb2ggthwkR|M} zV`(fgU0HKOxaLws`?#j&FAm`f{tu1acON?~3Z8u%%LQ+$_rYDtLv8$|^^p>JZu_^m zzfbidQ%1Wuu4|0j^&_5WW|t7oppnOVUzYN$M3F|%0@npPuHOZt40or`-Y5YTz8ToF zC~dwr7skE_U#&W5;>ddh;z@Pz5AJKvEvCrkJ^0hnW`VC7tH>~;_R1$Hb4}&4{}TRm ziofd@p%pqj231ickR0Z`Xw$FCKzEXz`rb|`#Y8MGduj2cj96v*W%}<;-sY7ZssEPy z&w#v)4dCM?zh4UOuL<%&D}6U^T2YWxydE-n)$@)>V`83Q?O(l^R=2$5-2p+!w|%{j zZ7s!ielkx_eRqsPaEoOX@b~uVWu{%9UI$jTzX6IiA1Qo$6AX^NI=KpU88RO6k2xH>57(nb4^W+r)mMK=jP=ZA4-!mrg56b z9v&_&Ev;zmk!EVr76YCS&BLmoDsJAZ7460K9xhoLo@LwGNBkmA+q~URkafB8Cg~NQ&$Pf>~V{rkfbUD2&2C$4# z%@M;i5kR+Q=4Cc#&(-yn$Kc3L5|OYup2isV~0Q>^gDURYVGBRhKKENjk9|? zU;TU2#nT}p_DDetz(Qf?sV0?kV)sa={#1PLN6RmBBgJ}Z(T8f2lanLfbt4E>Wn8Fe zGaO}TGnrXm9@6{sYxpM3BPxaDZ zC^MA2Pv+8%8K>j2GIrwKqMW#ti=%>THRXCpsgo!vsqE#g&v1N>U~i;p1MW?(+(#j( z7ZU|V-06&qp`m52=!lj1uKvES#J~1qlrOias5fqPb$WKdBTNuffkH*p?=8RPzXIqS zB%_>^7nlst7Gc*+vPW^8LQYgC-Thj)f?Qaiu9t;W{`{wweA%Y6jkbXk3UY|LE5v3e z{o9~7NA=GEzU2kaQDU1ta=tI)Qt8xs?%TJ+q%*~0$1>|p1HUGvB%?6_8Ju?yB_I~K z`UtP|!983Q!R%vOTwHZ}B~B7Y1oqqL-d>BJbtqlg(rpz_seZ4HN1Q z9i`C!)~8&oR?q@PoFRqa8-A#|V}_#_Oi+QA5wQB}UeovC#*a}rg#)!ll_dIdlj%W3 z4;2V~%N&i;k-VrJK@j)v%7NX;!q&pw&$+st{#2E^V=f$h35VWaE@^MRrV7CjSwvLP zHCOO{vvgk*t)0MXCNO1)b#@JsR25pJH@L9V130Rhy*XUA6?eCd?zU$^A{-*~;uUPP zE7J>C)myJ=)BPxePY)wJ3cwk}mL%P?_OEN(3``?S=2xn|NMt$}`ry3olkUVTjoL~3)j!_zGA@4Tu=>Rb{Jt!O z2lRCtojfRBnCxq!ovrZ-__NKeg(pNatYr%;)*rkd`smavWEmfnqS*GRN9akG9`#`& z3s=mTfe~B}g`hNR=12?i5wfP2?O8SE78NCma%!W&b{RsVZ3WPU!9^=OarkAg(_`XB z5)#5t(NN$v(85-WPtaa>H{CU2QD>WoU)k-C@clRi+l)sRDX;oU&Zf+FOdC}gjgYgV zJTV(2ft$15TzI7QTpk_p_HRCsA$#6N>}SO2QfQ?J^lUTa;$#0hcJeg-yNAyXJ?K!; zi4Ab@>v_R-<#y)0Hoym$x}HN3sP892numIUHt|ePVn)Cj%Sh^9|0r~9J3FLa#U>Nu zAV4{)*#b57cx~c~r-z83xW4{GYVhyzVoh4|NQY|t9Y|jsIV{$9Z9BWCw^Gx~BovSH(+shA12 zS~7R}qtj8-pF4x5TQMQ*SE(mH?$Q_gvtkk0dpcyzNX~Z{E7_4e!~pHjdOZ!dQn))# z$GqDS3_G~B6aRAN*ooNLQWU+PWlWp`_KHjPmeC3| zAY<7Rtgw=kl9Ku`X&zx&E0Si}hOap%M1(IHFFdcxC?z^%4!A{h#{ZpZ{&;(_f3Cg3 z{Jn2KSp)};tm5}Gm#(RnzwoONE_Frz_r%bmG7`l06ALg^F(*b5#;uaT%(Bn22*2aC zU(6~|=IZ*UaSg)8f5BRIi=o1=rO1^O?VqnC0!Xmh6D;`IwcQC#T4sO=`)N>*{g`oRiW{lzCDZEE^ zx!3}Om^}UUs5L`-;4uXkisM@tjQ%f28S%f_ss)S}j)J$}zCzIW^u(mQfBL=LP$J5m z^wx+C)2*JBeA8RRLL=#*4#^&$l;l|sO^-URukX=S7yIvYlFUsxo&Wm)_IRMAObjH*UOS+@>sC_mkwqdKo`pOPE;stFvA zB%G1#=@?SM(`TK)`(j&%4Y*Vyfbjb_+x87CKD|&_BZBv9Ly`so`R;``e3+H7XeF6F zp4+peTJqh&wBhM=4%=igMObi-WL@+qJC9kCsU@*5YhTq!Krzo1wf$naT!+A#(! zR>lfT9d`v|@0(q^binAJ4&2yM6TH*mq3amFj{5?H{@=kUtGTc#ZIA-QenwSr7iWU$5{#Rqkwzdp6(L&bUtu@0r?T2 z;Yj)TkU)#fpa@l-)<|vp<9S1P+uip* zJdDvGo-=m{Jj&43*SA}zYhAcMW&K_|C^Kw1Kj!jI^s)e;oMsB=_SE(ruzz*fYJ1YA zd!KZ)LK*w;phV9ZLD|usqOiiq;de@lsuNT*o@PBoZIE0Wo=A)9c>yXvW0}Zs1+Y^$`fbs-$&sSPtdWDV-;ZC4-z+ z^ER?#J$JOwtqT1`WR;O?|!Ah{8$Qt)WNa5p-{L!Ox8uV_|%{>VhsC-FDVE{$uvMubl^{vdJ1TJ`On=xLzC=xV;2ReczyMxaaoRDEO ytM*aC8N2CRCwTu>_ppxP;pN?l`%gJK8EAWQpg=xLne{UPGBz;Nue|O2?0*2&+M8wo From 8b19b2bb387e40d243c71a900f73c1714298bb59 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Thu, 28 Aug 2014 11:50:02 -0700 Subject: [PATCH 016/124] cleanup --- code/game/objects/effects/aliens.dm | 8 +++++--- code/game/smoothwall.dm | 1 + .../mob/living/carbon/alien/humanoid/alien_powers.dm | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 73f10d6a636..abae3fe8881 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -40,7 +40,7 @@ resin.icon_state = "[resin.resintype][junction]" return -/obj/structure/alien/resin/Destroy() +/obj/structure/alien/resin/Del() spawn(10) for(var/obj/structure/alien/resin/wall/W in range(src,1)) W.relativewall_neighbours() @@ -66,6 +66,7 @@ resintype = "wall" /obj/structure/alien/resin/wall/New() + relativewall_neighbours() ..() /obj/structure/alien/resin/wall/BlockSuperconductivity() @@ -78,8 +79,9 @@ opacity = 0 health = 120 resintype = "membrane" -/ -obj/structure/alien/resin/membrane/New() + +/obj/structure/alien/resin/membrane/New() + relativewall_neighbours() ..() /obj/structure/alien/resin/proc/healthcheck() diff --git a/code/game/smoothwall.dm b/code/game/smoothwall.dm index 5eff7012653..551b2dfce59 100644 --- a/code/game/smoothwall.dm +++ b/code/game/smoothwall.dm @@ -92,6 +92,7 @@ W.update_icon()//Refreshes the wall to make sure the icons don't desync for(var/obj/structure/alien/resin/W in range(src,1)) W.relativewall() + W.update_icon() return /turf/simulated/wall/New() diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index d72d40f40da..a33bf7c6bd3 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -176,7 +176,7 @@ Doesn't work on other aliens/AI.*/ set name = "Toggle Night Vision" set category = "Alien" - if(nightvision == 0) + if(!nightvision) see_in_dark = 8 see_invisible = SEE_INVISIBLE_MINIMUM nightvision = 1 From 51f1dcc4f5753e0ac2ed843aadd9a594fa76a2d5 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Thu, 28 Aug 2014 14:14:05 -0700 Subject: [PATCH 017/124] fixed larva night vision --- code/modules/mob/living/carbon/alien/alien.dm | 16 ++++++++++++++++ .../living/carbon/alien/humanoid/alien_powers.dm | 15 --------------- .../mob/living/carbon/alien/humanoid/humanoid.dm | 2 +- .../mob/living/carbon/alien/humanoid/queen.dm | 2 +- .../mob/living/carbon/alien/larva/larva.dm | 1 + .../mob/living/carbon/alien/larva/life.dm | 8 ++++++-- code/modules/mob/living/living_defines.dm | 1 + 7 files changed, 26 insertions(+), 19 deletions(-) diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index 66dd57eafb0..10ccb380822 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -33,6 +33,7 @@ var/heat_protection = 0.5 + /mob/living/carbon/alien/New() verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down @@ -194,6 +195,21 @@ playsound(C, 'sound/voice/hiss5.ogg', 40, 1, 1) //Alien roars when breaking free. ..() +/mob/living/carbon/alien/verb/nightvisiontoggle() + set name = "Toggle Night Vision" + set category = "Alien" + + if(!nightvision) + see_in_dark = 8 + see_invisible = SEE_INVISIBLE_MINIMUM + nightvision = 1 + hud_used.nightvisionicon.icon_state = "nightvision1" + else if(nightvision == 1) + see_in_dark = 4 + see_invisible = 45 + nightvision = 0 + hud_used.nightvisionicon.icon_state = "nightvision0" + /*---------------------------------------- Proc: AddInfectionImages() Des: Gives the client of the alien an image on each infected mob. diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index a33bf7c6bd3..3bb33028ea0 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -171,18 +171,3 @@ Doesn't work on other aliens/AI.*/ //Paralyse(10) src.visible_message("[src] hurls out the contents of their stomach!") return - -/mob/living/carbon/alien/humanoid/verb/nightvisiontoggle() - set name = "Toggle Night Vision" - set category = "Alien" - - if(!nightvision) - see_in_dark = 8 - see_invisible = SEE_INVISIBLE_MINIMUM - nightvision = 1 - hud_used.nightvisionicon.icon_state = "nightvision1" - else if(nightvision == 1) - see_in_dark = 4 - see_invisible = 45 - nightvision = 0 - hud_used.nightvisionicon.icon_state = "nightvision0" \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index c3ec78aa6f9..8d4476721bb 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -5,7 +5,7 @@ var/obj/item/l_store = null var/caste = "" update_icon = 1 - var/nightvision = 1 + nightvision = 1 //This is fine right now, if we're adding organ specific damage this needs to be updated /mob/living/carbon/alien/humanoid/New() diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index a4358eea84c..4b47808e80a 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -22,7 +22,7 @@ break real_name = src.name - verbs.Add(/mob/living/carbon/alien/humanoid/proc/corrosive_acid,/mob/living/carbon/alien/humanoid/proc/neurotoxin,/mob/living/carbon/alien/humanoid/proc/resin,/mob/living/carbon/alien/humanoid/verb/nightvisiontoggle) + verbs.Add(/mob/living/carbon/alien/humanoid/proc/corrosive_acid,/mob/living/carbon/alien/humanoid/proc/neurotoxin,/mob/living/carbon/alien/humanoid/proc/resin) ..() /mob/living/carbon/alien/humanoid/queen/handle_regular_hud_updates() diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 997fa314919..1591622ffaa 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -8,6 +8,7 @@ health = 25 storedPlasma = 50 max_plasma = 50 + nightvision = 1 var/amount_grown = 0 var/max_grown = 200 diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index b7f6cb35a41..f0a4f1278a0 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -301,8 +301,12 @@ sight |= SEE_MOBS sight &= ~SEE_TURFS sight &= ~SEE_OBJS - see_in_dark = 4 - see_invisible = SEE_INVISIBLE_LEVEL_TWO + if(nightvision) + see_in_dark = 8 + see_invisible = SEE_INVISIBLE_MINIMUM + else if(!nightvision) + see_in_dark = 4 + see_invisible = 45 if(see_override) see_invisible = see_override diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index a1de3adb051..8940eff8099 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -38,3 +38,4 @@ var/ventcrawler = 0 //0 No vent crawling, 1 vent crawling in the nude, 2 vent crawling always var/floating = 0 + var/nightvision = 0 \ No newline at end of file From 1d61d02af79e01ac8d79478e2dc8bf73ecd05894 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Thu, 28 Aug 2014 14:24:40 -0700 Subject: [PATCH 018/124] qdel --- code/game/objects/effects/aliens.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index abae3fe8881..661c7f4802c 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -40,7 +40,7 @@ resin.icon_state = "[resin.resintype][junction]" return -/obj/structure/alien/resin/Del() +/obj/structure/alien/resin/Destroy() spawn(10) for(var/obj/structure/alien/resin/wall/W in range(src,1)) W.relativewall_neighbours() From 7b110f6a30c5e28642c6c94a31f189a600266bd9 Mon Sep 17 00:00:00 2001 From: Menshin Date: Fri, 29 Aug 2014 01:04:53 +0200 Subject: [PATCH 019/124] Fixes skeletons unable to play xylophone on their ribcage (#4594) --- code/modules/mob/living/carbon/carbon.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 13c0fcc5e78..6a561028ed2 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -205,7 +205,7 @@ src << "You're completely exhausted." else src << "You feel fatigued." - if(dna && (dna.species == /datum/species/skeleton) && !H.w_uniform && !H.wear_suit) + if(dna && dna.species.id && dna.species.id == "skeleton" && !H.w_uniform && !H.wear_suit) H.play_xylophone() else if(ishuman(src)) From 72760368b51c4efcd601bea58de6c7265291d9ab Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Thu, 28 Aug 2014 16:33:36 -0700 Subject: [PATCH 020/124] fixed icons not changing on wall destruction --- code/game/objects/effects/aliens.dm | 20 ++------------------ code/game/smoothwall.dm | 22 +++++++++++++--------- 2 files changed, 15 insertions(+), 27 deletions(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 661c7f4802c..63b9749a5ed 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -29,27 +29,11 @@ air_update_turf(1) return -/obj/structure/alien/resin/relativewall() - - var/junction = 0 //will be used to determine from which side the wall is connected to other walls - - for(var/obj/structure/alien/resin/W in orange(src,1)) - if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls - junction |= get_dir(src,W) - var/obj/structure/alien/resin/resin = src - resin.icon_state = "[resin.resintype][junction]" - return - /obj/structure/alien/resin/Destroy() spawn(10) - for(var/obj/structure/alien/resin/wall/W in range(src,1)) - W.relativewall_neighbours() - for(var/obj/structure/alien/resin/membrane/W in range(src,1)) - W.relativewall_neighbours() - density = 0 - air_update_turf(1) + var/turf/T = loc + T.relativewall_neighbours() ..() - return /obj/structure/alien/resin/Move() var/turf/T = loc diff --git a/code/game/smoothwall.dm b/code/game/smoothwall.dm index 551b2dfce59..2be0357f07d 100644 --- a/code/game/smoothwall.dm +++ b/code/game/smoothwall.dm @@ -15,12 +15,6 @@ for(var/obj/structure/falsewall/W in orange(src,1)) if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls junction |= get_dir(src,W) - for(var/obj/structure/alien/resin/wall/W in orange(src,1)) - if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls - junction |= get_dir(src,W) - for(var/obj/structure/alien/resin/membrane/W in orange(src,1)) - if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls - junction |= get_dir(src,W) /* Commenting this out for now until we figure out what to do with shuttle smooth walls, if anything. As they are now, they sort of work screwy and may need further coding. Or just be scrapped.*/ /*else @@ -46,9 +40,6 @@ else var/obj/structure/falsewall/fwall = src fwall.icon_state = "[fwall.mineral][junction]" - else if(istype(src,/obj/structure/alien/resin)) - var/obj/structure/alien/resin/resin = src - resin.icon_state = "[resin.resintype][junction]" /* else if(istype(src,/turf/simulated/shuttle/wall)) var/newicon = icon; @@ -141,4 +132,17 @@ junction |= get_dir(src,W) var/turf/simulated/wall/wall = src wall.icon_state = "[wall.walltype][junction]" + return + + +/obj/structure/alien/resin/relativewall() + + var/junction = 0 //will be used to determine from which side the wall is connected to other walls + + for(var/obj/structure/alien/resin/W in orange(src,1)) + if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls + junction |= get_dir(src,W) + var/obj/structure/alien/resin/resin = src + resin.icon_state = "[resin.resintype][junction]" + return \ No newline at end of file From 2d3756f5097e71dc83ea73374ac48fa7e1aa1623 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Fri, 29 Aug 2014 10:13:37 -0700 Subject: [PATCH 021/124] nest pixel_x adjusted --- .../objects/structures/stool_bed_chair_nest/alien_nests.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm index 85be91aa910..5428ec16cd3 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm @@ -13,6 +13,7 @@ "[user.name] pulls you free from the gelatinous resin.",\ "You hear squelching...") buckled_mob.pixel_y = 0 + buckled_mob.pixel_x = 0 unbuckle() /obj/structure/stool/bed/nest/unbuckle_myself(mob/user as mob) @@ -23,6 +24,7 @@ spawn(600) if(user && buckled_mob && user.buckled == src) buckled_mob.pixel_y = 0 + buckled_mob.pixel_x = 0 unbuckle() /obj/structure/stool/bed/nest/buckle_mob(mob/M as mob, mob/user as mob) @@ -48,6 +50,7 @@ M.dir = src.dir M.update_canmove() M.pixel_y = 1 + M.pixel_x = 2 src.buckled_mob = M src.add_fingerprint(user) src.overlays += image('icons/mob/alien.dmi', "nestoverlay", layer=6) From 01b01609fedd953ef5eded567742976d0ff9da01 Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Fri, 29 Aug 2014 16:38:27 -0700 Subject: [PATCH 022/124] egg click cooldown fixed, HEADCOVERSMOUTH removed from inappropriate items --- code/game/objects/effects/aliens.dm | 2 ++ code/modules/clothing/head/helmet.dm | 2 +- code/modules/clothing/head/misc.dm | 6 +++--- code/modules/clothing/head/misc_special.dm | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 63b9749a5ed..25e1fd9cbaf 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -327,6 +327,7 @@ /obj/structure/alien/egg/attack_hand(mob/user) user << "It feels slimy." + user.changeNext_move(CLICK_CD_MELEE) /obj/structure/alien/egg/proc/GetFacehugger() @@ -378,6 +379,7 @@ playsound(loc, 'sound/items/Welder.ogg', 100, 1) health -= damage + user.changeNext_move(CLICK_CD_MELEE) healthcheck() diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index cdb458b7a80..3be8a220a74 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -87,7 +87,7 @@ name = "gladiator helmet" desc = "Ave, Imperator, morituri te salutant." icon_state = "gladiator" - flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR + flags = HEADCOVERSEYES|BLOCKHAIR item_state = "gladiator" flags_inv = HIDEMASK|HIDEEARS|HIDEEYES diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index af4e34f1f84..1c473a51679 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -57,7 +57,7 @@ name = "cueball helmet" desc = "A large, featureless white orb mean to be worn on your head. How do you even see out of this thing?" icon_state = "cueball" - flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR + flags = HEADCOVERSEYES|BLOCKHAIR item_state="cueball" flags_inv = 0 @@ -80,7 +80,7 @@ desc = "A helmet made out of a box." icon_state = "cardborg_h" item_state = "cardborg_h" - flags = HEADCOVERSEYES | HEADCOVERSMOUTH + flags = HEADCOVERSEYES flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE /obj/item/clothing/head/justice @@ -88,7 +88,7 @@ desc = "fight for what's righteous!" icon_state = "justicered" item_state = "justicered" - flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR + flags = HEADCOVERSEYES|BLOCKHAIR /obj/item/clothing/head/justice/blue icon_state = "justiceblue" diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 653e21fd811..d16ac285b99 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -111,7 +111,7 @@ icon_state = "hardhat0_pumpkin" item_state = "hardhat0_pumpkin" item_color = "pumpkin" - flags = HEADCOVERSEYES | HEADCOVERSMOUTH | BLOCKHAIR + flags = HEADCOVERSEYES | BLOCKHAIR flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE action_button_name = "Toggle Pumpkin Light" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) From 2a7d7d522f463fa6a98b0beaec4b1869bb15479c Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Fri, 29 Aug 2014 18:11:01 -0700 Subject: [PATCH 023/124] fixes aliens resting/crit sprites --- .../carbon/alien/humanoid/update_icons.dm | 7 ++++++- icons/mob/alien.dmi | Bin 77250 -> 77424 bytes 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm b/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm index d13c7984cee..4a0eb0f3401 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm @@ -18,9 +18,14 @@ //If we mostly took damage from fire if(fireloss > 125) icon_state = "alien[caste]_husked" + pixel_y = 0 else icon_state = "alien[caste]_dead" - else if(stat == UNCONSCIOUS || lying || resting) + pixel_y = 0 + else if(stat == UNCONSCIOUS) + icon_state = "alien[caste]_unconcious" + pixel_y = 0 + else if(lying || resting) icon_state = "alien[caste]_sleep" else if(m_intent == "run") icon_state = "alien[caste]_running" diff --git a/icons/mob/alien.dmi b/icons/mob/alien.dmi index dcc9b5bb253a6fb1b57b496a0e3a6fdabc09fbb3..4ed309c1a11ecb5275568514220eace938a72ca1 100644 GIT binary patch delta 54612 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�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 delta 54437 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%0D<Cv-U8<7Q+RzAgtd& zMbqRUlC zp4(C>3gmVa%o~PUS{;;NAj~$5t3JH+M#b9SpL}%m@upN@WAw|H5AEf0XCH1b4y1 z0qMQ;rU?f2%^IA>wX~TR62xT`qE^2ct$)M3pJR6pM5Nns>Zxu86c#V{e>f?PJUNv^ z<=ku7rFvMA8rZ)dpnnkd|62|#I>90P)Z8l2T9YnZ+u~-@buJ5@MJ*mhNTnM$BoR0( zALK2OQfdF7VCJ%VXF1(u$tyzrMwR~{iGRk5{ykSM&fsyu=Bh+At-a?2ROiNcoHRLROIY2pouxzNwpq0%#@qgR;PI6 zQqdUYNUef=JLhr2m8w;3TdQBf!r>tP-m3Z!tpM-WC7GAS(8l4)4je8uPKUvBpYOHR zjp_mzV_-N;umC1F)rZzOb=sH3Wp%9`M@uZ zdXF<)>PK9lB|B_(ZKDG{Ey#TzX8Dp#tLe(z(?>c`SR20F8b>|P`p(+RHcN$@HLcrt zFs&vvY{xJsB{2m)`i$8myo>kYmp@1m_VyWs`wJZ$rS1(eik2y8?N!xh=q6)Wn`OsP z4we6XsgWYe55hFbYvQ3+aHe@3!&2{e@%k*3Z@*v>+kXRglx3D)F=LO!B1iGc^hwf2 ziNgMdcuEriiGd$edhwkNm?fQ9?(wjyI5_adsoWN{r?{0)Nf%2Yx=JOQA!OM2jSyyN zs#&?=Kh1915(r)9O(8lBq$Y00J1w~G=?UAbH_W9j%)fJqe06g({B`eKqmap*M|3DSv4d9_ZT}F`iOsm4nsjiMH#UT&5yo|vKhL>^f^Qt~VBwwfn;%AZFahn_-D+udb zi%@V?l1>Q)N-$tvtLQpAB8d8~grOp)5agu@*CdX%y-M6nYo9`-k#?YrVV>}Efzn7c z(kMjJ1r2|!SPot3!q%0C_?FgV>o-MN1c!1$%IDE_cD_y7hcuD+JxfZ~cB1cQX-t)b zvm=Q$)IN=hvi6fkVCsGM@Eg6%hH~gx1+QtI4GvmgtC~GJ_ODdJAfh1UOQQL`gk}1h zFd*t^rK`qe)RHA^(wWrqxa%wsCGW(R*3+iO2`{;3c0(b_PUiU@5ux1fEd?&x?t3`S zuV!XI5uMf^Ni(YXYpvE|4ywXwT_d`9KxrQ6^mK~)z`GW0tXBysXtJ7(raYjI7ONiHNix1Rf{1-PP z%)GCm;dIS&!mP(uSB+<0XbtC*rZI+~I(v*GAr~6Psc+y6Vz79Koo~aoN(RhQIHB*u zV_m>qNW=aTHbDbq&T0C2h%Tr5rJoT~O9}ufW8?1+c{>hYALU5Kidf#z-pFQvmgk8~ zTRt2(gj4R{#nVb7VfD-_DWNaaYL09;HF}z(psE9LnJ|^GNtR?7bpc(hZcRqX@4yt> z{3@CzaF2_K1Us2PTYW5;nP(@vAm+!%FFhaINl7{&Sm$Czy58GnUa^c)7FKqZI<4;Q z>Xr%)`h|tf_np=s3cBmvPh3_#rTYg+U~kSN$&gN8)T!yU3rAp`e0U{e37*D*7obi| zbItSpY3Ivi$G7GLA-zt*^ReUog9Alpbq}DF$v9KVDP0WT_iiz9S;5~;S|n@++cm`y zZwh4Xl2}BMQd(NJj{7JDLm$`ev^#xKbX|2Z!Z9O&PHM2faJSR-`VRkDdmdsQoz{OX zg_2wGjBlZb=f$Q3Op`$LN*T*l_6YOBuyWsQuxegEOp3cwTpm{HS0navnc%U;FF3)y zui-{_F!BC!AhaYaV{Y(L@;C6VK@vGbID&&MK1&!UDL$+UpHSiTRZ?o$o-ad__m&Ds zH~GV%peOlp)DhJ1??8afjFaYL3s8!DHL5U+zz*8@BF~R2sY&{ubow;;Uv7cVUUX5C zG=*EY)|F-1l^ZAaKBrK-Fa<4#lSD_pKntgEr`FJ6jfb;;I7=FdiB?8;#qOd8HgVNyfqnB*)wuD{ign~Stc3=yNgo7& z&j_s&k)Lpif>XZB-CO7IV|JoSkyh6CR4`*6@@e@3ky=$lifi) zRr%??^#{Yw`5k(uGlT|x3|IfH@ou+;_&^+e`fIwDsWm&iLy+EOeEx>(sefBh)WO+G z52&%OY5T$~MJFcCm2OdAN7puSBF<-a)) z=V|3449gh!-v7GlDIsw5k~XBrjO0`CjY}3$Z99n0{x4_M_P6aF9E|gDjb51#+Yo<_c2;4v&NB%GeSScHfi(3v{h4`3bC$C;!o@(HTi3mH;xEOOO}{r2mYcBY%6vnYtZGaQxU+|FA=Od7NNK@{~rG1!y34T)?`@ zUh6>ghZu-x)}+k4-VAD9H9^wc-#fvERM=s(FW$EW9?BKGbQ&3@eX|B;R)-gDOLZ`K z)RZIiDTg!?-%Y0Zg8pOJJK4s-v@-o^{O{K-%D1#$hm9N+W}=+=EP3>DqW9dV-8x(- zX`H(zs~)TIG6SRpfFz@S2^+gM2WTh*@CIuIa8eLrx-Tl;%?b@>nY`ADe(4VQPnCQk zP}+b%6=z!O2{u`;KI}r&?gdrfri|sq3w~XM+G;DjlM3hzYt>TyfWEWr7=+~R)C^7! z{bxD5ch7zEPtAFAZrj$KfNdV#B9_Al7fLFZ$gXFq6_m)e{V0?boEt8+)c~l1Pf^(r z08Aaf78f6eNtD9NzPkocPS8N8eH%8md#;Hj)J+uBkpwC9^ei$ytn7)*8^67{(ikmk zCV^oBKOh9EkBuc`q2krle#k{fW#f2*CUOQZV}R^hO55fpzqh3 zl}`lcMtW(SS-84Z#2|?OvsCp1ZB$@)BfkHP`NWpX1RJ&KyLY=;GSH8WwXFl6(hVhf zzEQnbyOISdLm@`Z^mG)n?v|t&z=OgBf`)Eczp@BJPa5u5ScznhYS4s7P$2C zoZ{l$UC2G*OFu4A!0M(0uh{&8<&3Sf(38L_RQq$j1qZ=_=0V&O+A}D;edGHsP^lUu z_&t3v4WID|x+Y9}GCif2=z(b{pn%aWN0_MYeBg56JD}yfCiIuDfwqf+~R ziLGv>@m4bTWj*wBj_mOL-xtFsONBanQ?ZEWY4y(7#a?Iu^t}}-T#ay#_bP${lf92X zl(^Nx^2S_RKWgLwODrnjBp7C-aPJP!@(x$t{WX5??FoW1Ej}_|kqxK|=6fwA6qxoM zR>9Pwcod`AYgN@mS(S>gB!1mBN^mM3ETqLGmZRk`tQ(73@PSgxuk9-%3rF)RMsvoi z0mtF_6y%H6dv-W}<(3ZR8A>h9Th;z_3As zBTzWe@+tMqjQ?SM0MIX|?X3$3A6vi34O4Y^tOL@&djP)O9XPYBdN+3v`_kkVFrW9I( z*w|PZA*$KBCR`CJbr})6Qs+dwl3o5&OK|B0>8tzod*7Rb!EKg%u>k;#ZB?Eqbulbe zMptq)y2$y@$gQrgN4%zet==^>HWojj$Y8#s@^q*-IY-#+=Xp>yBwx{G9UcF@z!ol1Mn`X~vco3YKHbFrX#*f-PKa20 z`%g_qdY{=g^!M!=QVT6$1l4I!_7w2hv^zZkrT{Wa(|LA`g&&qS<{%N2!sS!2>fxBj zg@5VYV}JAJo6|JsUZGzAg-fH=uZ>BC$q;e8_1#_lr(V*89l-!}c+RfNXR-b+BKv2<7~pBb&u$kMG;pVxYh01RPIY!TJOS;f@OTKz@P1MeoWdGzY+U z&B0ZN^Wk;~2^OcJbtN=dY?u!QHf423%ugjb^)Fl|zPb?N>$T6;ik(~~QfOU%IF83( z2H)zec!t+>LP7IPRxaVoAa_+)3^)upKGsCL1nk;n2)MODA0`o&dw28CjkAIqiE6hR zLcr)%$`b3|z|U6bSv4SKDD_J+i7w&a6J)v%3Rh9_i}46x>1HxM9Zp~J2EpV#M(-ju zg49IZY);3oP9Jg6rb;ZN0U*^r_Ff6l6|}YR9~0fXar|S2IczM<3J!eraVPV^(*j+w zZztPV1jpY(-mLmfjPxlEmQ{bME+yWAH0V2M&cXlMpVe8fB*+0My?Wqe$t05OJui|G zF&~c$JQ9Pc6?DO>)tqQM2-xp9@q#a<`H_?A7qmDl8R8%nj;dSm!8sEK@K^95Fq3jZ%f4i9Xitjw$5UFl{(K3~G6U zY3%#ZzOgW{bdc6u5eKZb&d682(e9MgR15P3Yu0>fATB6eh#^hnBB5J}zXx-G5d+(u zy(v3D(VadG(}KiZqfP94L}K=NPcS<)*jaBzDE>dLOMWmIy|5x9Edih%pg}H$3;G8% z2SX7S(|qsx?A&IKWUPivlmf%ZVxxJkdi&5?gq4?XTc1TTd?;rZWY|NV4pdY*pHsd2 zaA#*mRygoeLC3VlHYQitSm-L}3-=ROZ@QSca->x@KQI@c< z?{Vi&1aW4)xC{~1+Z+Wxrul13m$COrN~_k!ZMp-{=01nM7MElOGl;{EboB z=n9Af?md`2o&S{Re2&H<*vZX}B2I-KY)|g*CptX#2cmq{a0;{O2WqE|q<|S7o5P~I z^4@(w%lS{6+y6x$Rp8io^J&323-G6&CBjmZ@#uyISie2}{^`}X!XhtkRh6K|eST7`V(1w7#w=%k)yEnp!%O3Bb#CP_+v4ef@|tgD}8%{+sp~ zmpQU`(8~kU=ofqV7jEP1j_q9`6y%-1$Zj3m!t)Lj2_1%lF%*wiX1&XpefZwT`EHE^ z=HxP{D=Ocqai#U;*qHGxgF2|XH@qN_8YF1Y_>kFyO6V$OcD_}+txq$EzrP;NP4;or zh~-e4tXG}F$aFtaS-?;s?mQ2U45YNrufM+!p;uL7cs84mm~9(ya18515^x3&(>z7x zR2MP%t1v;S2f}=!DSXIxU^lIOHBog-tf8^7B5!7ULgr4#QXkRc3%}zj0BQAZQN?z} z#c@KMX?@m?MIoBJM2xsU-Q&-^-W{2R_lFRcW#a94R^uym02 zHxpY@aI~lRA;OupbPO}`6p*%O^`2{R_U|A|_pmCuzX7{ht?jF4Ph(?gUUQ{}}X&Ha{AyD!fF^E7sEUHxi& z%$y*^nbfa_?N>=zWX;s4NSO>rDPEm4Ws)vq+K?Wf1IL}{_J?PyU#|kv1eE!~0p5g@ zq@XbGYpp_MB8oKk^+U3E156)vAJm(=#KmWZcFcup6?QETbVPOA02n_}Z$fVJs{YaX)_w1BwfcJ#naVF=Ga*$(hE;vv&;`1aCgbN(BF@TVI{>&BC+QMXc96*oni44%%Q&`WY4p z(AnXRrKHho!TD?%AAIVjD>IG4PJg}btgO)SWW%byvv=(&X(CSdGVmZqS5e&5Is;!5g|1B=yLA&x~w}oHG6ZF=m?BukF1R}*j<>&jIbE#1jlX_ zSw$*l@afmjsOK=m3@G3$b)?N2j~q3M`X&U-zdEUTsGXixx@T)@fG1m5b)R_oB3>D1nJ;hvRj$b7V5lq<JBhd6&?!upL?J#bg$E^5D_TtXfO=FnbI;iHECMi-<)C9j*d2L8~`dksc=!t#s)l_WS3-AxP zMjA?pdz%5d62NMw!ifpyT&EhVDO1V|`KZsJf`z&-SUk0I3pJ&w1Z2!vVt2kERcmUv zwiiB(fFR=%nW|A{tu@+Fyue{dfXKpi_518{Zp3fgSU9r(jO5Q0?pd3w3TFH^);Jnb zc}eDrqZ`Zc(?=hmO_#V#846HH0Q#^xX$%)Y3BfZIWwYuZ1XGFFy8o$pei8r^mALEo znCo))?~OWzap#ahc>HOrEG#Dz730?mI>tIGuc_Ij^*9xkaeiwfj6sO!V%IYs$S2u$a?%rS|&Z1 zPek)x#dycY+I?%W;I4(bVr)m!r4Q81rrYM<4vsSnD1&cr;6R5GRA?8Zx*)r9otBUC z>?nOMCn;*n71{M^Aj}YvTVV$+>;&yJ6_ueti?RVK6xM8?Sx}Kqb(};!mkJg-LY9rr zfpL7-AE@W5xP`sJOqrSFvkGzSpLpC)6IVQ#q-!H}l`n&%f+f!@rJj$X-rJiGujh@v z1iUE0wG_oWe~8S|*tN>BYcF6I12@;#+5ur;mD_$cDjcZN+H-aUVK}}SGUZ?AvkiF@ zw^woc9DxgCmdHL^e2L!`9E2kgdA2C5c8lP94Ao@W=rwNAu1e;aBzUcAM#bNL#cjy}DcTJ3NAi~eg5Qm4pa9)GdQDvWT zxpP*>L788#DSjgn9%wQ^ zKdn9P!0g8H?%hh~m+;@aZC*|o7&}IpF_vJ2qzpY!prmvH8#t699Itog@Y9!nb5!~H ziSfTL=m2t)=#jLjm%TkXs0n4&x!CPY!tjQF^}C9+B=1h?;0_tQug})yVVCL+$gzOe zXqL;;ZLakN=QN@8H~eN4Ag0a+T|M!5?@1M@0;HbM9M-+;GuVRnRa05RRp7Ql5#&vh}oK8Ar<$G@^B1x-pcuD)rmj(Jt zxC9vVak1|?YH=bbh|i~K7^Gw56pqO`I&`N|($MtL`RZ%qAfhRVJt{K44{H(llsvd) z7KdSbcEl)N#`&j;+2ttgV1Yh=85ilGV1D$-`?Lmecwo_}q9YD>7LX@JUkRCXns1bh z$&1bi&3g(Kwqw>b@pdIE=7h+Z5D^y3fr_nA?j`9|yQwxNMRS68XZvdODJn-T%Pup@ z`CCcJNoTrg)(RA*qfs*U(YPo!gJag`3_R2(FK;n&4d*kOrOF?})vgff= zHU@315 z-jj=U{{vgUn3~Bo>~|%Zx?5cw^XZh)*Lli%^A6>i9D6C8p(4GE zSH&jXqd?)L{?+8OeM`)>%yKeR>|Ak8%xvJnQS1(;jN=QYNk+y*W9-)KpsL6=e)Lx2 z?_gzUnE#DOJ2pit&DKBo`8>Q9ceaJt+QZ48YZq?Ap~26FRf@?yArf!XFuzO|W}ad3 z@BZ*lb*Ttj@zd1O?p;F0n*((%OJtPQfuD;co^fq4eZ`Av7y)nj#Q0PqBafcCl=js~ z*L+z?2{yEOtmy>L&B@@+am8CI9gB`yNJzY_Gwg`2_|xo!@RE91)xyx)d$1~U<;=j^ zs85Xij7L5c<;*VlR(}u^!A)b-UBUPI9ZWFn@AY$j-={qt^M{awqQL7u?oVkabs#dXe5OjBQaK_k&wdst4o4 zf%$sudeDR9-X(I|kCXxe&ksw5!KC#=fk!=zyQXP#^@*SCdsoQ&m$7px`NQ{24a&sd z4Gi`yk@tV17nkVsl;lpA&UZa!dsdW}??^=V;ab6{?{;{iB>Vf+AAW^$E@J5@HjPn_ zcVz^;qc_OxgI^g7X%{~CaN8wThTf{Z=532}8QuvMnN`fz|8>s$j#XXO646>Te>jH>ue$0$-;W*DvMB)w`J#molnr1$s@Sb5aAA2?>gk;|Wh)Ite+-($6(Y_4S%2!7Ik-X>hALe}7YvnkTG$Yw@W9qNgoOtC)y>PF8Z_V{^#i1(n zZ&qPwCpbEx(CSB<2**9>@h049yPL+citDkzd$9Z}|F&K#K1?E7D=#) zcj}aM6i=mR#55(97BAs#-c09A-5sR$lj0p_|6nj_u&$;3WSoQ$9azi1jBV3~hr#J? zGI&+NL`#a}*dnVIX73~z(!+LiN83(jvpW_KFwg jBs2HwTvvfN$KdfmX%@eoIO2 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 A1^@s6 From 49ec1919c755d8bd37a7326d4dfcc001e150adbc Mon Sep 17 00:00:00 2001 From: Hornygranny Date: Fri, 29 Aug 2014 19:11:35 -0700 Subject: [PATCH 024/124] facehuggers won't attack an infected person --- code/modules/mob/living/carbon/alien/special/facehugger.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index df9a0e26887..c59d83cd26e 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -17,6 +17,7 @@ var/const/MAX_ACTIVE_TIME = 400 w_class = 1 //note: can be picked up by aliens unlike most other items of w_class below 4 flags = MASKCOVERSMOUTH | MASKCOVERSEYES | MASKINTERNALS throw_range = 5 + tint = 3 var/stat = CONSCIOUS //UNCONSCIOUS is the idle state in this case @@ -115,6 +116,7 @@ var/const/MAX_ACTIVE_TIME = 400 if(loc == L) return 0 if(stat != CONSCIOUS) return 0 + if(locate(/obj/item/alien_embryo) in L) return 0 if(!sterile) L.take_organ_damage(strength,0) //done here so that even borgs and humans in helmets take damage L.visible_message("[src] leaps at [L]'s face!") @@ -128,7 +130,6 @@ var/const/MAX_ACTIVE_TIME = 400 if(iscarbon(M)) var/mob/living/carbon/target = L - if(target.wear_mask) if(prob(20)) return 0 var/obj/item/clothing/W = target.wear_mask From 350ad32ca03276c4b3e57ea5a4989dea65c097cd Mon Sep 17 00:00:00 2001 From: ikarrus Date: Sun, 31 Aug 2014 13:46:16 -0600 Subject: [PATCH 025/124] Changeling Hivemind Communication Costs 1 DNA - A new Hivemind Communication power is required to be purchased before the changeling can use the changeling channel (:g) - Changelings without the Communication power can still faintly sense if other changelings are speaking through hivemind. Remove changeling kill-teams. Add paranoia and ling vs ling conflict. --- code/game/gamemodes/changeling/changeling.dm | 2 +- .../gamemodes/changeling/powers/hivemind.dm | 19 +++++++++-- code/modules/mob/living/say.dm | 33 ++++++++++++------- 3 files changed, 39 insertions(+), 15 deletions(-) diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 6844ffe118f..bb53db3b10c 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -139,7 +139,6 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon" /datum/game_mode/proc/greet_changeling(var/datum/mind/changeling, var/you_are=1) if (you_are) changeling.current << "You are a changeling! You have absorbed and taken the form of a human." - changeling.current << "Use say \":g message\" to communicate with your fellow changelings." changeling.current << "You must complete the following tasks:" if (changeling.current.mind) @@ -239,6 +238,7 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon" var/purchasedpowers = list() var/mimicing = "" var/canrespec = 0 + var/changeling_speak = 0 var/datum/dna/chosen_dna var/obj/effect/proc_holder/changeling/sting/chosen_sting diff --git a/code/game/gamemodes/changeling/powers/hivemind.dm b/code/game/gamemodes/changeling/powers/hivemind.dm index 3f9aa14b702..6fd3248b7fe 100644 --- a/code/game/gamemodes/changeling/powers/hivemind.dm +++ b/code/game/gamemodes/changeling/powers/hivemind.dm @@ -1,8 +1,23 @@ +//HIVEMIND COMMUNICATION (:g) +/obj/effect/proc_holder/changeling/hivemind_comms + name = "Hivemind Communication" + desc = "We tune our senses to the airwaves to allow us to discreetly communicate with other changelings." + helptext = "We will be able to talk with other changelings with :g" + dna_cost = 1 + chemical_cost = -1 + +/obj/effect/proc_holder/changeling/hivemind_comms/on_purchase(var/mob/user) + ..() + var/datum/changeling/changeling=user.mind.changeling + changeling.changeling_speak = 1 + user << "Use say \":g message\" to communicate with the other changelings." + return + // HIVE MIND UPLOAD/DOWNLOAD DNA var/list/datum/dna/hivemind_bank = list() /obj/effect/proc_holder/changeling/hivemind_upload - name = "Hive Channel" + name = "Hive Channel DNA" desc = "Allows us to channel DNA in the airwaves to allow other changelings to absorb it." chemical_cost = 10 dna_cost = 0 @@ -32,7 +47,7 @@ var/list/datum/dna/hivemind_bank = list() return 1 /obj/effect/proc_holder/changeling/hivemind_download - name = "Hive Absorb" + name = "Hive Absorb DNA" desc = "Allows us to absorb DNA that has been channeled to the airwaves. Does not count towards absorb objectives." chemical_cost = 20 dna_cost = 0 diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 4b5ecff807d..c20764a2e70 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -185,7 +185,7 @@ var/list/department_radio_keys = list( return if(client.handle_spam_prevention(message,MUTE_IC)) return - + return 1 /mob/living/proc/can_speak_vocal(message) //Check AFTER handling of xeno and ling channels @@ -194,10 +194,10 @@ var/list/department_radio_keys = list( if(sdisabilities & MUTE) return - + if(is_muzzled()) return - + if(!IsVocal()) return @@ -216,21 +216,27 @@ var/list/department_radio_keys = list( /mob/living/proc/handle_inherent_channels(message, message_mode) if(message_mode == MODE_CHANGELING) - if(lingcheck()) - log_say("[mind.changeling.changelingID]/[src.key] : [message]") - for(var/mob/M in mob_list) - if(M.lingcheck() || M.stat == DEAD) - M << "[mind.changeling.changelingID]: [message]" - return 1 + switch(lingcheck()) + if(2) + log_say("[mind.changeling.changelingID]/[src.key] : [message]") + for(var/mob/M in mob_list) + if((M.lingcheck() == 2) || M.stat == DEAD) + M << "[mind.changeling.changelingID]: [message]" + if((M.lingcheck() == 1) && prob(10)) + M << "We can faintly sense another of our kind trying to communicate through the hivemind..." + return 1 + if(1) + src << "Our senses have not evolved enough to be able to communicate this way..." + return 1 return 0 /mob/living/proc/treat_message(message) if(getBrainLoss() >= 60) message = derpspeech(message, stuttering) - + if(stuttering) message = stutter(message) - + return message /mob/living/proc/radio(message, message_mode, steps) @@ -260,9 +266,12 @@ var/list/department_radio_keys = list( return NOPASS return 0 -/mob/living/lingcheck() +/mob/living/lingcheck() //Returns 1 if they are a changeling. Returns 2 if they are a changeling that can communicate through the hivemind if(mind && mind.changeling) + if(mind.changeling.changeling_speak) + return 2 return 1 + return 0 /mob/living/say_quote() if (stuttering) From 2514c2a63d88a9fcd061b091680eaf3fb61db822 Mon Sep 17 00:00:00 2001 From: Aranclanos Date: Sun, 31 Aug 2014 20:22:59 -0300 Subject: [PATCH 026/124] Fixes manifold pipe initialization, they would place the same connection on several nodes. Fixes the qdel() of pipes, scrubbers, vents and others atmos related machines. Adds an error message when a pipe is in at least two pipenets. Adds a new proc to add pipes to a pipenet datum, addMember(). Stops the mass creation of pipenet datums that would not be used. Makes pipenet datums more stable, a pipe will be a member of only one pipenet datum. Removes a lot of initialization() and build_network() calls around pipe code. Pipes can now be wrenched without the need of a connector next to them. --- code/ATMOSPHERICS/atmospherics.dm | 18 +- .../components/unary/unary_base.dm | 2 +- code/ATMOSPHERICS/components/valve.dm | 11 +- code/ATMOSPHERICS/datum_pipeline.dm | 64 +- code/ATMOSPHERICS/he_pipes.dm | 77 +- code/ATMOSPHERICS/pipes.dm | 898 +++++++----------- code/game/machinery/pipe/construction.dm | 60 +- 7 files changed, 476 insertions(+), 654 deletions(-) diff --git a/code/ATMOSPHERICS/atmospherics.dm b/code/ATMOSPHERICS/atmospherics.dm index 5d47b855257..2bb51158cbb 100644 --- a/code/ATMOSPHERICS/atmospherics.dm +++ b/code/ATMOSPHERICS/atmospherics.dm @@ -21,13 +21,11 @@ Pipelines + Other Objects -> Pipe network /obj/machinery/atmospherics/var/initialize_directions = 0 -/obj/machinery/atmospherics/var/pipe_color - +/obj/machinery/atmospherics/var/pipe_color/ +/* /obj/machinery/atmospherics/process() - if(gc_destroyed) //comments on /vg/ imply that GC'd pipes still process - return PROCESS_KILL - build_network() - + //build_network() +*/ /obj/machinery/atmospherics/proc/network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference) // Check to see if should be added to network. Add self if so and adjust variables appropriately. // Note don't forget to have neighbors look as well! @@ -63,21 +61,21 @@ Pipelines + Other Objects -> Pipe network if(can_unwrench && istype(W, /obj/item/weapon/wrench)) var/turf/T = src.loc if (level==1 && isturf(T) && T.intact) - user << "You must remove the plating first." + user << "\red You must remove the plating first." return 1 var/datum/gas_mixture/int_air = return_air() var/datum/gas_mixture/env_air = loc.return_air() if ((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE) - user << "You cannot unwrench this [src], it is too exerted due to internal pressure." + user << "\red You cannot unwrench this [src], it is too exerted due to internal pressure." add_fingerprint(user) return 1 playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - user << "You begin to unfasten \the [src]..." + user << "\blue You begin to unfasten \the [src]..." add_fingerprint(user) if (do_after(user, 40)) user.visible_message( \ "[user] unfastens \the [src].", \ - "You have unfastened \the [src].", \ + "\blue You have unfastened \the [src].", \ "You hear ratchet.") var/obj/item/pipe/newpipe = new(loc, make_from=src) transfer_fingerprints_to(newpipe) diff --git a/code/ATMOSPHERICS/components/unary/unary_base.dm b/code/ATMOSPHERICS/components/unary/unary_base.dm index 07465402083..3ee2600b1e4 100644 --- a/code/ATMOSPHERICS/components/unary/unary_base.dm +++ b/code/ATMOSPHERICS/components/unary/unary_base.dm @@ -49,7 +49,7 @@ if(!infiniteloop) target.initialize(1) break - build_network() + //build_network() update_icon() diff --git a/code/ATMOSPHERICS/components/valve.dm b/code/ATMOSPHERICS/components/valve.dm index 47b9b940489..499b41e55ef 100644 --- a/code/ATMOSPHERICS/components/valve.dm +++ b/code/ATMOSPHERICS/components/valve.dm @@ -11,7 +11,7 @@ can_unwrench = 1 var/open = 0 - var/openDuringInit = 0 + var/openDuringInit //useless, must remove var/obj/machinery/atmospherics/node1 var/obj/machinery/atmospherics/node2 @@ -178,12 +178,7 @@ obj/machinery/atmospherics/valve/attack_hand(mob/user as mob) node2 = target break - build_network() - - if(openDuringInit) - close() - open() - openDuringInit = 0 + //build_network() /* var/connect_directions @@ -273,7 +268,7 @@ obj/machinery/atmospherics/valve/attack_hand(mob/user as mob) /obj/machinery/atmospherics/valve/digital/attack_hand(mob/user as mob) if(!src.allowed(user)) - user << "Access denied." + user << "\red Access denied." return ..() diff --git a/code/ATMOSPHERICS/datum_pipeline.dm b/code/ATMOSPHERICS/datum_pipeline.dm index 1d9e9e2d21a..f686941aa35 100644 --- a/code/ATMOSPHERICS/datum_pipeline.dm +++ b/code/ATMOSPHERICS/datum_pipeline.dm @@ -14,8 +14,6 @@ if(air && air.volume) temporarily_store_air() - del(air) - ..() /datum/pipeline/proc/process()//This use to be called called from the pipe networks @@ -51,9 +49,10 @@ corresponding.moles = trace_gas.moles*member.volume/air.volume +var/pipenetwarnings = 10 + /datum/pipeline/proc/build_pipeline(obj/machinery/atmospherics/pipe/base) air = new - var/list/possible_expansions = list(base) members = list(base) edges = list() @@ -67,7 +66,6 @@ base.air_temporary = null else air = new - while(possible_expansions.len>0) for(var/obj/machinery/atmospherics/pipe/borderline in possible_expansions) @@ -77,6 +75,13 @@ if(result.len>0) for(var/obj/machinery/atmospherics/pipe/item in result) if(!members.Find(item)) + + if(item.parent) + if(pipenetwarnings > 0) + error("[item.type] added to a pipenet while still having one. ([item.x], [item.y], [item.z])") + pipenetwarnings -= 1 + if(pipenetwarnings == 0) + error("further messages about pipenets will be supressed") members += item possible_expansions += item @@ -97,6 +102,57 @@ air.volume = volume +/datum/pipeline/proc/addMember(obj/machinery/atmospherics/pipe/P) + P.parent = src + var/list/adjacent = P.pipeline_expansion() + var/list/oldedges = list() + for(var/obj/machinery/atmospherics/pipe/I in adjacent) + oldedges += I + if(I.parent == src) + continue + var/datum/pipeline/E = I.parent + if(E.members.len > members.len) + members.Add(E.members) + for(var/obj/machinery/atmospherics/pipe/S in E.members) + S.parent = src + edges.Add(E.edges) + air.merge(E.air) + adjacent -= I + if(adjacent.len) + edges |= P + members |= P + if(oldedges.len) + for(var/obj/machinery/atmospherics/pipe/O in oldedges) + var/list/Oedges = O.pipeline_expansion() + for(var/obj/machinery/atmospherics/pipe/Oedgepipes in Oedges) + Oedges -= Oedgepipes + if(Oedges.len) + edges |= O + else + edges -= O + +/datum/pipeline/proc/removeLastMember(obj/machinery/atmospherics/pipe/P) + if(members.len == 1 && members.Find(P)) + qdel() + if(P.air_temporary) + var/turf/T = P.loc + T.assume_air(P.air_temporary) + +/obj/machinery/atmospherics/proc/addMember(obj/machinery/atmospherics/pipe/P) + return + +/obj/machinery/atmospherics/pipe/addMember(obj/machinery/atmospherics/pipe/P) + parent.addMember(P) + +/datum/pipeline/Destroy() + if(network) + del(network) + if(air && air.volume) + temporarily_store_air() + for(var/obj/machinery/atmospherics/pipe/P in members) + P.parent = null + ..() + /datum/pipeline/proc/network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference) if(new_network.line_members.Find(src)) diff --git a/code/ATMOSPHERICS/he_pipes.dm b/code/ATMOSPHERICS/he_pipes.dm index c1cd3304c8e..336a91aa901 100644 --- a/code/ATMOSPHERICS/he_pipes.dm +++ b/code/ATMOSPHERICS/he_pipes.dm @@ -4,58 +4,42 @@ icon_state = "intact" level = 2 var/initialize_directions_he - minimum_temperature_difference = 20 thermal_conductivity = WINDOW_HEAT_TRANSFER_COEFFICIENT -// BubbleWrap /obj/machinery/atmospherics/pipe/simple/heat_exchanging/New() ..() initialize_directions_he = initialize_directions // The auto-detection from /pipe is good enough for a simple HE pipe -// BubbleWrap END /obj/machinery/atmospherics/pipe/simple/heat_exchanging/initialize() normalize_dir() - var/node1_dir - var/node2_dir - - for(var/direction in cardinal) - if(direction&initialize_directions_he) - if (!node1_dir) - node1_dir = direction - else if (!node2_dir) - node2_dir = direction - - for(var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/target in get_step(src,node1_dir)) - if(target.initialize_directions_he & get_dir(target,src)) - node1 = target - break - for(var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/target in get_step(src,node2_dir)) - if(target.initialize_directions_he & get_dir(target,src)) - node2 = target - break + var/N = 2 + for(var/D in cardinal) + if(D & initialize_directions_he) + N-- + for(var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/target in get_step(src, D)) + if(target.initialize_directions_he & get_dir(target,src)) + if(!node1 && N == 1) + node1 = target + break + if(!node2 && N == 0) + node2 = target + break update_icon() - return - /obj/machinery/atmospherics/pipe/simple/heat_exchanging/process() - if(!parent) - ..() - else - var/environment_temperature = 0 - if(istype(loc, /turf/simulated/)) - if(loc:blocks_air) - environment_temperature = loc:temperature - else - var/datum/gas_mixture/environment = loc.return_air() - environment_temperature = environment.temperature - else + var/environment_temperature = 0 + if(istype(loc, /turf/simulated)) + if(loc:blocks_air) environment_temperature = loc:temperature - var/datum/gas_mixture/pipe_air = return_air() - if(abs(environment_temperature-pipe_air.temperature) > minimum_temperature_difference) - parent.temperature_interact(loc, volume, thermal_conductivity) - - + else + var/datum/gas_mixture/environment = loc.return_air() + environment_temperature = environment.temperature + else + environment_temperature = loc:temperature + var/datum/gas_mixture/pipe_air = return_air() + if(abs(environment_temperature-pipe_air.temperature) > minimum_temperature_difference) + parent.temperature_interact(loc, volume, thermal_conductivity) /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction icon = 'icons/obj/pipes/junction.dmi' @@ -64,23 +48,21 @@ minimum_temperature_difference = 300 thermal_conductivity = WALL_HEAT_TRANSFER_COEFFICIENT -// BubbleWrap /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/New() - .. () - switch ( dir ) - if ( SOUTH ) + ..() + switch(dir) + if(SOUTH) initialize_directions = NORTH initialize_directions_he = SOUTH - if ( NORTH ) + if(NORTH) initialize_directions = SOUTH initialize_directions_he = NORTH - if ( EAST ) + if(EAST) initialize_directions = WEST initialize_directions_he = EAST - if ( WEST ) + if(WEST) initialize_directions = EAST initialize_directions_he = WEST -// BubbleWrap END /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/update_icon() if(node1&&node2) @@ -101,6 +83,5 @@ if(target.initialize_directions_he & get_dir(target,src)) node2 = target break - update_icon() return diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm index 53858c331f2..2c901dafc29 100644 --- a/code/ATMOSPHERICS/pipes.dm +++ b/code/ATMOSPHERICS/pipes.dm @@ -1,16 +1,11 @@ /obj/machinery/atmospherics/pipe - var/datum/gas_mixture/air_temporary //used when reconstructing a pipeline that broke var/datum/pipeline/parent - var/volume = 0 force = 20 - layer = 2.4 //under wires with their 2.44 use_power = 0 - can_unwrench = 1 - var/alert_pressure = 80*ONE_ATMOSPHERE //minimum pressure before check_pressure(...) should be called @@ -20,68 +15,57 @@ /obj/machinery/atmospherics/pipe/proc/check_pressure(pressure) //Return 1 if parent should continue checking other pipes //Return null if parent should stop checking other pipes. Recall: del(src) will by default return null - return 1 /obj/machinery/atmospherics/pipe/return_air() if(!parent) parent = new /datum/pipeline() parent.build_pipeline(src) - return parent.air /obj/machinery/atmospherics/pipe/build_network() if(!parent) parent = new /datum/pipeline() parent.build_pipeline(src) - return parent.return_network() /obj/machinery/atmospherics/pipe/network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference) if(!parent) parent = new /datum/pipeline() parent.build_pipeline(src) - return parent.network_expand(new_network, reference) /obj/machinery/atmospherics/pipe/return_network(obj/machinery/atmospherics/reference) if(!parent) parent = new /datum/pipeline() parent.build_pipeline(src) - return parent.return_network(reference) /obj/machinery/atmospherics/pipe/Destroy() del(parent) - if(air_temporary) - loc.assume_air(air_temporary) - del(air_temporary) - ..() +/obj/machinery/atmospherics/pipe/attackby(obj/item/weapon/W, mob/user) + if(istype(W, /obj/item/device/analyzer)) + atmosanalyzer_scan(parent.air, user) + else + return ..() + /obj/machinery/atmospherics/pipe/simple icon = 'icons/obj/pipes.dmi' icon_state = "intact-f" - name = "pipe" desc = "A one meter section of regular pipe" - volume = 70 - dir = SOUTH initialize_directions = SOUTH|NORTH - var/obj/machinery/atmospherics/node1 var/obj/machinery/atmospherics/node2 - var/minimum_temperature_difference = 300 var/thermal_conductivity = 0 //WALL_HEAT_TRANSFER_COEFFICIENT No - var/maximum_pressure = 70*ONE_ATMOSPHERE var/fatigue_pressure = 55*ONE_ATMOSPHERE alert_pressure = 55*ONE_ATMOSPHERE - - level = 1 /obj/machinery/atmospherics/pipe/simple/New() @@ -100,69 +84,61 @@ if(SOUTHWEST) initialize_directions = SOUTH|WEST - -/obj/machinery/atmospherics/pipe/simple/hide(var/i) - if(level == 1 && istype(loc, /turf/simulated)) - invisibility = i ? 101 : 0 +/obj/machinery/atmospherics/pipe/simple/initialize() + normalize_dir() + var/N = 2 + for(var/D in cardinal) + if(D & initialize_directions) + N-- + for(var/obj/machinery/atmospherics/target in get_step(src, D)) + if(target.initialize_directions & get_dir(target,src)) + if(!node1 && N == 1) + node1 = target + break + if(!node2 && N == 0) + node2 = target + break + var/turf/T = loc // hide if turf is not intact + hide(T.intact) update_icon() -/obj/machinery/atmospherics/pipe/simple/process() - if(!parent) //This should cut back on the overhead calling build_network thousands of times per cycle - ..() - else - . = PROCESS_KILL +/obj/machinery/atmospherics/pipe/simple/Destroy() + if(node1) + var/obj/machinery/atmospherics/A = node1 + node1.disconnect(src) + A.build_network() + if(node2) + var/obj/machinery/atmospherics/A = node2 + node2.disconnect(src) + A.build_network() + if(parent) + parent.removeLastMember(src) + ..() - /*if(!node1) - parent.mingle_with_turf(loc, volume) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - - else if(!node2) - parent.mingle_with_turf(loc, volume) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - else if (nodealert) - nodealert = 0 - - - else if(parent) - var/environment_temperature = 0 - - if(istype(loc, /turf/simulated/)) - if(loc:blocks_air) - environment_temperature = loc:temperature - else - var/datum/gas_mixture/environment = loc.return_air() - environment_temperature = environment.temperature - - else - environment_temperature = loc:temperature - - var/datum/gas_mixture/pipe_air = return_air() - - if(abs(environment_temperature-pipe_air.temperature) > minimum_temperature_difference) - parent.temperature_interact(loc, volume, thermal_conductivity) - */ //Screw you heat lag +/obj/machinery/atmospherics/pipe/simple/disconnect(obj/machinery/atmospherics/reference) + if(reference == node1) + if(istype(node1, /obj/machinery/atmospherics/pipe)) + qdel(parent) + node1 = null + if(reference == node2) + if(istype(node2, /obj/machinery/atmospherics/pipe)) + qdel(parent) + node2 = null + update_icon() /obj/machinery/atmospherics/pipe/simple/check_pressure(pressure) var/datum/gas_mixture/environment = loc.return_air() - var/pressure_difference = pressure - environment.return_pressure() - if(pressure_difference > maximum_pressure) burst() - else if(pressure_difference > fatigue_pressure) //TODO: leak to turf, doing pfshhhhh if(prob(5)) burst() - else return 1 /obj/machinery/atmospherics/pipe/simple/proc/burst() - src.visible_message("[src] bursts!"); + src.visible_message("\red \bold [src] bursts!"); playsound(src.loc, 'sound/effects/bang.ogg', 25, 1) var/datum/effect/effect/system/harmless_smoke_spread/smoke = new smoke.set_up(1,0, src.loc, 0) @@ -175,17 +151,6 @@ else if(dir==12) dir = 4 -/obj/machinery/atmospherics/pipe/simple/Destroy() - if(node1) - node1.disconnect(src) - if(node2) - node2.disconnect(src) - - ..() - -/obj/machinery/atmospherics/pipe/simple/pipeline_expansion() - return list(node1, node2) - /obj/machinery/atmospherics/pipe/simple/update_icon() if(node1&&node2) var/C = "" @@ -197,62 +162,140 @@ if ("yellow") C = "-y" if ("purple") C = "-p" icon_state = "intact[C][invisibility ? "-f" : "" ]" - - //var/node1_direction = get_dir(src, node1) - //var/node2_direction = get_dir(src, node2) - - //dir = node1_direction|node2_direction - else - if(!node1&&!node2) - qdel(src) //TODO: silent deleting looks weird var/have_node1 = node1?1:0 var/have_node2 = node2?1:0 icon_state = "exposed[have_node1][have_node2][invisibility ? "-f" : "" ]" +/obj/machinery/atmospherics/pipe/simple/hide(var/i) + if(level == 1 && istype(loc, /turf/simulated)) + invisibility = i ? 101 : 0 + update_icon() -/obj/machinery/atmospherics/pipe/simple/initialize() - normalize_dir() - var/node1_dir - var/node2_dir +/obj/machinery/atmospherics/pipe/simple/pipeline_expansion() + return list(node1, node2) - for(var/direction in cardinal) - if(direction&initialize_directions) - if (!node1_dir) - node1_dir = direction - else if (!node2_dir) - node2_dir = direction +/obj/machinery/atmospherics/pipe/simple/insulated + icon = 'icons/obj/atmospherics/red_pipe.dmi' + icon_state = "intact" + minimum_temperature_difference = 10000 + thermal_conductivity = 0 + maximum_pressure = 1000*ONE_ATMOSPHERE + fatigue_pressure = 900*ONE_ATMOSPHERE + alert_pressure = 900*ONE_ATMOSPHERE + level = 2 - for(var/obj/machinery/atmospherics/target in get_step(src,node1_dir)) - if(target.initialize_directions & get_dir(target,src)) - node1 = target - break - for(var/obj/machinery/atmospherics/target in get_step(src,node2_dir)) - if(target.initialize_directions & get_dir(target,src)) - node2 = target - break +/obj/machinery/atmospherics/pipe/manifold + icon = 'icons/obj/atmospherics/pipe_manifold.dmi' + icon_state = "manifold-f" + name = "pipe manifold" + desc = "A manifold composed of regular pipes" + volume = 105 + dir = SOUTH + initialize_directions = EAST|NORTH|WEST + var/obj/machinery/atmospherics/node1 + var/obj/machinery/atmospherics/node2 + var/obj/machinery/atmospherics/node3 + level = 1 + layer = 2.4 //under wires with their 2.44 +/obj/machinery/atmospherics/pipe/manifold/New() + switch(dir) + if(NORTH) + initialize_directions = EAST|SOUTH|WEST + if(SOUTH) + initialize_directions = WEST|NORTH|EAST + if(EAST) + initialize_directions = SOUTH|WEST|NORTH + if(WEST) + initialize_directions = NORTH|EAST|SOUTH + ..() +/obj/machinery/atmospherics/pipe/manifold/initialize() + for(var/D in cardinal) + if(D == dir) + continue + for(var/obj/machinery/atmospherics/target in get_step(src, D)) + if(target.initialize_directions & get_dir(target,src)) + if(turn(dir, 90) == D) + node1 = target + if(turn(dir, 270) == D) + node2 = target + if(turn(dir, 180) == D) + node3 = target + break var/turf/T = src.loc // hide if turf is not intact hide(T.intact) update_icon() - //update_icon() -/obj/machinery/atmospherics/pipe/simple/disconnect(obj/machinery/atmospherics/reference) +/obj/machinery/atmospherics/pipe/manifold/Destroy() + if(node1) + var/obj/machinery/atmospherics/A = node1 + node1.disconnect(src) + A.build_network() + if(node2) + var/obj/machinery/atmospherics/A = node2 + node2.disconnect(src) + A.build_network() + if(node3) + var/obj/machinery/atmospherics/A = node3 + node3.disconnect(src) + A.build_network() + if(parent) + parent.removeLastMember(src) + ..() + +/obj/machinery/atmospherics/pipe/manifold/disconnect(obj/machinery/atmospherics/reference) if(reference == node1) if(istype(node1, /obj/machinery/atmospherics/pipe)) - del(parent) + qdel(parent) node1 = null - if(reference == node2) if(istype(node2, /obj/machinery/atmospherics/pipe)) - del(parent) + qdel(parent) node2 = null + if(reference == node3) + if(istype(node3, /obj/machinery/atmospherics/pipe)) + qdel(parent) + node3 = null + update_icon() + ..() +/obj/machinery/atmospherics/pipe/manifold/update_icon() + if(node1&&node2&&node3) + var/C = "" + switch(pipe_color) + if ("red") C = "-r" + if ("blue") C = "-b" + if ("cyan") C = "-c" + if ("green") C = "-g" + if ("yellow") C = "-y" + if ("purple") C = "-p" + icon_state = "manifold[C][invisibility ? "-f" : ""]" + else + var/connected = 0 + var/unconnected = 0 + var/connect_directions = (NORTH|SOUTH|EAST|WEST)&(~dir) + if(node1) + connected |= get_dir(src, node1) + if(node2) + connected |= get_dir(src, node2) + if(node3) + connected |= get_dir(src, node3) + unconnected = (~connected)&(connect_directions) + icon_state = "manifold_[connected]_[unconnected]" + +/obj/machinery/atmospherics/pipe/manifold/hide(var/i) + if(level == 1 && istype(loc, /turf/simulated)) + invisibility = i ? 101 : 0 update_icon() - return null +/obj/machinery/atmospherics/pipe/manifold/pipeline_expansion() + return list(node1, node2, node3) + + +//coloured pipes /obj/machinery/atmospherics/pipe/simple/scrubbers name="Scrubbers pipe" pipe_color="red" @@ -319,434 +362,7 @@ icon_state = "intact-y-f" - -/obj/machinery/atmospherics/pipe/simple/insulated - icon = 'icons/obj/atmospherics/red_pipe.dmi' - icon_state = "intact" - - minimum_temperature_difference = 10000 - thermal_conductivity = 0 - maximum_pressure = 1000*ONE_ATMOSPHERE - fatigue_pressure = 900*ONE_ATMOSPHERE - alert_pressure = 900*ONE_ATMOSPHERE - - level = 2 - - -/obj/machinery/atmospherics/pipe/tank - icon = 'icons/obj/atmospherics/pipe_tank.dmi' - icon_state = "intact" - - name = "pressure tank" - desc = "A large vessel containing pressurized gas." - - volume = 10000 //in liters, 1 meters by 1 meters by 2 meters - - dir = SOUTH - initialize_directions = SOUTH - density = 1 - - can_unwrench = 0 - - var/obj/machinery/atmospherics/node1 - -/obj/machinery/atmospherics/pipe/tank/New() - initialize_directions = dir - ..() - -/obj/machinery/atmospherics/pipe/tank/process() - if(!parent) - ..() - else - . = PROCESS_KILL -/* if(!node1) - parent.mingle_with_turf(loc, 200) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - else if (nodealert) - nodealert = 0 -*/ -/obj/machinery/atmospherics/pipe/tank/carbon_dioxide - name = "pressure tank (Carbon Dioxide)" - -/obj/machinery/atmospherics/pipe/tank/carbon_dioxide/New() - air_temporary = new - air_temporary.volume = volume - air_temporary.temperature = T20C - - air_temporary.carbon_dioxide = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - - ..() - -/obj/machinery/atmospherics/pipe/tank/toxins - icon = 'icons/obj/atmospherics/orange_pipe_tank.dmi' - name = "pressure tank (Plasma)" - -/obj/machinery/atmospherics/pipe/tank/toxins/New() - air_temporary = new - air_temporary.volume = volume - air_temporary.temperature = T20C - - air_temporary.toxins = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - - ..() - -/obj/machinery/atmospherics/pipe/tank/oxygen_agent_b - icon = 'icons/obj/atmospherics/red_orange_pipe_tank.dmi' - name = "pressure tank (Oxygen + Plasma)" - -/obj/machinery/atmospherics/pipe/tank/oxygen_agent_b/New() - air_temporary = new - air_temporary.volume = volume - air_temporary.temperature = T0C - - var/datum/gas/oxygen_agent_b/trace_gas = new - trace_gas.moles = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - - air_temporary.trace_gases += trace_gas - - ..() - -/obj/machinery/atmospherics/pipe/tank/oxygen - icon = 'icons/obj/atmospherics/blue_pipe_tank.dmi' - name = "pressure tank (Oxygen)" - -/obj/machinery/atmospherics/pipe/tank/oxygen/New() - air_temporary = new - air_temporary.volume = volume - air_temporary.temperature = T20C - - air_temporary.oxygen = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - - ..() - -/obj/machinery/atmospherics/pipe/tank/nitrogen - icon = 'icons/obj/atmospherics/red_pipe_tank.dmi' - name = "pressure tank (Nitrogen)" - -/obj/machinery/atmospherics/pipe/tank/nitrogen/New() - air_temporary = new - air_temporary.volume = volume - air_temporary.temperature = T20C - - air_temporary.nitrogen = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - - ..() - -/obj/machinery/atmospherics/pipe/tank/air - icon = 'icons/obj/atmospherics/red_pipe_tank.dmi' - name = "pressure tank (Air)" - -/obj/machinery/atmospherics/pipe/tank/air/New() - air_temporary = new - air_temporary.volume = volume - air_temporary.temperature = T20C - - air_temporary.oxygen = (25*ONE_ATMOSPHERE*O2STANDARD)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - air_temporary.nitrogen = (25*ONE_ATMOSPHERE*N2STANDARD)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) - - ..() - -/obj/machinery/atmospherics/pipe/tank/Destroy() - if(node1) - node1.disconnect(src) - - ..() - -/obj/machinery/atmospherics/pipe/tank/pipeline_expansion() - return list(node1) - -/obj/machinery/atmospherics/pipe/tank/update_icon() - if(node1) - icon_state = "intact" - - dir = get_dir(src, node1) - - else - icon_state = "exposed" - -/obj/machinery/atmospherics/pipe/tank/initialize() - - var/connect_direction = dir - - for(var/obj/machinery/atmospherics/target in get_step(src,connect_direction)) - if(target.initialize_directions & get_dir(target,src)) - node1 = target - break - - update_icon() - -/obj/machinery/atmospherics/pipe/tank/disconnect(obj/machinery/atmospherics/reference) - if(reference == node1) - if(istype(node1, /obj/machinery/atmospherics/pipe)) - del(parent) - node1 = null - - update_icon() - - return null - -/obj/machinery/atmospherics/pipe/tank/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) - if (istype(W, /obj/item/device/analyzer) && get_dist(user, src) <= 1) - atmosanalyzer_scan(parent.air, user) - -/obj/machinery/atmospherics/pipe/vent - icon = 'icons/obj/atmospherics/pipe_vent.dmi' - icon_state = "intact" - - name = "vent" - desc = "A large air vent" - - level = 1 - - volume = 250 - - dir = SOUTH - initialize_directions = SOUTH - - can_unwrench = 0 - - var/build_killswitch = 1 - - var/obj/machinery/atmospherics/node1 - -/obj/machinery/atmospherics/pipe/vent/New() - initialize_directions = dir - ..() - -/obj/machinery/atmospherics/pipe/vent/process() - if(!parent) - if(build_killswitch <= 0) - . = PROCESS_KILL - else - build_killswitch-- - ..() - return - else - parent.mingle_with_turf(loc, 250) -/* - if(!node1) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - else if (nodealert) - nodealert = 0 -*/ -/obj/machinery/atmospherics/pipe/vent/Destroy() - if(node1) - node1.disconnect(src) - - ..() - -/obj/machinery/atmospherics/pipe/vent/pipeline_expansion() - return list(node1) - -/obj/machinery/atmospherics/pipe/vent/update_icon() - if(node1) - icon_state = "intact" - - dir = get_dir(src, node1) - - else - icon_state = "exposed" - -/obj/machinery/atmospherics/pipe/vent/initialize() - var/connect_direction = dir - - for(var/obj/machinery/atmospherics/target in get_step(src,connect_direction)) - if(target.initialize_directions & get_dir(target,src)) - node1 = target - break - - update_icon() - -/obj/machinery/atmospherics/pipe/vent/disconnect(obj/machinery/atmospherics/reference) - if(reference == node1) - if(istype(node1, /obj/machinery/atmospherics/pipe)) - del(parent) - node1 = null - - update_icon() - - return null - -/obj/machinery/atmospherics/pipe/vent/hide(var/i) //to make the little pipe section invisible, the icon changes. - if(node1) - icon_state = "[i == 1 && istype(loc, /turf/simulated) ? "h" : "" ]intact" - dir = get_dir(src, node1) - else - icon_state = "exposed" - -/obj/machinery/atmospherics/pipe/manifold - icon = 'icons/obj/atmospherics/pipe_manifold.dmi' - icon_state = "manifold-f" - - name = "pipe manifold" - desc = "A manifold composed of regular pipes" - - volume = 105 - - dir = SOUTH - initialize_directions = EAST|NORTH|WEST - - var/obj/machinery/atmospherics/node1 - var/obj/machinery/atmospherics/node2 - var/obj/machinery/atmospherics/node3 - - level = 1 - layer = 2.4 //under wires with their 2.44 - -/obj/machinery/atmospherics/pipe/manifold/New() - switch(dir) - if(NORTH) - initialize_directions = EAST|SOUTH|WEST - if(SOUTH) - initialize_directions = WEST|NORTH|EAST - if(EAST) - initialize_directions = SOUTH|WEST|NORTH - if(WEST) - initialize_directions = NORTH|EAST|SOUTH - - ..() - - - -/obj/machinery/atmospherics/pipe/manifold/hide(var/i) - if(level == 1 && istype(loc, /turf/simulated)) - invisibility = i ? 101 : 0 - update_icon() - -/obj/machinery/atmospherics/pipe/manifold/pipeline_expansion() - return list(node1, node2, node3) - -/obj/machinery/atmospherics/pipe/manifold/process() - if(!parent) - ..() - else - . = PROCESS_KILL -/* - if(!node1) - parent.mingle_with_turf(loc, 70) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - else if(!node2) - parent.mingle_with_turf(loc, 70) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - else if(!node3) - parent.mingle_with_turf(loc, 70) - if(!nodealert) - //world << "Missing node from [src] at [src.x],[src.y],[src.z]" - nodealert = 1 - else if (nodealert) - nodealert = 0 -*/ -/obj/machinery/atmospherics/pipe/manifold/Destroy() - if(node1) - node1.disconnect(src) - if(node2) - node2.disconnect(src) - if(node3) - node3.disconnect(src) - - ..() - -/obj/machinery/atmospherics/pipe/manifold/disconnect(obj/machinery/atmospherics/reference) - if(reference == node1) - if(istype(node1, /obj/machinery/atmospherics/pipe)) - del(parent) - node1 = null - - if(reference == node2) - if(istype(node2, /obj/machinery/atmospherics/pipe)) - del(parent) - node2 = null - - if(reference == node3) - if(istype(node3, /obj/machinery/atmospherics/pipe)) - del(parent) - node3 = null - - update_icon() - - ..() - -/obj/machinery/atmospherics/pipe/manifold/update_icon() - if(node1&&node2&&node3) - var/C = "" - switch(pipe_color) - if ("red") C = "-r" - if ("blue") C = "-b" - if ("cyan") C = "-c" - if ("green") C = "-g" - if ("yellow") C = "-y" - if ("purple") C = "-p" - icon_state = "manifold[C][invisibility ? "-f" : ""]" - - else - var/connected = 0 - var/unconnected = 0 - var/connect_directions = (NORTH|SOUTH|EAST|WEST)&(~dir) - - if(node1) - connected |= get_dir(src, node1) - if(node2) - connected |= get_dir(src, node2) - if(node3) - connected |= get_dir(src, node3) - - unconnected = (~connected)&(connect_directions) - - icon_state = "manifold_[connected]_[unconnected]" - - if(!connected) - qdel(src) - - return - -/obj/machinery/atmospherics/pipe/manifold/initialize() - var/connect_directions = (NORTH|SOUTH|EAST|WEST)&(~dir) - - for(var/direction in cardinal) - if(direction&connect_directions) - for(var/obj/machinery/atmospherics/target in get_step(src,direction)) - if(target.initialize_directions & get_dir(target,src)) - node1 = target - connect_directions &= ~direction - break - if (node1) - break - - - for(var/direction in cardinal) - if(direction&connect_directions) - for(var/obj/machinery/atmospherics/target in get_step(src,direction)) - if(target.initialize_directions & get_dir(target,src)) - node2 = target - connect_directions &= ~direction - break - if (node2) - break - - - for(var/direction in cardinal) - if(direction&connect_directions) - for(var/obj/machinery/atmospherics/target in get_step(src,direction)) - if(target.initialize_directions & get_dir(target,src)) - node3 = target - connect_directions &= ~direction - break - if (node3) - break - - var/turf/T = src.loc // hide if turf is not intact - hide(T.intact) - //update_icon() - update_icon() - +//coloured manifolds /obj/machinery/atmospherics/pipe/manifold/scrubbers name="Scrubbers pipe" pipe_color="red" @@ -812,8 +428,202 @@ level = 1 icon_state = "manifold-y-f" -obj/machinery/atmospherics/pipe/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) - if (istype(W, /obj/item/device/analyzer) && get_dist(user, src) <= 1) - atmosanalyzer_scan(parent.air, user) +/obj/machinery/atmospherics/pipe/vent + icon = 'icons/obj/atmospherics/pipe_vent.dmi' + icon_state = "intact" + + name = "vent" + desc = "A large air vent" + + level = 1 + + volume = 250 + + dir = SOUTH + initialize_directions = SOUTH + + can_unwrench = 0 + + var/build_killswitch = 1 + + var/obj/machinery/atmospherics/node1 + +/obj/machinery/atmospherics/pipe/vent/New() + initialize_directions = dir + ..() + +/obj/machinery/atmospherics/pipe/vent/process() + if(!parent) + if(build_killswitch <= 0) + . = PROCESS_KILL + else + build_killswitch-- + ..() + return else - return ..() + parent.mingle_with_turf(loc, 250) +/* + if(!node1) + if(!nodealert) + //world << "Missing node from [src] at [src.x],[src.y],[src.z]" + nodealert = 1 + else if (nodealert) + nodealert = 0 +*/ +/obj/machinery/atmospherics/pipe/vent/Destroy() + if(node1) + node1.disconnect(src) + ..() + +/obj/machinery/atmospherics/pipe/vent/pipeline_expansion() + return list(node1) + +/obj/machinery/atmospherics/pipe/vent/update_icon() + if(node1) + icon_state = "intact" + + dir = get_dir(src, node1) + + else + icon_state = "exposed" + +/obj/machinery/atmospherics/pipe/vent/initialize() + var/connect_direction = dir + + for(var/obj/machinery/atmospherics/target in get_step(src,connect_direction)) + if(target.initialize_directions & get_dir(target,src)) + node1 = target + break + + update_icon() + +/obj/machinery/atmospherics/pipe/vent/disconnect(obj/machinery/atmospherics/reference) + if(reference == node1) + if(istype(node1, /obj/machinery/atmospherics/pipe)) + del(parent) + node1 = null + + update_icon() + + return null + +/obj/machinery/atmospherics/pipe/vent/hide(var/i) //to make the little pipe section invisible, the icon changes. + if(node1) + icon_state = "[i == 1 && istype(loc, /turf/simulated) ? "h" : "" ]intact" + dir = get_dir(src, node1) + else + icon_state = "exposed" + +/obj/machinery/atmospherics/pipe/tank + icon = 'icons/obj/atmospherics/pipe_tank.dmi' + icon_state = "intact" + name = "pressure tank" + desc = "A large vessel containing pressurized gas." + volume = 10000 //in liters, 1 meters by 1 meters by 2 meters + dir = SOUTH + initialize_directions = SOUTH + density = 1 + can_unwrench = 0 + var/obj/machinery/atmospherics/node1 + +/obj/machinery/atmospherics/pipe/tank/New() + initialize_directions = dir + ..() + +/obj/machinery/atmospherics/pipe/tank/carbon_dioxide + name = "pressure tank (Carbon Dioxide)" + +/obj/machinery/atmospherics/pipe/tank/carbon_dioxide/New() + air_temporary = new + air_temporary.volume = volume + air_temporary.temperature = T20C + air_temporary.carbon_dioxide = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + ..() + +/obj/machinery/atmospherics/pipe/tank/toxins + icon = 'icons/obj/atmospherics/orange_pipe_tank.dmi' + name = "pressure tank (Plasma)" + +/obj/machinery/atmospherics/pipe/tank/toxins/New() + air_temporary = new + air_temporary.volume = volume + air_temporary.temperature = T20C + air_temporary.toxins = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + ..() + +/obj/machinery/atmospherics/pipe/tank/oxygen_agent_b + icon = 'icons/obj/atmospherics/red_orange_pipe_tank.dmi' + name = "pressure tank (Oxygen + Plasma)" + +/obj/machinery/atmospherics/pipe/tank/oxygen_agent_b/New() + air_temporary = new + air_temporary.volume = volume + air_temporary.temperature = T0C + var/datum/gas/oxygen_agent_b/trace_gas = new + trace_gas.moles = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + air_temporary.trace_gases += trace_gas + ..() + +/obj/machinery/atmospherics/pipe/tank/oxygen + icon = 'icons/obj/atmospherics/blue_pipe_tank.dmi' + name = "pressure tank (Oxygen)" + +/obj/machinery/atmospherics/pipe/tank/oxygen/New() + air_temporary = new + air_temporary.volume = volume + air_temporary.temperature = T20C + air_temporary.oxygen = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + ..() + +/obj/machinery/atmospherics/pipe/tank/nitrogen + icon = 'icons/obj/atmospherics/red_pipe_tank.dmi' + name = "pressure tank (Nitrogen)" + +/obj/machinery/atmospherics/pipe/tank/nitrogen/New() + air_temporary = new + air_temporary.volume = volume + air_temporary.temperature = T20C + air_temporary.nitrogen = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + ..() + +/obj/machinery/atmospherics/pipe/tank/air + icon = 'icons/obj/atmospherics/red_pipe_tank.dmi' + name = "pressure tank (Air)" + +/obj/machinery/atmospherics/pipe/tank/air/New() + air_temporary = new + air_temporary.volume = volume + air_temporary.temperature = T20C + air_temporary.oxygen = (25*ONE_ATMOSPHERE*O2STANDARD)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + air_temporary.nitrogen = (25*ONE_ATMOSPHERE*N2STANDARD)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature) + ..() + +/obj/machinery/atmospherics/pipe/tank/Destroy() + if(node1) + node1.disconnect(src) + ..() + +/obj/machinery/atmospherics/pipe/tank/pipeline_expansion() + return list(node1) + +/obj/machinery/atmospherics/pipe/tank/update_icon() + if(node1) + icon_state = "intact" + dir = get_dir(src, node1) + else + icon_state = "exposed" + +/obj/machinery/atmospherics/pipe/tank/initialize() + var/connect_direction = dir + for(var/obj/machinery/atmospherics/target in get_step(src,connect_direction)) + if(target.initialize_directions & get_dir(target,src)) + node1 = target + break + update_icon() + +/obj/machinery/atmospherics/pipe/tank/disconnect(obj/machinery/atmospherics/reference) + if(reference == node1) + if(istype(node1, /obj/machinery/atmospherics/pipe)) + del(parent) + node1 = null + update_icon() \ No newline at end of file diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index 8d41384915c..370a46a0073 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -250,12 +250,10 @@ Buildable meters for(var/obj/machinery/atmospherics/M in src.loc) if(M.initialize_directions & pipe_dir) // matches at least one direction on either type of pipe - user << "There is already a pipe at that location." + user << "\red There is already a pipe at that location." return 1 // no conflicts found - var/pipefailtext = "There's nothing to connect this pipe section to! (with how the pipe code works, at least one end needs to be connected to something, otherwise the game deletes the segment)" - switch(pipe_type) if(PIPE_SIMPLE_STRAIGHT, PIPE_SIMPLE_BENT) var/obj/machinery/atmospherics/pipe/simple/P = new( src.loc ) @@ -264,16 +262,13 @@ Buildable meters var/turf/T = P.loc P.level = T.intact ? 2 : 1 P.initialize() - if (!P) - usr << pipefailtext - return 1 - P.build_network() if (P.node1) P.node1.initialize() - P.node1.build_network() + P.node1.addMember(P) if (P.node2) P.node2.initialize() - P.node2.build_network() + P.node2.addMember(P) + P.build_network() if(PIPE_HE_STRAIGHT, PIPE_HE_BENT) var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/P = new ( src.loc ) @@ -283,16 +278,13 @@ Buildable meters //var/turf/T = P.loc //P.level = T.intact ? 2 : 1 P.initialize() - if (!P) - usr << pipefailtext - return 1 - P.build_network() if (P.node1) P.node1.initialize() - P.node1.build_network() + P.node1.addMember(P) if (P.node2) P.node2.initialize() - P.node2.build_network() + P.node2.addMember(P) + P.build_network() if(PIPE_CONNECTOR) // connector var/obj/machinery/atmospherics/portables_connector/C = new( src.loc ) @@ -310,26 +302,22 @@ Buildable meters if(PIPE_MANIFOLD) //manifold - var/obj/machinery/atmospherics/pipe/manifold/M = new( src.loc ) + var/obj/machinery/atmospherics/pipe/manifold/M = new(loc) M.dir = dir M.initialize_directions = pipe_dir - //M.New() var/turf/T = M.loc M.level = T.intact ? 2 : 1 M.initialize() - if (!M) - usr << "There's nothing to connect this manifold to! (with how the pipe code works, at least one end needs to be connected to something, otherwise the game deletes the segment)" - return 1 - M.build_network() if (M.node1) M.node1.initialize() - M.node1.build_network() + M.node1.addMember(M) if (M.node2) M.node2.initialize() - M.node2.build_network() + M.node2.addMember(M) if (M.node3) M.node3.initialize() - M.node3.build_network() + M.node3.addMember(M) + M.build_network() if(PIPE_JUNCTION) var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/P = new ( src.loc ) @@ -339,16 +327,13 @@ Buildable meters //var/turf/T = P.loc //P.level = T.intact ? 2 : 1 P.initialize() - if (!P) - usr << "There's nothing to connect this junction to! (with how the pipe code works, at least one end needs to be connected to something, otherwise the game deletes the segment)" - return 1 - P.build_network() if (P.node1) P.node1.initialize() - P.node1.build_network() + P.node1.addMember(P) if (P.node2) P.node2.initialize() - P.node2.build_network() + P.node2.addMember(P) + P.build_network() if(PIPE_UVENT) //unary vent var/obj/machinery/atmospherics/unary/vent_pump/V = new( src.loc ) @@ -479,16 +464,13 @@ Buildable meters var/turf/T = P.loc P.level = T.intact ? 2 : 1 P.initialize() - if (!P) - usr << pipefailtext - return 1 - P.build_network() if (P.node1) P.node1.initialize() - P.node1.build_network() + P.node1.addMember(P) if (P.node2) P.node2.initialize() - P.node2.build_network() + P.node2.addMember(P) + P.build_network() if(PIPE_PASSIVE_GATE) //passive gate var/obj/machinery/atmospherics/binary/passive_gate/P = new(src.loc) @@ -541,7 +523,7 @@ Buildable meters playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user.visible_message( \ "[user] fastens the [src].", \ - "You have fastened the [src].", \ + "\blue You have fastened the [src].", \ "You hear ratchet.") qdel(src) // remove the pipe item @@ -566,11 +548,11 @@ Buildable meters if (!istype(W, /obj/item/weapon/wrench)) return ..() if(!locate(/obj/machinery/atmospherics/pipe, src.loc)) - user << "You need to fasten it to a pipe." + user << "\red You need to fasten it to a pipe" return 1 new/obj/machinery/meter( src.loc ) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - user << "You have fastened the meter to the pipe." + user << "\blue You have fastened the meter to the pipe" qdel(src) #undef PIPE_SIMPLE_STRAIGHT From 908cac5ac0472a85d08e478f8885c3f91af53593 Mon Sep 17 00:00:00 2001 From: ikarrus Date: Sun, 31 Aug 2014 19:27:41 -0600 Subject: [PATCH 027/124] Quick-Create Nuke Ops Actually Working - A nuke will actually spawn with them - The armory closet (pinpointers, etc) will actually spawn - Cleaned up code --- code/datums/mind.dm | 4 +- code/game/gamemodes/nuclear/nuclear.dm | 3 +- code/modules/admin/verbs/one_click_antag.dm | 46 ++++----------------- 3 files changed, 11 insertions(+), 42 deletions(-) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 089c9cb2cf1..d37b4ebebad 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -994,12 +994,12 @@ ticker.mode.finalize_traitor(src) ticker.mode.greet_traitor(src) -/datum/mind/proc/make_Nuke() +/datum/mind/proc/make_Nuke(var/nuke_code) if(!(src in ticker.mode.syndicates)) ticker.mode.syndicates += src ticker.mode.update_synd_icons_added(src) if (ticker.mode.syndicates.len==1) - ticker.mode.prepare_syndicate_leader(src) + ticker.mode.prepare_syndicate_leader(src,nuke_code) else current.real_name = "[syndicate_name()] Operative #[ticker.mode.syndicates.len-1]" special_role = "Syndicate" diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index aefcfc70c47..ba2b2112a66 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -151,8 +151,7 @@ var/obj/item/weapon/paper/P = new P.info = "The nuclear authorization code is: [nuke_code]" P.name = "nuclear bomb code" - if (ticker.mode.config_tag=="nuclear") - P.loc = synd_mind.current.loc + P.loc = synd_mind.current.loc else var/mob/living/carbon/human/H = synd_mind.current P.loc = H.loc diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index b12a431043d..b4d04356dcf 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -256,53 +256,23 @@ client/proc/one_click_antag() //Making sure we have atleast 3 Nuke agents, because less than that is kinda bad if(agentcount < 3) return 0 - else - for(var/mob/c in chosen) - var/mob/living/carbon/human/new_character=makeBody(c) - new_character.mind.make_Nuke() - - var/obj/effect/landmark/nuke_spawn = locate("landmark*Syndicate-Uplink") - var/obj/effect/landmark/closet_spawn = locate("landmark*Nuclear-Closet") + var/obj/effect/landmark/nuke_spawn = locate("landmark*Nuclear-Bomb") + var/obj/effect/landmark/closet_spawn = locate("landmark*Syndicate-Uplink") var/nuke_code = "[rand(10000, 99999)]" if(nuke_spawn) - var/obj/item/weapon/paper/P = new - P.info = "Sadly, the Syndicate could not get you a nuclear bomb. We have, however, acquired the arming code for the station's onboard nuke. The nuclear authorization code is: [nuke_code]" - P.name = "nuclear bomb code and instructions" - P.loc = nuke_spawn.loc + var/obj/machinery/nuclearbomb/the_bomb = new /obj/machinery/nuclearbomb(nuke_spawn.loc) + the_bomb.r_code = nuke_code if(closet_spawn) new /obj/structure/closet/syndicate/nuclear(closet_spawn.loc) - for (var/obj/effect/landmark/A in /area/syndicate_station/start)//Because that's the only place it can BE -Sieve - if (A.name == "Syndicate-Gear-Closet") - new /obj/structure/closet/syndicate/personal(A.loc) - qdel(A) - continue + for(var/mob/c in chosen) + var/mob/living/carbon/human/new_character=makeBody(c) + new_character.mind.make_Nuke(nuke_code) - if (A.name == "Syndicate-Bomb") - new /obj/effect/spawner/newbomb/timer/syndicate(A.loc) - qdel(A) - continue - - for(var/datum/mind/synd_mind in ticker.mode.syndicates) - if(synd_mind.current) - if(synd_mind.current.client) - for(var/image/I in synd_mind.current.client.images) - if(I.icon_state == "synd") - del(I) - - for(var/datum/mind/synd_mind in ticker.mode.syndicates) - if(synd_mind.current) - if(synd_mind.current.client) - for(var/datum/mind/synd_mind_1 in ticker.mode.syndicates) - if(synd_mind_1.current) - var/I = image('icons/mob/mob.dmi', loc = synd_mind_1.current, icon_state = "synd") - synd_mind.current.client.images += I - - for (var/obj/machinery/nuclearbomb/bomb in world) - bomb.r_code = nuke_code // All the nukes are set to this code. + ticker.mode.update_all_synd_icons() return 1 From 5e83e04ebe63673d88c332d44138efe3ab9a5293 Mon Sep 17 00:00:00 2001 From: ikarrus Date: Sun, 31 Aug 2014 19:33:48 -0600 Subject: [PATCH 028/124] Code actually working, too --- code/game/gamemodes/nuclear/nuclear.dm | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index ba2b2112a66..dee7d125226 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -151,12 +151,10 @@ var/obj/item/weapon/paper/P = new P.info = "The nuclear authorization code is: [nuke_code]" P.name = "nuclear bomb code" - P.loc = synd_mind.current.loc - else - var/mob/living/carbon/human/H = synd_mind.current - P.loc = H.loc - H.equip_to_slot_or_del(P, slot_r_store, 0) - H.update_icons() + var/mob/living/carbon/human/H = synd_mind.current + P.loc = H.loc + H.equip_to_slot_or_del(P, slot_r_store, 0) + H.update_icons() else nuke_code = "code will be provided later" From 9323f11d84c146632f070145b415eec9d81ec585 Mon Sep 17 00:00:00 2001 From: ikarrus Date: Sun, 31 Aug 2014 20:51:42 -0600 Subject: [PATCH 029/124] Syndicate Base Update - Only syndicate leaders spawn in the TC management area - TC management area locked to syndicate leader's ID card. - Shutters control button locked to syndicate leader's ID card - Added shuttle recall console to syndicate base for those left behind/AFK/spawned in late. --- _maps/map_files/tgstation.2.1.3.dmm | 21 +++-- code/game/gamemodes/nuclear/nuclear.dm | 11 +++ code/game/jobs/access.dm | 3 +- .../machinery/computer/syndicate_shuttle.dm | 91 ++++++++++--------- 4 files changed, 72 insertions(+), 54 deletions(-) diff --git a/_maps/map_files/tgstation.2.1.3.dmm b/_maps/map_files/tgstation.2.1.3.dmm index ff49f8ed559..104dcc53ef0 100644 --- a/_maps/map_files/tgstation.2.1.3.dmm +++ b/_maps/map_files/tgstation.2.1.3.dmm @@ -5950,6 +5950,7 @@ "ckv" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "ckw" = (/obj/structure/table/reinforced,/obj/item/stack/medical/bruise_pack{pixel_x = -3; pixel_y = 2},/obj/item/weapon/reagent_containers/pill/kelotane{pixel_x = -3; pixel_y = -8},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "ckx" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/closet/radiation,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/engine/engineering) +"cky" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Uplink Management Control"; req_access_txt = "151"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) "ckz" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter,/turf/simulated/wall/r_wall,/area/atmos) "ckA" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_in_meter"; name = "Mixed Air Tank In"},/turf/simulated/wall/r_wall,/area/atmos) "ckB" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_out_meter"; name = "Mixed Air Tank Out"},/turf/simulated/wall/r_wall,/area/atmos) @@ -6097,6 +6098,7 @@ "cnn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/engine/engineering) "cno" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/engine/engineering) "cnp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/engine/engineering) +"cnq" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/unsimulated/floor{icon_state = "engine"},/area/syndicate_mothership) "cnr" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "cns" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cnt" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) @@ -7031,9 +7033,9 @@ "cFm" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/beer{pixel_x = 5; pixel_y = -2; step_x = 0},/obj/item/toy/cards/deck/syndicate{icon_state = "deck_syndicate_full"; pixel_x = -6; pixel_y = 6},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "cFn" = (/obj/machinery/computer/telecrystals/uplinker,/turf/unsimulated/floor{tag = "icon-podhatch (WEST)"; icon_state = "podhatch"; dir = 8},/area/syndicate_mothership) "cFo" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 1},/area/syndicate_mothership) -"cFp" = (/turf/unsimulated/floor,/area/syndicate_mothership) -"cFq" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/unsimulated/floor,/area/syndicate_mothership) -"cFr" = (/obj/machinery/door/poddoor/shutters{id = "nukeop_ready"; name = "shuttle dock"},/turf/unsimulated/floor,/area/syndicate_mothership) +"cFp" = (/obj/machinery/door_control{id = "nukeop_ready"; name = "mission launch control"; pixel_x = -26; pixel_y = 0; req_access_txt = "151"},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"cFq" = (/turf/unsimulated/floor{icon_state = "engine"},/area/syndicate_mothership) +"cFr" = (/obj/machinery/door/poddoor/shutters{id = "nukeop_ready"; name = "shuttle dock"},/turf/unsimulated/floor{icon_state = "engine"},/area/syndicate_mothership) "cFs" = (/turf/space,/area/tdome/tdomeobserve) "cFt" = (/obj/effect/landmark{name = "Syndicate-Uplink"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "cFu" = (/turf/unsimulated/wall/fakeglass,/area/syndicate_mothership) @@ -7055,10 +7057,9 @@ "cFK" = (/obj/structure/stool/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 2},/area/tdome/tdomeobserve) "cFL" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'FOURTH WALL'."; name = "\improper FOURTH WALL"; pixel_x = -32},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/area/syndicate_mothership) "cFM" = (/obj/structure/table,/obj/item/device/aicard,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) -"cFN" = (/obj/machinery/door_control{id = "nukeop_ready"; name = "mission launch control"; pixel_x = -26; pixel_y = 0; req_access_txt = "150"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) +"cFN" = (/obj/machinery/computer/syndicate_station/recall,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "cFO" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) "cFP" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) -"cFQ" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Uplink Management Control"; req_access_txt = "150"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) "cFR" = (/obj/structure/mopbucket,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "cFS" = (/turf/unsimulated/wall/fakedoor{name = "Thunderdome"},/area/tdome/tdomeobserve) "cFT" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "redbluefull"; dir = 2},/area/tdome/tdomeobserve) @@ -9572,14 +9573,14 @@ ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlah ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcDAcDBcDCcDDcDDcDDcDEcDBcDFcCPcCPcCPcCPcDicCPcDwcCQcDwcCQcCPcCRcCPcCRcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcDGcDGcDHcDIcDJcDKcDLcDGcDGcAlcCocCocCocCpcBFcBGcBHcAQcDxcDxcDxcDxcAQcDMcBxcBxcDNcAQahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcDBcDOcDPcDQcDRcDScDTcDTcDBcDUcCPcCPcDwcCEcCEcDVcDWcCEcCEcDwcDXcDYcDwcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcDZcEacEbcEccEdcEecEbcEacDZcAlcCocEfcEgcEhcAlahlahlcAQcEicEicEjcEjcAQcBycBxcBxcDzcBAahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcDBcEkcDPcDPcElcDPcDPcDPcDBcDUcCPcEmcCEcCEcEncEocEocEncCEcCEcCEcCEcCEcCEcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcEacEpcEqcEccEdcEecEqcErcEacAlcCocEscEtcEucAlahlahlcEvcBlcEwcEwcEwcEwcEwcEwcEwcBlcExahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl -ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcDBcEycDPcDPcDPcEzcDPcEAcDBcDUcDicEmcCEcEBcEBcEBcEBcEBcEBcEBcEBdpxdtdcEDcEEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcEFcEacEFcEccEdcEecEFcEacEFcAlcCocCocCocCocAlahlahlahlcEvcEGcEGcEGcEGcEGcEGcEGcExahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl +ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcDBcEycDPcDPcDPcEzcDPcEAcDBcDUcDicEmcCEcFNcEBcEBcEBcEBcEBcEBcEBdpxdtdcEDcEEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcEFcEacEFcEccEdcEecEFcEacEFcAlcCocCocCocCocAlahlahlahlcEvcEGcEGcEGcEGcEGcEGcEGcExahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcEHcDBcDBcDBcEIcDBcDBcDBcEJcCPcCPcEKcCEcELcEMcEMcEBcEBcEBcEBcEBcENcEOcEOcEOcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcEPcEacEacEccEdcEecEacEacEQcAlcERcEScEScETcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcCPcCPcDBcEUcDPcEVcDBcEWcDwcDwcDwcEXcCEcEBcEYcEZcEMcEBcEBcFacFbdpxcFccFdcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcFecFfcFfcEccEdcEecFgcFgcFhcAlcAlcFicAlcAlcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl -ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcCPcCPcDBcDPcDPcDPcDBcFjcFkcFkcDWcCEcCEcEBcFlcFmcEMcEBcEBcFacFncCEcCEcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcDGcDGcDGcDGcEdcDGcDGcDGcDGcAlcApcApcApcApcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl -ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDAcDBcDBcDBcDBcDBcDPcDPcDPcDBcFocFpcFpcFpcFqcFrcEBcEBcEBcEBcEBcEBcFacFncCEcCEcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDGcEdcDGcFscFscFscApcApcApcApcApcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl -ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDBcEAcDPcDPcFtcDBcDPcDPcDPcDBcFucFqcDVcDWcCEcCEcEBcEMcEMcEMcEBcEBcFacFvcCEcFwcFxcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDGcDGcDGcDGcDGcDGcDGcDGcDJcDGcDGcDGcDGcDGcDGcDGcDGcAlcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl +ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcCPcCPcCPcCPcCPcDBcDPcDPcDPcDBcFjcFkcFkcFkcDWcCEcEBcFlcFmcEMcEBcEBcFacFncCEcCEcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDpcDGcDGcDGcDGcEdcDGcDGcDGcDGcAlcApcApcApcApcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl +ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDAcDBcDBcDBcDBcDBcDPcDPcDPcDBcFocFqcFqcFqcFqcFrcEBcEBcEBcEBcEBcEBcFacFncCEcCEcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDGcEdcDGcFscFscFscApcApcApcApcApcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl +ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDBcEAcDPcDPcFtcDBcDPcDPcDPcDBcFucnqcDVcFkcDWcCEcFpcEMcEMcEMcEBcEBcFacFvcCEcFwcFxcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDGcDGcDGcDGcDGcDGcDGcDGcDJcDGcDGcDGcDGcDGcDGcDGcDGcAlcAlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDBcEAcDPcFycFzcDBcDPcDPcDPcDBcDBcFAcFBcDFcFCcCEcFDcFEcFFcFEcFEcEBcEBcEBcFGcFHcFHcFIcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDGcFJcFKcFKcFKcFKcFKcFJcFJcFJcFKcFKcFKcFKcFKcFJcDGahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl -ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcFLcCPcDBcEAcDPcFycFMcDBcDPcDPcDPcDBcDPcDPcDPcDBcEKcCEcFNcFOcFPcFOcFQcEBcEBcEBcCEcFRdtccFIcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcFScFJcFJcFJcFTcFJcFJcFJcFJcFJcFJcFJcFTcFJcFJcFJcFSahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl +ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcFLcCPcDBcEAcDPcFycFMcDBcDPcDPcDPcDBcDPcDPcDPcDBcEKcCEcFPcFOcFPcFPckycEBcEBcEBcCEcFRdtccFIcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcFScFJcFJcFJcFTcFJcFJcFJcFJcFJcFJcFJcFTcFJcFJcFJcFSahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDBcEAcDPcDPcDPcFUcDPcDPcDPcFVcDPcDPcDPcDBcEmcCEcCEcFbcFWcFXcFYcCEcCEcCEcCEcCEcCEcCEcCEahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcDGcFJcFKcFKcFKcFKcFKcFJcFJcFJcFKcFKcFKcFKcFKcFJcDGahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcCPcDBcEAcDPcDPcDPcFZcDPcDPcDPcGacDPcDPcGbcDBcGccFCcCEcCEcCEcCEcCEcCEahlahlahlahlahlahlahlahlahlcGdcGdcGdcGdcGdcGdcGdcGdcGdcGdcGdcGdahlahlahlahlahlahlahlahlahlahlcDGcDKcGecGecGecGecGecGecGecGecGecGecGecGecGecDIcDGahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl ahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlcCEcCPcDAcDBcDBcDBcDBcDBcDBcGfcDPcDPcDBcDBcDBcDBcDBcDBcDFcFCcCEahlahlahlahlahlahlahlahlahlahlahlahlahlcGdcGgcGhcGicGjcGkcGlcGdcGmcGncGocGdahlahlcGpcGpcGpcGpcGpcGpcGpcGpcGpcGqcGrcGrcGrcGrcGrcGrcGrcGrcGrcGrcGrcGrcGrcGqcGpcGpcGpcGpcGpcGpcGpcGpcGpahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahlahl diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index aefcfc70c47..d4493d2f97f 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -145,9 +145,20 @@ spawn(1) NukeNameAssign(nukelastname(synd_mind.current),syndicates) //allows time for the rest of the syndies to be chosen synd_mind.current.real_name = "[syndicate_name()] [leader_title]" + + if (nuke_code) synd_mind.store_memory("Syndicate Nuclear Bomb Code: [nuke_code]", 0, 0) synd_mind.current << "The nuclear authorization code is: [nuke_code]" + + var/list/foundIDs = synd_mind.current.search_contents_for(/obj/item/weapon/card/id) + + if(foundIDs.len) + for(var/obj/item/weapon/card/id/ID in foundIDs) + ID.access += access_syndicate_leader + else + message_admins("Warning: Nuke Ops spawned without access to leave their spawn area!") + var/obj/item/weapon/paper/P = new P.info = "The nuclear authorization code is: [nuke_code]" P.name = "nuclear bomb code" diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index a9ee8f00c16..77b0f22bb85 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -79,6 +79,7 @@ //The Syndicate /var/const/access_syndicate = 150//General Syndicate Access +/var/const/access_syndicate_leader = 151//Nuke Op Leader Access /obj/var/list/req_access = null /obj/var/req_access_txt = "0" @@ -206,7 +207,7 @@ return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_medical, access_cent_living, access_cent_storage, access_cent_teleporter, access_cent_captain) /proc/get_all_syndicate_access() - return list(access_syndicate) + return list(access_syndicate, access_syndicate) /proc/get_region_accesses(var/code) switch(code) diff --git a/code/game/machinery/computer/syndicate_shuttle.dm b/code/game/machinery/computer/syndicate_shuttle.dm index 6757442453e..2c2b34faf52 100644 --- a/code/game/machinery/computer/syndicate_shuttle.dm +++ b/code/game/machinery/computer/syndicate_shuttle.dm @@ -1,40 +1,45 @@ #define SYNDICATE_SHUTTLE_MOVE_TIME 240 #define SYNDICATE_SHUTTLE_COOLDOWN 200 +/var/area/synd_shuttle_curr_location +/var/synd_shuttle_moving = 0 +/var/synd_shuttle_lastMove = 0 + /obj/machinery/computer/syndicate_station name = "syndicate shuttle terminal" icon = 'icons/obj/computer.dmi' icon_state = "syndishuttle" req_access = list(access_syndicate) - var/area/curr_location - var/moving = 0 - var/lastMove = 0 + var/recall_only = 0 +/obj/machinery/computer/syndicate_station/recall + name = "syndicate shuttle recall terminal" + recall_only = 1 /obj/machinery/computer/syndicate_station/New() - curr_location= locate(/area/syndicate_station/start) + synd_shuttle_curr_location= locate(/area/syndicate_station/start) /obj/machinery/computer/syndicate_station/proc/syndicate_move_to(area/destination as area) - if(moving) return - if(lastMove + SYNDICATE_SHUTTLE_COOLDOWN > world.time) return + if(synd_shuttle_moving) return + if(synd_shuttle_lastMove + SYNDICATE_SHUTTLE_COOLDOWN > world.time) return var/area/dest_location = locate(destination) - if(curr_location == dest_location) return + if(synd_shuttle_curr_location == dest_location) return - moving = 1 - lastMove = world.time + synd_shuttle_moving = 1 + synd_shuttle_lastMove = world.time - if(curr_location.z != dest_location.z) + if(synd_shuttle_curr_location.z != dest_location.z) var/area/transit_location = locate(/area/syndicate_station/transit) - curr_location.move_contents_to(transit_location) - curr_location = transit_location - curr_location.has_gravity = 0 + synd_shuttle_curr_location.move_contents_to(transit_location) + synd_shuttle_curr_location = transit_location + synd_shuttle_curr_location.has_gravity = 0 transit_location.has_gravity = 1 sleep(SYNDICATE_SHUTTLE_MOVE_TIME) - curr_location.move_contents_to(dest_location) - curr_location = dest_location - moving = 0 + synd_shuttle_curr_location.move_contents_to(dest_location) + synd_shuttle_curr_location = dest_location + synd_shuttle_moving = 0 return 1 /obj/machinery/computer/syndicate_station/attack_hand(mob/user as mob) @@ -44,17 +49,18 @@ user.set_machine(src) - var/dat = {"Location: [curr_location]
- Ready to move[max(lastMove + SYNDICATE_SHUTTLE_COOLDOWN - world.time, 0) ? " in [max(round((lastMove + SYNDICATE_SHUTTLE_COOLDOWN - world.time) * 0.1), 0)] seconds" : ": now"]
-
Syndicate Space
- North West of SS13 | - North of SS13 | - North East of SS13
- South West of SS13 | - South of SS13 | - South East of SS13
- North East of the Mining Asteroid
- Close"} + var/dat = {"Location: [synd_shuttle_curr_location]
+ Ready to move[max(synd_shuttle_lastMove + SYNDICATE_SHUTTLE_COOLDOWN - world.time, 0) ? " in [max(round((synd_shuttle_lastMove + SYNDICATE_SHUTTLE_COOLDOWN - world.time) * 0.1), 0)] seconds" : ": now"]
+ Syndicate Space
"} + if(!recall_only) + dat += {"North West of SS13 | + North of SS13 | + North East of SS13
+ South West of SS13 | + South of SS13 | + South East of SS13
+ North East of the Mining Asteroid
+ Close"} user << browse(dat, "window=computer;size=575x450") onclose(user, "computer") @@ -71,22 +77,21 @@ if(href_list["syndicate"]) syndicate_move_to(/area/syndicate_station/start) - else if(href_list["station_nw"]) - syndicate_move_to(/area/syndicate_station/northwest) - else if(href_list["station_n"]) - syndicate_move_to(/area/syndicate_station/north) - else if(href_list["station_ne"]) - syndicate_move_to(/area/syndicate_station/northeast) - else if(href_list["station_sw"]) - syndicate_move_to(/area/syndicate_station/southwest) - else if(href_list["station_s"]) - syndicate_move_to(/area/syndicate_station/south) - else if(href_list["station_se"]) - syndicate_move_to(/area/syndicate_station/southeast) -// else if(href_list["commssat"]) -// syndicate_move_to(/area/syndicate_station/commssat) - else if(href_list["mining"]) - syndicate_move_to(/area/syndicate_station/mining) + else if(!recall_only) + if(href_list["station_nw"]) + syndicate_move_to(/area/syndicate_station/northwest) + else if(href_list["station_n"]) + syndicate_move_to(/area/syndicate_station/north) + else if(href_list["station_ne"]) + syndicate_move_to(/area/syndicate_station/northeast) + else if(href_list["station_sw"]) + syndicate_move_to(/area/syndicate_station/southwest) + else if(href_list["station_s"]) + syndicate_move_to(/area/syndicate_station/south) + else if(href_list["station_se"]) + syndicate_move_to(/area/syndicate_station/southeast) + else if(href_list["mining"]) + syndicate_move_to(/area/syndicate_station/mining) updateUsrDialog() return \ No newline at end of file From 3e4378f75f30007f800127afb96828635e6eb651 Mon Sep 17 00:00:00 2001 From: ikarrus Date: Sun, 31 Aug 2014 21:27:32 -0600 Subject: [PATCH 030/124] - A leader will always be chosen - Nuke ops will all stop spawning on the same spawn location (TC management console) --- code/datums/mind.dm | 14 +++++++------- code/game/gamemodes/nuclear/nuclear.dm | 3 +-- code/modules/admin/verbs/one_click_antag.dm | 19 ++++++++++++++++++- 3 files changed, 26 insertions(+), 10 deletions(-) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index d37b4ebebad..c545231c37f 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -994,21 +994,16 @@ ticker.mode.finalize_traitor(src) ticker.mode.greet_traitor(src) -/datum/mind/proc/make_Nuke(var/nuke_code) +/datum/mind/proc/make_Nuke(var/turf/spawnloc,var/nuke_code,var/leader=0) if(!(src in ticker.mode.syndicates)) ticker.mode.syndicates += src ticker.mode.update_synd_icons_added(src) - if (ticker.mode.syndicates.len==1) - ticker.mode.prepare_syndicate_leader(src,nuke_code) - else - current.real_name = "[syndicate_name()] Operative #[ticker.mode.syndicates.len-1]" special_role = "Syndicate" assigned_role = "MODE" - current << "You are a [syndicate_name()] agent!" ticker.mode.forge_syndicate_objectives(src) ticker.mode.greet_syndicate(src) - current.loc = get_turf(locate("landmark*Syndicate-Spawn")) + current.loc = spawnloc var/mob/living/carbon/human/H = current qdel(H.belt) @@ -1023,6 +1018,11 @@ ticker.mode.equip_syndicate(current) + if (leader) + ticker.mode.prepare_syndicate_leader(src,nuke_code) + else + current.real_name = "[syndicate_name()] Operative #[ticker.mode.syndicates.len-1]" + /datum/mind/proc/make_Changling() if(!(src in ticker.mode.changelings)) ticker.mode.changelings += src diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index dee7d125226..2fa742a3e36 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -100,7 +100,6 @@ for(var/obj/effect/landmark/A in landmarks_list) if(A.name == "Syndicate-Spawn") synd_spawn += get_turf(A) - qdel(A) continue var/obj/effect/landmark/uplinklocker = locate("landmark*Syndicate-Uplink") //i will be rewriting this shortly @@ -113,7 +112,7 @@ for(var/datum/mind/synd_mind in syndicates) if(spawnpos > synd_spawn.len) - spawnpos = 1 + spawnpos = 2 synd_mind.current.loc = synd_spawn[spawnpos] forge_syndicate_objectives(synd_mind) diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index b4d04356dcf..21875856b58 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -268,9 +268,26 @@ client/proc/one_click_antag() if(closet_spawn) new /obj/structure/closet/syndicate/nuclear(closet_spawn.loc) + //Let's find the spawn locations + var/list/turf/synd_spawn = list() + for(var/obj/effect/landmark/A in landmarks_list) + if(A.name == "Syndicate-Spawn") + synd_spawn += get_turf(A) + continue + + var/leader_chosen + var/spawnpos = 1 //Decides where they'll spawn. 1=leader. + for(var/mob/c in chosen) + if(spawnpos > synd_spawn.len) + spawnpos = 2 //Ran out of spawns. Let's loop back to the first non-leader position var/mob/living/carbon/human/new_character=makeBody(c) - new_character.mind.make_Nuke(nuke_code) + if(!leader_chosen) + leader_chosen = 1 + new_character.mind.make_Nuke(synd_spawn[spawnpos],nuke_code,1) + else + new_character.mind.make_Nuke(synd_spawn[spawnpos],nuke_code) + spawnpos++ ticker.mode.update_all_synd_icons() From 05b76b123e6bf4273fa8b9a0ba029201117ce734 Mon Sep 17 00:00:00 2001 From: carnie Date: Mon, 1 Sep 2014 11:29:49 +0100 Subject: [PATCH 031/124] TimSort for byond: RESULTS: sorting 10 random lists of length 3 to 303 in increments of 3 (Meh, I forgot to refresh this one, there were only 338 trials rather than 1010, can't be bothered to recode the test) Profile results (total time) Proc Name Self CPU Total CPU Real Time Calls ------------------------------------------------- --------- --------- --------- --------- /proc/sortList 0.672 16.141 16.243 171226 <--TG's current mergesort(recursive, hence the higher number of calls) /proc/sortTim 0.008 3.278 3.274 338 <--TimSort /proc/sortMerge 0.011 2.839 2.855 338 <--new mergesort /proc/sortInsert 0.010 2.124 2.103 338 <--binary insertion Sorting 10 presorted lists with 3 inversions (3 elements shuffled up), Lists of length 3 to 303 (increments of 3) Profile results (total time) Proc Name Self CPU Total CPU Real Time Calls ------------------------------------------------- --------- --------- --------- --------- /proc/sortList 1.290 23.056 23.254 308050 <--rather cataclysmic /proc/sortMerge 0.015 4.077 4.068 1010 <-- /proc/sortInsert 2.639 3.472 3.464 1010 <-- /proc/sortTim 0.014 1.567 1.576 1010 <--TimSort is faaar more effective in these cases, Timsort can exploit runs effectively sorting 10 presorted lists which have been reversed Profile results (total time) Proc Name Self CPU Total CPU Real Time Calls ------------------------------------------------- --------- --------- --------- --------- /proc/sortList 1.234 23.193 23.295 308050 /proc/sortMerge 0.023 4.681 4.686 1010 /proc/sortInsert 2.875 3.750 3.765 1010 /proc/sortTim 0.020 3.294 3.284 1010 //This can be lower by using a different comparison method *Corrected: /proc/sortTim 0.017 0.665 0.663 1010 //Using a non-strictly ascending comparison sorting 10 presorted lists Profile results (total time) Proc Name Self CPU Total CPU Real Time Calls ------------------------------------------------- --------- --------- --------- --------- /proc/sortList 1.199 21.391 21.517 308050 /proc/sortMerge 0.018 3.724 3.729 1010 /proc/sortInsert 2.497 3.302 3.309 1010 /proc/sortTim 0.024 0.586 0.584 1010 Summary, all the new procs are faster than the old ones. TimSort is ever so slightly slower than Insertion and Merging on random lists. But on lists with natural runs (partially sorted data) it is far faster than all others. The old merge sort was removed and replaced with timSort. Other algorithms are provided as alternatives. All algorithms use a central datum, so accept many of the same parameters. For instance, setting associative=1 will make them sort associative lists by their associated values, rather than keys. They also accept a cmp argument. This allows sorting of lists of datums, text, numbers or whatever. The pre-existing helpers in lists.dm were rewritten as examples. --- .../components/unary/vent_pump.dm | 2 +- code/__HELPERS/cmp.dm | 30 + code/__HELPERS/lists.dm | 247 +++---- code/__HELPERS/sorts/InsertSort.dm | 45 ++ code/__HELPERS/sorts/MergeSort.dm | 16 + code/__HELPERS/sorts/TimSort.dm | 17 + code/__HELPERS/sorts/__main.dm | 668 ++++++++++++++++++ code/__HELPERS/unsorted.dm | 4 +- code/datums/datumvars.dm | 2 +- code/game/gamemodes/sandbox/h_sandbox.dm | 6 +- code/game/machinery/computer/message.dm | 2 +- code/game/objects/items/devices/PDA/PDA.dm | 2 +- code/game/objects/items/devices/camera_bug.dm | 2 +- .../kitchen machinery/smartfridge.dm | 2 +- .../mob/living/silicon/pai/software.dm | 2 +- code/modules/mob/mob.dm | 2 +- tgstation.dme | 5 + 17 files changed, 898 insertions(+), 156 deletions(-) create mode 100644 code/__HELPERS/cmp.dm create mode 100644 code/__HELPERS/sorts/InsertSort.dm create mode 100644 code/__HELPERS/sorts/MergeSort.dm create mode 100644 code/__HELPERS/sorts/TimSort.dm create mode 100644 code/__HELPERS/sorts/__main.dm diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm index 837e70ef4eb..af170e90f93 100644 --- a/code/ATMOSPHERICS/components/unary/vent_pump.dm +++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm @@ -361,7 +361,7 @@ L << " There are no available vents to travel to, they could be welded. " return - var/obj/selection = input(L,"Select a destination.", "Duct System") as null|anything in sortAssoc(vents) + var/obj/selection = input(L,"Select a destination.", "Duct System") as null|anything in sortList(vents) if(!selection) return if(!Adjacent(L)) diff --git a/code/__HELPERS/cmp.dm b/code/__HELPERS/cmp.dm new file mode 100644 index 00000000000..0c86ae75c4e --- /dev/null +++ b/code/__HELPERS/cmp.dm @@ -0,0 +1,30 @@ +/proc/cmp_numeric_dsc(a,b) + return b - a + +/proc/cmp_numeric_asc(a,b) + return a - b + +/proc/cmp_text_asc(a,b) + return sorttext(b,a) + +/proc/cmp_text_dsc(a,b) + return sorttext(a,b) + +/proc/cmp_name_asc(atom/a, atom/b) + return sorttext(b.name, a.name) + +/proc/cmp_name_dsc(atom/a, atom/b) + return sorttext(a.name, b.name) + +var/cmp_field = "name" +/proc/cmp_records_asc(datum/data/record/a, datum/data/record/b) + return sorttext(b.fields[cmp_field], a.fields[cmp_field]) + +/proc/cmp_records_dsc(datum/data/record/a, datum/data/record/b) + return sorttext(a.fields[cmp_field], b.fields[cmp_field]) + +/proc/cmp_ckey_asc(client/a, client/b) + return sorttext(b.ckey, a.ckey) + +/proc/cmp_ckey_dsc(client/a, client/b) + return sorttext(a.ckey, b.ckey) \ No newline at end of file diff --git a/code/__HELPERS/lists.dm b/code/__HELPERS/lists.dm index eb44cf81c71..cd56614098c 100644 --- a/code/__HELPERS/lists.dm +++ b/code/__HELPERS/lists.dm @@ -167,25 +167,25 @@ /* * Sorting */ - +/* //Reverses the order of items in the list /proc/reverselist(var/list/input) var/list/output = list() for(var/i = input.len; i >= 1; i--) output += input[i] return output +*/ //Randomize: Return the list in a random order -/proc/shuffle(var/list/shufflelist) - if(!shufflelist) +/proc/shuffle(var/list/L) + if(!L) return - var/list/new_list = list() - var/list/old_list = shufflelist.Copy() - while(old_list.len) - var/item = pick(old_list) - new_list += item - old_list -= item - return new_list + L = L.Copy() + + for(var/i=1, i<=L.len, ++i) + L.Swap(i,rand(1,L.len)) + + return L //Return a list with no duplicate entries /proc/uniquelist(var/list/L) @@ -195,141 +195,22 @@ K += item return K -//Mergesort: divides up the list into halves to begin the sort -/proc/sortKey(var/list/client/L, var/order = 1) - if(isnull(L) || L.len < 2) - return L - var/middle = L.len / 2 + 1 - return mergeKey(sortKey(L.Copy(0,middle)), sortKey(L.Copy(middle)), order) +//for sorting clients or mobs by ckey +/proc/sortKey(list/L, order=1) + return sortTim(L, order >= 0 ? /proc/cmp_ckey_asc : /proc/cmp_ckey_dsc) -//Mergsort: does the actual sorting and returns the results back to sortAtom -/proc/mergeKey(var/list/client/L, var/list/client/R, var/order = 1) - var/Li=1 - var/Ri=1 - var/list/result = new() - while(Li <= L.len && Ri <= R.len) - var/client/rL = L[Li] - var/client/rR = R[Ri] - if(sorttext(rL.ckey, rR.ckey) == order) - result += L[Li++] - else - result += R[Ri++] +//Specifically for record datums in a list. +/proc/sortRecord(list/L, field = "name", order = 1) + cmp_field = field + return sortTim(L, order >= 0 ? /proc/cmp_records_asc : /proc/cmp_records_dsc) - if(Li <= L.len) - return (result + L.Copy(Li, 0)) - return (result + R.Copy(Ri, 0)) +//any value in a list +/proc/sortList(var/list/L, cmp=/proc/cmp_text_asc) + return sortTim(L.Copy(), cmp) -//Mergesort: divides up the list into halves to begin the sort -/proc/sortAtom(var/list/atom/L, var/order = 1) - if(isnull(L) || L.len < 2) - return L - var/middle = L.len / 2 + 1 - return mergeAtoms(sortAtom(L.Copy(0,middle)), sortAtom(L.Copy(middle)), order) - -//Mergsort: does the actual sorting and returns the results back to sortAtom -/proc/mergeAtoms(var/list/atom/L, var/list/atom/R, var/order = 1) - var/Li=1 - var/Ri=1 - var/list/result = new() - while(Li <= L.len && Ri <= R.len) - var/atom/rL = L[Li] - var/atom/rR = R[Ri] - if(sorttext(rL.name, rR.name) == order) - result += L[Li++] - else - result += R[Ri++] - - if(Li <= L.len) - return (result + L.Copy(Li, 0)) - return (result + R.Copy(Ri, 0)) - - - - -//Mergesort: Specifically for record datums in a list. -/proc/sortRecord(var/list/datum/data/record/L, var/field = "name", var/order = 1) - if(isnull(L)) - return list() - if(L.len < 2) - return L - var/middle = L.len / 2 + 1 - return mergeRecordLists(sortRecord(L.Copy(0, middle), field, order), sortRecord(L.Copy(middle), field, order), field, order) - -//Mergsort: does the actual sorting and returns the results back to sortRecord -/proc/mergeRecordLists(var/list/datum/data/record/L, var/list/datum/data/record/R, var/field = "name", var/order = 1) - var/Li=1 - var/Ri=1 - var/list/result = new() - if(!isnull(L) && !isnull(R)) - while(Li <= L.len && Ri <= R.len) - var/datum/data/record/rL = L[Li] - if(isnull(rL)) - L -= rL - continue - var/datum/data/record/rR = R[Ri] - if(isnull(rR)) - R -= rR - continue - if(sorttext(rL.fields[field], rR.fields[field]) == order) - result += L[Li++] - else - result += R[Ri++] - - if(Li <= L.len) - return (result + L.Copy(Li, 0)) - return (result + R.Copy(Ri, 0)) - - - - -//Mergesort: any value in a list -/proc/sortList(var/list/L) - if(L.len < 2) - return L - var/middle = L.len / 2 + 1 // Copy is first,second-1 - return mergeLists(sortList(L.Copy(0,middle)), sortList(L.Copy(middle))) //second parameter null = to end of list - -//Mergsorge: uses sortList() but uses the var's name specifically. This should probably be using mergeAtom() instead -/proc/sortNames(var/list/L) - var/list/Q = new() - for(var/atom/x in L) - Q[x.name] = x - return sortList(Q) - -/proc/mergeLists(var/list/L, var/list/R) - var/Li=1 - var/Ri=1 - var/list/result = new() - while(Li <= L.len && Ri <= R.len) - if(sorttext(L[Li], R[Ri]) < 1) - result += R[Ri++] - else - result += L[Li++] - - if(Li <= L.len) - return (result + L.Copy(Li, 0)) - return (result + R.Copy(Ri, 0)) - -//Mergesort: any value in a list, preserves key=value structure -/proc/sortAssoc(var/list/L) - if(L.len < 2) - return L - var/middle = L.len / 2 + 1 // Copy is first,second-1 - return mergeAssoc(sortAssoc(L.Copy(0,middle)), sortAssoc(L.Copy(middle))) //second parameter null = to end of list - -/proc/mergeAssoc(var/list/L, var/list/R) - var/Li=1 - var/Ri=1 - var/list/result = new() - while(Li <= L.len && Ri <= R.len) - if(sorttext(L[Li], R[Ri]) < 1) - result += R&R[Ri++] - else - result += L&L[Li++] - - if(Li <= L.len) - return (result + L.Copy(Li, 0)) - return (result + R.Copy(Ri, 0)) +//uses sortList() but uses the var's name specifically. This should probably be using mergeAtom() instead +/proc/sortNames(var/list/L, order=1) + return sortTim(L, order >= 0 ? /proc/cmp_name_asc : /proc/cmp_name_dsc) //Converts a bitfield to a list of numbers (or words if a wordlist is provided) @@ -368,4 +249,84 @@ /proc/find_record(field, value, list/L) for(var/datum/data/record/R in L) if(R.fields[field] == value) - return R \ No newline at end of file + return R + + +//Move a single element from position fromIndex within a list, to position toIndex +//This will preserve associations ~Carnie +/proc/moveElement(list/L, fromIndex, toIndex) + if(fromIndex > toIndex) + ++fromIndex + else + ++toIndex + + L.Insert(toIndex, null) + L.Swap(fromIndex, toIndex) + L.Cut(fromIndex, fromIndex+1) + + +//Move elements [fromIndex,fromIndex+len) to [toIndex,toIndex+len) +//This will preserve associations and is much faster than copying to a new list +//or checking for associative lists and manually copying elements ~Carnie +/proc/moveRange(list/L, fromIndex, toIndex, len=1) + var/distance = abs(toIndex - fromIndex) + if(len > distance) //there are more elements to be moved than the distance to be moved. Therefore the same result can be achieved (with fewer operations) by moving elements between where we are and where we are going + if(fromIndex < toIndex) + toIndex += len + else + fromIndex += len + + for(var/i=0, i toIndex) + fromIndex += len + else + toIndex += len //? + + for(var/i=0, i distance) //there is an overlap, therefore swapping each element will require more swaps than inserting new elements + if(fromIndex < toIndex) + toIndex += len + else + fromIndex += len + + for(var/i=0, i fromIndex) + var/a = toIndex + toIndex = fromIndex + fromIndex = a + + for(var/i=0, i= 2) + fromIndex = fromIndex % L.len + toIndex = toIndex % (L.len+1) + if(fromIndex <= 0) + fromIndex += L.len + if(toIndex <= 0) + toIndex += L.len + 1 + + sortInstance.L = L + sortInstance.cmp = cmp + sortInstance.associative = associative + + //sortInstance.binarySort(fromIndex, toIndex, fromIndex) + test_bs(L, cmp, fromIndex, toIndex, fromIndex) + + return L + +proc/test_bs(list/L, cmp, lo, hi, start) + //world << "binarySort: [lo] [hi] [start]: " + + ASSERT(lo <= start && start <= hi) + if(start == lo) + ++start + + for(,start < hi, ++start) + var/pivot = L[start] + + //set left and right to the index where pivot belongs + var/left = lo + var/right = start + ASSERT(left <= right) + + //[lo, left) elements <= pivot < [right, start) elements + //in other words, find where the pivot element should go using bisection search + while(left < right) + var/mid = (left + right) >> 1 //round((left+right)/2) + if(call(cmp)(pivot, L[mid]) < 0) + right = mid + else + left = mid+1 + + ASSERT(left == right) + moveElement(L, start, left) //move pivot element to correct location in the sorted range \ No newline at end of file diff --git a/code/__HELPERS/sorts/MergeSort.dm b/code/__HELPERS/sorts/MergeSort.dm new file mode 100644 index 00000000000..228a08efb93 --- /dev/null +++ b/code/__HELPERS/sorts/MergeSort.dm @@ -0,0 +1,16 @@ +//merge-sort - gernerally faster than insert sort, for runs of 7 or larger +/proc/sortMerge(list/L, cmp=/proc/cmp_numeric_asc, associative, fromIndex=1, toIndex) + if(L && L.len >= 2) + fromIndex = fromIndex % L.len + toIndex = toIndex % (L.len+1) + if(fromIndex <= 0) + fromIndex += L.len + if(toIndex <= 0) + toIndex += L.len + 1 + + sortInstance.L = L + sortInstance.cmp = cmp + sortInstance.associative = associative + sortInstance.mergeSort(fromIndex, toIndex) + + return L \ No newline at end of file diff --git a/code/__HELPERS/sorts/TimSort.dm b/code/__HELPERS/sorts/TimSort.dm new file mode 100644 index 00000000000..4aa51263656 --- /dev/null +++ b/code/__HELPERS/sorts/TimSort.dm @@ -0,0 +1,17 @@ +//TimSort interface +/proc/sortTim(list/L, cmp=/proc/cmp_numeric_asc, associative, fromIndex=1, toIndex=0) + if(L && L.len >= 2) + fromIndex = fromIndex % L.len + toIndex = toIndex % (L.len+1) + if(fromIndex <= 0) + fromIndex += L.len + if(toIndex <= 0) + toIndex += L.len + 1 + + sortInstance.L = L + sortInstance.cmp = cmp + sortInstance.associative = associative + + sortInstance.timSort(fromIndex, toIndex) + + return L \ No newline at end of file diff --git a/code/__HELPERS/sorts/__main.dm b/code/__HELPERS/sorts/__main.dm new file mode 100644 index 00000000000..01dc9e96d9c --- /dev/null +++ b/code/__HELPERS/sorts/__main.dm @@ -0,0 +1,668 @@ + //These are macros used to reduce on proc calls +#define moveElement(L, fromIndex, toIndex) if((fromIndex) > (toIndex)){L.Insert((toIndex), null);L.Swap((fromIndex)+1, (toIndex));L.Cut((fromIndex)+1, (fromIndex)+2);}else{L.Insert((toIndex)+1, null);L.Swap((fromIndex), (toIndex)+1);L.Cut((fromIndex), (fromIndex)+1);} +#define fetchElement(L, i) (associative) ? L[L[i]] : L[i] + + //Minimum sized sequence that will be merged. Anything smaller than this will use binary-insertion sort. + //Should be a power of 2 +#define MIN_MERGE 32 + + //When we get into galloping mode, we stay there until both runs win less often than MIN_GALLOP consecutive times. +#define MIN_GALLOP 7 + + //This is a global instance to allow much of this code to be reused. The interfaces are kept seperately +var/datum/sortInstance/sortInstance = new() +/datum/sortInstance + //The array being sorted. + var/list/L + + //The comparator proc-reference + var/cmp = /proc/cmp_numeric_asc + + //whether we are sorting list keys (0: L[i]) or associated values (1: L[L[i]]) + var/associative = 0 + + //This controls when we get *into* galloping mode. It is initialized to MIN_GALLOP. + //The mergeLo and mergeHi methods nudge it higher for random data, and lower for highly structured data. + var/minGallop = MIN_GALLOP + + //Stores information regarding runs yet to be merged. + //Run i starts at runBase[i] and extends for runLen[i] elements. + //runBase[i] + runLen[i] == runBase[i+1] + //var/stackSize + var/list/runBases = list() + var/list/runLens = list() + + + proc/timSort(start, end) + runBases.Cut() + runLens.Cut() + + var/remaining = end - start + + //If array is small, do a 'mini-TimSort' with no merges + if(remaining < MIN_MERGE) + var/initRunLen = countRunAndMakeAscending(start, end) + binarySort(start, end, start+initRunLen) + return + + //March over the array finding natural runs + //Extend any short natural runs to runs of length minRun + var/minRun = minRunLength(remaining) + + do + //identify next run + var/runLen = countRunAndMakeAscending(start, end) + + //if run is short, extend to min(minRun, remaining) + if(runLen < minRun) + var/force = (remaining <= minRun) ? remaining : minRun + + binarySort(start, start+force, start+runLen) + runLen = force + + //add data about run to queue + runBases.Add(start) + runLens.Add(runLen) + + //maybe merge + mergeCollapse() + + //Advance to find next run + start += runLen + remaining -= runLen + + while(remaining > 0) + + + //Merge all remaining runs to complete sort + //ASSERT(start == end) + mergeForceCollapse(); + //ASSERT(runBases.len == 1) + + //reset minGallop, for successive calls + minGallop = MIN_GALLOP + + return L + + /* + Sorts the specified portion of the specified array using a binary + insertion sort. This is the best method for sorting small numbers + of elements. It requires O(n log n) compares, but O(n^2) data + movement (worst case). + + If the initial part of the specified range is already sorted, + this method can take advantage of it: the method assumes that the + elements in range [lo,start) are already sorted + + lo the index of the first element in the range to be sorted + hi the index after the last element in the range to be sorted + start the index of the first element in the range that is not already known to be sorted + */ + proc/binarySort(lo, hi, start) + //ASSERT(lo <= start && start <= hi) + if(start <= lo) + start = lo + 1 + + for(,start < hi, ++start) + var/pivot = fetchElement(L,start) + + //set left and right to the index where pivot belongs + var/left = lo + var/right = start + //ASSERT(left <= right) + + //[lo, left) elements <= pivot < [right, start) elements + //in other words, find where the pivot element should go using bisection search + while(left < right) + var/mid = (left + right) >> 1 //round((left+right)/2) + if(call(cmp)(pivot, fetchElement(L,mid)) < 0) + right = mid + else + left = mid+1 + + //ASSERT(left == right) + moveElement(L, start, left) //move pivot element to correct location in the sorted range + + /* + Returns the length of the run beginning at the specified position and reverses the run if it is back-to-front + + A run is the longest ascending sequence with: + a[lo] <= a[lo + 1] <= a[lo + 2] <= ... + or the longest descending sequence with: + a[lo] > a[lo + 1] > a[lo + 2] > ... + + For its intended use in a stable mergesort, the strictness of the + definition of "descending" is needed so that the call can safely + reverse a descending sequence without violating stability. + */ + proc/countRunAndMakeAscending(lo, hi) + //ASSERT(lo < hi) + + var/runHi = lo + 1 + if(runHi >= hi) + return 1 + + var/last = fetchElement(L,lo) + var/current = fetchElement(L,runHi++) + + if(call(cmp)(current, last) < 0) + while(runHi < hi) + last = current + current = fetchElement(L,runHi) + if(call(cmp)(current, last) >= 0) + break + ++runHi + reverseRange(L, lo, runHi) + else + while(runHi < hi) + last = current + current = fetchElement(L,runHi) + if(call(cmp)(current, last) < 0) + break + ++runHi + + return runHi - lo + + //Returns the minimum acceptable run length for an array of the specified length. + //Natural runs shorter than this will be extended with binarySort + proc/minRunLength(n) + //ASSERT(n >= 0) + var/r = 0 //becomes 1 if any bits are shifted off + while(n >= MIN_MERGE) + r |= (n & 1) + n >>= 1 + return n + r + + //Examines the stack of runs waiting to be merged and merges adjacent runs until the stack invariants are reestablished: + // runLen[i-3] > runLen[i-2] + runLen[i-1] + // runLen[i-2] > runLen[i-1] + //This method is called each time a new run is pushed onto the stack. + //So the invariants are guaranteed to hold for i= 2) + var/n = runBases.len - 1 + if(n > 1 && runLens[n-1] <= runLens[n] + runLens[n+1]) + if(runLens[n-1] < runLens[n+1]) + --n + mergeAt(n) + else if(runLens[n] <= runLens[n+1]) + mergeAt(n) + else + break //Invariant is established + + + //Merges all runs on the stack until only one remains. + //Called only once, to finalise the sort + proc/mergeForceCollapse() + while(runBases.len >= 2) + var/n = runBases.len - 1 + if(n > 1 && runLens[n-1] < runLens[n+1]) + --n + mergeAt(n) + + + //Merges the two consecutive runs at stack indices i and i+1 + //Run i must be the penultimate or antepenultimate run on the stack + //In other words, i must be equal to stackSize-2 or stackSize-3 + proc/mergeAt(i) + //ASSERT(runBases.len >= 2) + //ASSERT(i >= 1) + //ASSERT(i == runBases.len - 1 || i == runBases.len - 2) + + var/base1 = runBases[i] + var/base2 = runBases[i+1] + var/len1 = runLens[i] + var/len2 = runLens[i+1] + + //ASSERT(len1 > 0 && len2 > 0) + //ASSERT(base1 + len1 == base2) + + //Record the legth of the combined runs. If i is the 3rd last run now, also slide over the last run + //(which isn't involved in this merge). The current run (i+1) goes away in any case. + runLens[i] += runLens[i+1] + runLens.Cut(i+1, i+2) + runBases.Cut(i+1, i+2) + + + //Find where the first element of run2 goes in run1. + //Prior elements in run1 can be ignored (because they're already in place) + var/k = gallopRight(fetchElement(L,base2), base1, len1, 0) + //ASSERT(k >= 0) + base1 += k + len1 -= k + if(len1 == 0) + return + + //Find where the last element of run1 goes in run2. + //Subsequent elements in run2 can be ignored (because they're already in place) + len2 = gallopLeft(fetchElement(L,base1 + len1 - 1), base2, len2, len2-1) + //ASSERT(len2 >= 0) + if(len2 == 0) + return + + //Merge remaining runs, using tmp array with min(len1, len2) elements + if(len1 <= len2) + mergeLo(base1, len1, base2, len2) + else + mergeHi(base1, len1, base2, len2) + + + /* + Locates the position to insert key within the specified sorted range + If the range contains elements equal to key, this will return the index of the LEFTMOST of those elements + + key the element to be inserted into the sorted range + base the index of the first element of the sorted range + len the length of the sorted range, must be greater than 0 + hint the offset from base at which to begin the search, such that 0 <= hint < len; i.e. base <= hint < base+hint + + Returns the index at which to insert element 'key' + */ + proc/gallopLeft(key, base, len, hint) + //ASSERT(len > 0 && hint >= 0 && hint < len) + + var/lastOffset = 0 + var/offset = 1 + if(call(cmp)(key, fetchElement(L,base+hint)) > 0) + var/maxOffset = len - hint + while(offset < maxOffset && call(cmp)(key, fetchElement(L,base+hint+offset)) > 0) + lastOffset = offset + offset = (offset << 1) + 1 + + if(offset > maxOffset) + offset = maxOffset + + lastOffset += hint + offset += hint + + else + var/maxOffset = hint + 1 + while(offset < maxOffset && call(cmp)(key, fetchElement(L,base+hint-offset)) <= 0) + lastOffset = offset + offset = (offset << 1) + 1 + + if(offset > maxOffset) + offset = maxOffset + + var/temp = lastOffset + lastOffset = hint - offset + offset = hint - temp + + //ASSERT(-1 <= lastOffset && lastOffset < offset && offset <= len) + + //Now L[base+lastOffset] < key <= L[base+offset], so key belongs somewhere to the right of lastOffset but no farther than + //offset. Do a binary search with invariant L[base+lastOffset-1] < key <= L[base+offset] + ++lastOffset + while(lastOffset < offset) + var/m = lastOffset + ((offset - lastOffset) >> 1) + + if(call(cmp)(key, fetchElement(L,base+m)) > 0) + lastOffset = m + 1 + else + offset = m + + //ASSERT(lastOffset == offset) + return offset + + /** + * Like gallopLeft, except that if the range contains an element equal to + * key, gallopRight returns the index after the rightmost equal element. + * + * @param key the key whose insertion point to search for + * @param a the array in which to search + * @param base the index of the first element in the range + * @param len the length of the range; must be > 0 + * @param hint the index at which to begin the search, 0 <= hint < n. + * The closer hint is to the result, the faster this method will run. + * @param c the comparator used to order the range, and to search + * @return the int k, 0 <= k <= n such that a[b + k - 1] <= key < a[b + k] + */ + proc/gallopRight(key, base, len, hint) + //ASSERT(len > 0 && hint >= 0 && hint < len) + + var/offset = 1 + var/lastOffset = 0 + if(call(cmp)(key, fetchElement(L,base+hint)) < 0) //key <= L[base+hint] + var/maxOffset = hint + 1 //therefore we want to insert somewhere in the range [base,base+hint] = [base+,base+(hint+1)) + while(offset < maxOffset && call(cmp)(key, fetchElement(L,base+hint-offset)) < 0) //we are iterating backwards + lastOffset = offset + offset = (offset << 1) + 1 //1 3 7 15 + //if(offset <= 0) //int overflow, not an issue here since we are using floats + // offset = maxOffset + + if(offset > maxOffset) + offset = maxOffset + + var/temp = lastOffset + lastOffset = hint - offset + offset = hint - temp + + else //key > L[base+hint] + var/maxOffset = len - hint //therefore we want to insert somewhere in the range (base+hint,base+len) = [base+hint+1, base+hint+(len-hint)) + while(offset < maxOffset && call(cmp)(key, fetchElement(L,base+hint+offset)) >= 0) + lastOffset = offset + offset = (offset << 1) + 1 + //if(offset <= 0) //int overflow, not an issue here since we are using floats + // offset = maxOffset + + if(offset > maxOffset) + offset = maxOffset + + lastOffset += hint + offset += hint + + //ASSERT(-1 <= lastOffset && lastOffset < offset && offset <= len) + + ++lastOffset + while(lastOffset < offset) + var/m = lastOffset + ((offset - lastOffset) >> 1) + + if(call(cmp)(key, fetchElement(L,base+m)) < 0) //key <= L[base+m] + offset = m + else //key > L[base+m] + lastOffset = m + 1 + + //ASSERT(lastOffset == offset) + + return offset + + + //Merges two adjacent runs in-place in a stable fashion. + //For performance this method should only be called when len1 <= len2! + proc/mergeLo(base1, len1, base2, len2) + //ASSERT(len1 > 0 && len2 > 0 && base1 + len1 == base2) + + //degenerate cases + if(len2 == 1) + moveElement(L, base2, base1) + return + + if(len1 == 1) + moveElement(L, base1, base2+len2-1) + return + + + //Move first element of second run + moveElement(L, base2, base1) //L[dest++] = L[cursor2++] + --len2 + + var/cursor1 = base1+1 + var/cursor2 = base2+1 + + outer: + while(1) + var/count1 = 0 //# of times in a row that first run won + var/count2 = 0 // " " " " " " second run won + + //do the straightfoward thin until one run starts winning consistently + + do + //ASSERT(len1 > 1 && len2 > 0) + if(call(cmp)(fetchElement(L,cursor2), fetchElement(L,cursor1)) < 0) + moveElement(L, cursor2, cursor1) + ++cursor2 + ++cursor1 + --len2 + + ++count2 + count1 = 0 + + if(len2 == 0) + break outer + else + ++cursor1 + + ++count1 + count2 = 0 + + if(--len1 == 1) + break outer + + while((count1 | count2) < minGallop) + + + //one run is winning consistently so galloping may provide huge benifits + //so try galloping, until such time as the run is no longer consistently winning + do + //ASSERT(len1 > 1 && len2 > 0) + + count1 = gallopRight(fetchElement(L,cursor2), cursor1, len1, 0) + if(count1) + cursor1 += count1 + len1 -= count1 + + if(len1 <= 1) + break outer + + moveElement(L, cursor2, cursor1) + ++cursor2 + ++cursor1 + if(--len2 == 0) + break outer + + count2 = gallopLeft(fetchElement(L,cursor1), cursor2, len2, 0) + if(count2) + moveRange(L, cursor2, cursor1, count2) + + cursor2 += count2 + cursor1 += count2 + len2 -= count2 + + if(len2 == 0) + break outer + + ++cursor1 + if(--len1 == 1) + break outer + + --minGallop + + while((count1|count2) > MIN_GALLOP) + + if(minGallop < 0) + minGallop = 0 + minGallop += 2; // Penalize for leaving gallop mode + + + if(len1 == 1) + //ASSERT(len2 > 0) + + moveRange(L, cursor2, cursor1, len2) + + //else + //ASSERT(len2 == 0) + //ASSERT(len1 > 1) + + + proc/mergeHi(base1, len1, base2, len2) + //ASSERT(len1 > 0 && len2 > 0 && base1 + len1 == base2) + + //degenerate cases + if(len2 == 1) + moveElement(L, base2, base1) + return + + if(len1 == 1) + moveElement(L, base1, base2+len2-1) + return + + var/cursor1 = base1 + len1 - 1 + var/cursor2 = base2 + len2 - 1 + + moveElement(L, cursor1, cursor2) + --len1 + --cursor1 + --cursor2 + + outer: + while(1) + var/count1 = 0 //# of times in a row that first run won + var/count2 = 0 // " " " " " " second run won + + //do the straightfoward thing until one run starts winning consistently + do + //ASSERT(len1 > 0 && len2 > 1) + if(call(cmp)(fetchElement(L,cursor2), fetchElement(L,cursor1)) < 0) + moveElement(L, cursor1, cursor2) + + --cursor1 + --cursor2 + --len1 + + ++count1 + count2 = 0 + + if(len1 == 0) + break outer + else + --cursor2 + --len2 + + ++count2 + count1 = 0 + + if(len2 == 1) + break outer + while((count1 | count2) < minGallop) + + //one run is winning consistently so galloping may provide huge benifits + //so try galloping, until such time as the run is no longer consistently winning + do + //ASSERT(len1 > 0 && len2 > 1) + + count1 = len1 - gallopRight(fetchElement(L,cursor2), base1, len1, len1-1) //should cursor1 be base1? + if(count1) + cursor1 -= count1 + cursor2 -= count1 + len1 -= count1 + + moveRange(L, cursor1+1, cursor2+1, count1) + + if(len1 == 0) + break outer + + --cursor2 + + if(--len2 == 1) + break outer + + count2 = len2 - gallopLeft(fetchElement(L,cursor1), base1+len1, len2, len2-1) + if(count2) + cursor2 -= count2 + len2 -= count2 + + if(len2 <= 1) + break outer + + moveElement(L, cursor1, cursor2) + --cursor1 + --cursor2 + --len1 + + if(len1 == 0) + break outer + + --minGallop + while((count1|count2) > MIN_GALLOP) + + if(minGallop < 0) + minGallop = 0 + minGallop += 2 // Penalize for leaving gallop mode + + if(len2 == 1) + //ASSERT(len1 > 0) + + cursor1 -= len1 + cursor2 -= len1 + moveRange(L, cursor1+1, cursor2+1, len1) + + //else + //ASSERT(len1 == 0) + //ASSERT(len2 > 0) + + + proc/mergeSort(start, end) + var/remaining = end - start + + //If array is small, do an insertion sort + if(remaining < MIN_MERGE) + //var/initRunLen = countRunAndMakeAscending(start, end) + binarySort(start, end, start/*+initRunLen*/) + return + + var/minRun = minRunLength(remaining) + + do + var/runLen = (remaining <= minRun) ? remaining : minRun + + binarySort(start, start+runLen, start) + + //add data about run to queue + runBases.Add(start) + runLens.Add(runLen) + + //Advance to find next run + start += runLen + remaining -= runLen + + while(remaining > 0) + + while(runBases.len >= 2) + var/n = runBases.len - 1 + if(n > 1 && runLens[n-1] <= runLens[n] + runLens[n+1]) + if(runLens[n-1] < runLens[n+1]) + --n + mergeAt2(n) + else if(runLens[n] <= runLens[n+1]) + mergeAt2(n) + else + break //Invariant is established + + while(runBases.len >= 2) + var/n = runBases.len - 1 + if(n > 1 && runLens[n-1] < runLens[n+1]) + --n + mergeAt2(n) + + return L + + proc/mergeAt2(i) + var/cursor1 = runBases[i] + var/cursor2 = runBases[i+1] + + var/end1 = cursor1+runLens[i] + var/end2 = cursor2+runLens[i+1] + + var/val1 = fetchElement(L,cursor1) + var/val2 = fetchElement(L,cursor2) + + while(1) + if(call(cmp)(val1,val2) < 0) + if(++cursor1 >= end1) + break + val1 = fetchElement(L,cursor1) + else + moveElement(L,cursor2,cursor1) + + ++cursor2 + if(++cursor2 >= end2) + break + ++end1 + ++cursor1 + //if(++cursor1 >= end1) + // break + + val2 = fetchElement(L,cursor2) + + + //Record the legth of the combined runs. If i is the 3rd last run now, also slide over the last run + //(which isn't involved in this merge). The current run (i+1) goes away in any case. + runLens[i] += runLens[i+1] + runLens.Cut(i+1, i+2) + runBases.Cut(i+1, i+2) + +#undef MIN_GALLOP +#undef MIN_MERGE + +#undef moveElement +#undef fetchElement \ No newline at end of file diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 24cb285cb27..7450d98fcb8 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -485,7 +485,7 @@ Turf and target are seperate in case you want to teleport some distance from a t //Orders mobs by type then by name /proc/sortmobs() var/list/moblist = list() - var/list/sortmob = sortAtom(mob_list) + var/list/sortmob = sortNames(mob_list) for(var/mob/living/silicon/ai/M in sortmob) moblist.Add(M) for(var/mob/camera/M in sortmob) @@ -818,7 +818,7 @@ Turf and target are seperate in case you want to teleport some distance from a t //Returns: all the areas in the world, sorted. /proc/return_sorted_areas() - return sortAtom(return_areas()) + return sortNames(return_areas()) //Takes: Area type as text string or as typepath OR an instance of the area. //Returns: A list of all areas of that type in the world. diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index 2fb8c9bd852..c072fc6ae39 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -639,7 +639,7 @@ body reagent_options[R.name] = r_id if(reagent_options.len) - reagent_options = sortAssoc(reagent_options) + sortList(reagent_options) reagent_options.Insert(1, "CANCEL") var/chosen = input(usr, "Choose a reagent to add.", "Choose a reagent.") in reagent_options diff --git a/code/game/gamemodes/sandbox/h_sandbox.dm b/code/game/gamemodes/sandbox/h_sandbox.dm index d2f36a2ee7e..9b3045d62a1 100644 --- a/code/game/gamemodes/sandbox/h_sandbox.dm +++ b/code/game/gamemodes/sandbox/h_sandbox.dm @@ -233,7 +233,7 @@ datum/hSB/Topic(href, href_list) var/list/all_items = typesof(/obj/item/clothing) - /obj/item/clothing for(var/typekey in spawn_forbidden) all_items -= typesof(typekey) - for(var/O in reverselist(all_items)) + for(var/O in reverseRange(all_items)) clothinfo += "[O]
" usr << browse(clothinfo,"window=sandbox") @@ -247,7 +247,7 @@ datum/hSB/Topic(href, href_list) var/list/all_items = typesof(/obj/item/weapon/reagent_containers) - /obj/item/weapon/reagent_containers for(var/typekey in spawn_forbidden) all_items -= typesof(typekey) - for(var/O in reverselist(all_items)) + for(var/O in reverseRange(all_items)) reaginfo += "[O]
" usr << browse(reaginfo,"window=sandbox") @@ -262,7 +262,7 @@ datum/hSB/Topic(href, href_list) for(var/typekey in spawn_forbidden) all_items -= typesof(typekey) - for(var/O in reverselist(all_items)) + for(var/O in reverseRange(all_items)) objinfo += "[O]
" usr << browse(objinfo,"window=sandbox") diff --git a/code/game/machinery/computer/message.dm b/code/game/machinery/computer/message.dm index 8be739d4b89..b9d29711de0 100644 --- a/code/game/machinery/computer/message.dm +++ b/code/game/machinery/computer/message.dm @@ -397,7 +397,7 @@ //Get out list of viable PDAs var/list/obj/item/device/pda/sendPDAs = get_viewable_pdas() if(PDAs && PDAs.len > 0) - customrecepient = input(usr, "Select a PDA from the list.") as null|anything in sortAtom(sendPDAs) + customrecepient = input(usr, "Select a PDA from the list.") as null|anything in sortNames(sendPDAs) else customrecepient = null diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 752d894dfb4..c817315ebab 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -370,7 +370,7 @@ var/global/list/obj/item/device/pda/PDAs = list() var/count = 0 if (!toff) - for (var/obj/item/device/pda/P in sortAtom(get_viewable_pdas())) + for (var/obj/item/device/pda/P in sortNames(get_viewable_pdas())) if (P == src) continue dat += "

  • [P]" if (istype(cartridge, /obj/item/weapon/cartridge/syndicate) && P.detonate) diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm index 24edb356243..da1bcf84de8 100644 --- a/code/game/objects/items/devices/camera_bug.dm +++ b/code/game/objects/items/devices/camera_bug.dm @@ -103,7 +103,7 @@ if(NETWORK_BUG,ADMIN_BUG) if(length(list("SS13","MINE")&camera.network)) bugged_cameras[camera.c_tag] = camera - bugged_cameras = sortAssoc(bugged_cameras) + sortList(bugged_cameras) return bugged_cameras diff --git a/code/modules/food&drinks/kitchen machinery/smartfridge.dm b/code/modules/food&drinks/kitchen machinery/smartfridge.dm index 30b4a4fbce2..ea28ba2f3c1 100644 --- a/code/modules/food&drinks/kitchen machinery/smartfridge.dm +++ b/code/modules/food&drinks/kitchen machinery/smartfridge.dm @@ -107,7 +107,7 @@ item_quants[n]++ else item_quants[n] = 1 - item_quants = sortAssoc(item_quants) + sortList(item_quants) /obj/machinery/smartfridge/attack_paw(mob/user as mob) return src.attack_hand(user) diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index eb72fb2b9f8..a344f31aaeb 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -625,7 +625,7 @@ [(pda.silent) ? " \[Off\]" : " \[On\]"]

    "} dat += "