diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 520c192db97..d4e78501639 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -153,6 +153,16 @@ structure_check() searches for nearby cultist structures required for the invoca L.changeNext_move(CLICK_CD_MELEE)//THIS IS WHY WE CAN'T HAVE NICE THINGS do_invoke_glow() +/obj/effect/rune/proc/burn_invokers(var/list/mobstoburn) + for(var/M in mobstoburn) + var/mob/living/L = M + to_chat(L, "\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"") + if(L.reagents) + L.reagents.add_reagent("hell_water", 10) + L.Weaken(7) + L.Stun(7) + fail_invoke() + /obj/effect/rune/proc/do_invoke_glow() var/oldtransform = transform spawn(0) //animate is a delay, we want to avoid being delayed @@ -476,16 +486,13 @@ var/list/teleport_runes = list() return var/mob/living/user = invokers[1] var/datum/game_mode/cult/cult_mode = ticker.mode + if(!(CULT_ELDERGOD in cult_mode.objectives)) + message_admins("[key_name_admin(user)] tried to summonn an eldritch horror when the objective was wrong") + burn_invokers(invokers) + log_game("Summon Nar-Sie rune failed - improper objective") if(!is_station_level(user.z)) message_admins("[key_name_admin(user)] tried to summon an eldritch horror off station") - for(var/M in invokers) - var/mob/living/L = M - to_chat(L, "\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"") - if(L.reagents) - L.reagents.add_reagent("hell_water", 10) - L.Weaken(7) - L.Stun(7) - fail_invoke() + burn_invokers(invokers) log_game("Summon Nar-Sie rune failed - off station Z level") return if(!cult_mode.eldergod) @@ -566,26 +573,12 @@ var/list/teleport_runes = list() var/datum/game_mode/cult/cult_mode = ticker.mode if(!(CULT_SLAUGHTER in cult_mode.objectives)) message_admins("[usr.real_name]([user.ckey]) tried to summon demons when the objective was wrong") - for(var/M in invokers) - var/mob/living/L = M - to_chat(L, "\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"") - if(L.reagents) - L.reagents.add_reagent("hell_water", 10) - L.Weaken(7) - L.Stun(7) - fail_invoke() + burn_invokers(invokers) log_game("Summon Demons rune failed - improper objective") return if(!is_station_level(user.z)) message_admins("[user.real_name]([user.ckey]) tried to summon demons off station") - for(var/M in invokers) - var/mob/living/L = M - to_chat(L, "\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"") - if(L.reagents) - L.reagents.add_reagent("hell_water", 10) - L.Weaken(7) - L.Stun(7) - fail_invoke() + burn_invokers(invokers) log_game("Summon demons rune failed - off station Z level") return if(cult_mode.demons_summoned) diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 1634ebdc4a0..2a11b4a8836 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -369,7 +369,7 @@ What a mess.*/ var/counter = 1 while(active2.fields[text("com_[]", counter)]) counter++ - active2.fields[text("com_[counter]")] = text("Made by [authenticated] ([rank]) on [time2text(world.realtime, "DDD MMM DD hh:mm:ss")], 2557
[t1]") + active2.fields[text("com_[counter]")] = text("Made by [authenticated] ([rank]) on [worldtime2text()]
[t1]") if("Delete Record (ALL)") if(active1) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 020ae026e54..6e155779aa5 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -833,6 +833,8 @@ /obj/mecha/proc/attacked_by(obj/item/I, mob/user) log_message("Attacked by [I]. Attacker - [user]") + user.changeNext_move(CLICK_CD_MELEE) + user.do_attack_animation(src) var/deflection = deflect_chance var/dam_coeff = 1 for(var/obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster/B in equipment) diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm index 07c7e54bb3c..3cc0f9b6023 100644 --- a/code/game/objects/items/blueprints.dm +++ b/code/game/objects/items/blueprints.dm @@ -53,7 +53,7 @@ By submitting this form, you accept any fines, fees, or personal injury/death that may occur during construction." w_class = 1 -/obj/item/areaeditor/permit/attack_self(mob/user as mob) +/obj/item/areaeditor/permit/attack_self(mob/user) . = ..() var/area/A = get_area() if(get_area_type() == AREA_STATION) @@ -85,7 +85,7 @@ return ..() -/obj/item/areaeditor/blueprints/attack_self(mob/user as mob) +/obj/item/areaeditor/blueprints/attack_self(mob/user) . = ..() var/area/A = get_area() if(get_area_type() == AREA_STATION) @@ -305,3 +305,10 @@ return ROOM_ERR_SPACE found+=T return found + +//Blueprint Subtypes + +/obj/item/areaeditor/blueprints/cyborg + name = "station schematics" + desc = "A digital copy of the station blueprints stored in your memory." + fluffnotice = "Intellectual Property of Nanotrasen. For use in engineering cyborgs only. Wipe from memory upon departure from the station." diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 478ecba8f0e..e213c555c43 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -16,6 +16,7 @@ var/cutting_sound = 'sound/items/Welder.ogg' var/storage_capacity = 30 //This is so that someone can't pack hundreds of items in a locker/crate then open it in a populated area to crash clients. var/material_drop = /obj/item/stack/sheet/metal + var/material_drop_amount = 2 /obj/structure/closet/New() ..() @@ -256,7 +257,7 @@ "You cut \the [src] apart with \the [WT].", "You hear welding.") var/turf/T = get_turf(src) - new material_drop(T) + new material_drop(T, material_drop_amount) qdel(src) return if(isrobot(user)) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 39f73310566..152ed03fec8 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -204,7 +204,7 @@ modules += new /obj/item/weapon/gripper(src) modules += new /obj/item/weapon/matter_decompiler(src) modules += new /obj/item/device/floor_painter(src) - + modules += new /obj/item/areaeditor/blueprints/cyborg(src) emag = new /obj/item/borg/stun(src) for(var/G in stacktypes) //Attempt to unify Engi-Borg material stacks into fewer lines. See Line 492 for example. Variables changed out of paranoia. diff --git a/html/changelog.html b/html/changelog.html index aff225745b3..69e14852b52 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -55,6 +55,20 @@ -->
+

02 February 2017

+

Alexshreds updated:

+ +

Kyep updated:

+ +

uraniummeltdown updated:

+ +

31 January 2017

Ar3nn updated: