Merge with development

This commit is contained in:
Lohikar
2017-03-04 15:58:56 -06:00
505 changed files with 17013 additions and 10635 deletions
@@ -27,8 +27,9 @@
/obj/structure/closet/initialize()
..()
if(!opened) // if closed, any item at the crate's loc is put in the contents
var/obj/item/I
var/obj/I
for(I in src.loc)
if (!istype(I, /obj/item) && !istype(I, /obj/random))continue
if(I.density || I.anchored || I == src) continue
I.forceMove(src)
// adjust locker size to hold all items with 5 units of free store room
@@ -18,11 +18,9 @@
New()
..()
for(var/i = 0, i < 6, i++)
for(var/i = 0, i < 2, i++)
new /obj/item/weapon/reagent_containers/food/condiment/flour(src)
new /obj/item/weapon/reagent_containers/food/condiment/sugar(src)
for(var/i = 0, i < 3, i++)
new /obj/item/weapon/reagent_containers/food/snacks/meat/monkey(src)
return
@@ -43,7 +41,7 @@
New()
..()
for(var/i = 0, i < 4, i++)
for(var/i = 0, i < 8, i++)
new /obj/item/weapon/reagent_containers/food/snacks/meat/monkey(src)
return
@@ -63,7 +61,7 @@
..()
for(var/i = 0, i < 5, i++)
new /obj/item/weapon/reagent_containers/food/drinks/milk(src)
for(var/i = 0, i < 3, i++)
for(var/i = 0, i < 2, i++)
new /obj/item/weapon/reagent_containers/food/drinks/soymilk(src)
for(var/i = 0, i < 2, i++)
new /obj/item/weapon/storage/fancy/egg_box(src)
@@ -86,9 +86,7 @@
user << "<span class='warning'>Access Denied</span>"
else if(istype(W, /obj/item/weapon/melee/energy/blade))
if(emag_act(INFINITY, user, "The locker has been sliced open by [user] with \an [W]!", "You hear metal being sliced and sparks flying."))
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, src.loc)
spark_system.start()
W:spark_system.queue()
playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1)
playsound(src.loc, "sparks", 50, 1)
else
@@ -80,9 +80,7 @@
W.forceMove(src.loc)
else if(istype(W, /obj/item/weapon/melee/energy/blade))//Attempt to cut open locker if locked
if(emag_act(INFINITY, user, "<span class='danger'>The locker has been sliced open by [user] with \an [W]</span>!", "<span class='danger'>You hear metal being sliced and sparks flying.</span>"))
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, src.loc)
spark_system.start()
W:spark_system.queue()
playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1)
playsound(src.loc, "sparks", 50, 1)
else if(!src.opened)
@@ -165,4 +163,4 @@
if(istype(loc, /obj/structure/bigDelivery))
var/obj/structure/bigDelivery/BD = loc
BD.unwrap()
open()
open()
@@ -32,9 +32,7 @@
if(isliving(usr))
var/mob/living/L = usr
if(L.electrocute_act(17, src))
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(5, 1, src)
s.start()
spark(src, 5, alldirs)
if(usr.stunned)
return 2
@@ -157,7 +155,7 @@
else return 1
else if(istype(mover) && mover.checkpass(PASSTABLE))
return 1
return 0
return ..()
/obj/structure/closet/crate/Move(var/turf/destination, dir)
if(..())
@@ -708,4 +706,4 @@
if ("2")
return pickweight(random_stock_uncommon)
if ("3")
return pickweight(random_stock_common)
return pickweight(random_stock_common)
@@ -61,16 +61,14 @@
A.updateicon()
flick("echair1", src)
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(12, 1, src)
s.start()
spark(src, 12, alldirs)
if(buckled_mob)
buckled_mob.burn_skin(85)
buckled_mob << "<span class='danger'>You feel a deep shock course through your body!</span>"
sleep(1)
buckled_mob.burn_skin(85)
buckled_mob.Stun(600)
visible_message("<span class='danger'>The electric chair went off!</span>", "<span class='danger'>You hear a deep sharp shock!</span>")
visible_message("<span class='danger'>The electric chair goes off!</span>", "<span class='danger'>You hear a deep sharp shock!</span>")
A.power_light = light
A.updateicon()
+15 -1
View File
@@ -65,7 +65,7 @@
else if(!anchored)
playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
user << "<span class='notice'>Now securing the girder...</span>"
if(get_turf(user, 40))
if(do_after(user, 40))
user << "<span class='notice'>You secured the girder!</span>"
reset_girder()
@@ -316,3 +316,17 @@
else
user << "<span class='notice'>You need to activate the weapon to do that!</span>"
return
/obj/structure/girder/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
if (!mover)
return 1
if(istype(mover,/obj/item/projectile) && density)
if (prob(50))
return 1
else
return 0
else if(mover.checkpass(PASSTABLE))
//Animals can run under them, lots of empty space
return 1
return ..()
+1 -3
View File
@@ -195,9 +195,7 @@
if(electrocute_mob(user, C, src))
if(C.powernet)
C.powernet.trigger_warning()
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(3, 1, src)
s.start()
spark(src, 3, alldirs)
if(user.stunned)
return 1
else
+1
View File
@@ -48,6 +48,7 @@
//Altclick the cart with a mop to stow the mop away
//Altclick the cart with a reagent container to pour things into the bucket without putting the bottle in trash
/obj/structure/janitorialcart/AltClick()
if(!usr || usr.stat || usr.lying || usr.restrained() || !Adjacent(usr)) return
var/obj/I = usr.get_active_hand()
if(istype(I, /obj/item/weapon/mop))
if(!mymop)
@@ -9,6 +9,10 @@ var/global/list/stool_cache = list() //haha stool
force = 10
throwforce = 10
w_class = 5
item_state_slots = list(
slot_l_hand_str = "stool",
slot_r_hand_str = "stool"
)
var/base_icon = "stool_base"
var/material/material
var/material/padding_material
+41 -10
View File
@@ -1,3 +1,9 @@
#define M_UNDER "Male underwear"
#define F_UNDER "Female underwear"
#define M_SOCKS "Male socks"
#define F_SOCKS "Female socks"
#define U_SHIRT "Undershirt"
/obj/structure/undies_wardrobe
name = "underwear wardrobe"
desc = "Holds item of clothing you shouldn't be showing off in the hallways."
@@ -8,27 +14,52 @@
/obj/structure/undies_wardrobe/attack_hand(mob/user as mob)
src.add_fingerprint(user)
var/mob/living/carbon/human/H = user
if(!ishuman(user) || (H.species && !(H.species.appearance_flags & HAS_UNDERWEAR)))
if(!ishuman(user) || (H.species && !(H.species.appearance_flags & HAS_UNDERWEAR)) && !(H.species.appearance_flags & HAS_SOCKS))
user << "<span class='warning'>Sadly there's nothing in here for you to wear.</span>"
return 0
var/utype = alert("Which section do you want to pick from?",,"Male underwear", "Female underwear", "Undershirts")
var/list/selection_types = list()
if (H.species.appearance_flags & HAS_UNDERWEAR)
selection_types += list(M_UNDER, F_UNDER, U_SHIRT)
if (H.species.appearance_flags & HAS_SOCKS)
selection_types += list(M_SOCKS, F_SOCKS)
var/utype = input("Which section do you want to pick from?") as null|anything in selection_types
var/list/selection
switch(utype)
if("Male underwear")
if(M_UNDER)
selection = underwear_m
if("Female underwear")
if(F_UNDER)
selection = underwear_f
if("Undershirts")
if(U_SHIRT)
selection = undershirt_t
if(M_SOCKS)
selection = socks_m
if(F_SOCKS)
selection = socks_f
var/pick = input("Select the style") as null|anything in selection
if(pick)
if(get_dist(src,user) > 1)
return
if(utype == "Undershirts")
H.undershirt = undershirt_t[pick]
else
H.underwear = selection[pick]
switch (utype)
if(U_SHIRT)
H.undershirt = undershirt_t[pick]
if(F_SOCKS)
H.socks = selection[pick]
if(M_SOCKS)
H.socks = selection[pick]
if(M_UNDER)
H.underwear = selection[pick]
if(F_UNDER)
H.underwear = selection[pick]
H.update_body(1)
return 1
return 1
#undef M_UNDER
#undef F_UNDER
#undef M_SOCKS
#undef F_SOCKS
#undef U_SHIRT