Merge branch 'master' of https://github.com/PolarisSS13/Polaris into polaris-sync-2018-02-16

# Conflicts:
#	code/_onclick/hud/screen_objects.dm
#	code/game/objects/items/weapons/storage/storage.dm
#	code/game/objects/structures/crates_lockers/closets/secure/medical.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/clothing/clothing.dm
#	code/modules/clothing/gloves/color.dm
#	code/modules/lore_codex/codex.dm
#	code/modules/mob/living/simple_animal/aliens/alien.dm
#	code/modules/mob/living/simple_animal/animals/cat.dm
#	code/modules/mob/living/simple_animal/animals/goose.dm
#	code/modules/mob/living/simple_animal/simple_animal.dm
#	code/modules/mob/mob_defines.dm
#	code/modules/projectiles/projectile/special.dm
#	html/changelogs/.all_changelog.yml
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-7.dmm
#	vorestation.dme
This commit is contained in:
Leshana
2018-02-17 00:21:41 -05:00
255 changed files with 4854 additions and 2785 deletions
@@ -38,7 +38,7 @@
..()
new /obj/item/clothing/suit/bio_suit/security(src)
new /obj/item/clothing/head/bio_hood/security(src)
new /obj/item/weapon/gun/energy/taser/xeno/sec(src)
/obj/structure/closet/l3closet/janitor
icon_state = "bio_janitor"
@@ -10,7 +10,7 @@
req_access = list(access_medical)
New()
/obj/structure/closet/secure_closet/medical1/New()
..()
new /obj/item/weapon/storage/box/autoinjectors(src)
new /obj/item/weapon/storage/box/syringes(src)
@@ -38,7 +38,7 @@
req_access = list(access_surgery)
New()
/obj/structure/closet/secure_closet/medical2/New()
..()
new /obj/item/weapon/tank/anesthetic(src)
new /obj/item/weapon/tank/anesthetic(src)
@@ -60,63 +60,63 @@
icon_broken = "securemedbroken"
icon_off = "securemedoff"
New()
..()
if(prob(50))
new /obj/item/weapon/storage/backpack/medic(src)
else
new /obj/item/weapon/storage/backpack/satchel/med(src)
if(prob(50))
new /obj/item/weapon/storage/backpack/dufflebag/med(src)
new /obj/item/clothing/under/rank/nursesuit (src)
new /obj/item/clothing/head/nursehat (src)
switch(pick("blue", "green", "purple", "black", "navyblue"))
if ("blue")
new /obj/item/clothing/under/rank/medical/scrubs(src)
new /obj/item/clothing/head/surgery/blue(src)
if ("green")
new /obj/item/clothing/under/rank/medical/scrubs/green(src)
new /obj/item/clothing/head/surgery/green(src)
if ("purple")
new /obj/item/clothing/under/rank/medical/scrubs/purple(src)
new /obj/item/clothing/head/surgery/purple(src)
if ("black")
new /obj/item/clothing/under/rank/medical/scrubs/black(src)
new /obj/item/clothing/head/surgery/black(src)
if ("navyblue")
new /obj/item/clothing/under/rank/medical/scrubs/navyblue(src)
new /obj/item/clothing/head/surgery/navyblue(src)
switch(pick("blue", "green", "purple", "black", "navyblue"))
if ("blue")
new /obj/item/clothing/under/rank/medical/scrubs(src)
new /obj/item/clothing/head/surgery/blue(src)
if ("green")
new /obj/item/clothing/under/rank/medical/scrubs/green(src)
new /obj/item/clothing/head/surgery/green(src)
if ("purple")
new /obj/item/clothing/under/rank/medical/scrubs/purple(src)
new /obj/item/clothing/head/surgery/purple(src)
if ("black")
new /obj/item/clothing/under/rank/medical/scrubs/black(src)
new /obj/item/clothing/head/surgery/black(src)
if ("navyblue")
new /obj/item/clothing/under/rank/medical/scrubs/navyblue(src)
new /obj/item/clothing/head/surgery/navyblue(src)
new /obj/item/clothing/under/rank/medical(src)
new /obj/item/clothing/under/rank/nurse(src)
new /obj/item/clothing/under/rank/orderly(src)
new /obj/item/clothing/suit/storage/toggle/labcoat(src)
new /obj/item/clothing/suit/storage/toggle/fr_jacket(src)
new /obj/item/clothing/shoes/white(src)
new /obj/item/weapon/cartridge/medical(src)
new /obj/item/device/radio/headset/headset_med(src)
new /obj/item/device/radio/headset/headset_med/alt(src)
new /obj/item/clothing/suit/storage/hooded/wintercoat/medical(src)
new /obj/item/clothing/shoes/boots/winter/medical(src)
new /obj/item/weapon/storage/box/freezer(src)
new /obj/item/weapon/storage/box/freezer(src)
new /obj/item/weapon/storage/box/freezer(src)
return
/obj/structure/closet/secure_closet/medical3/New()
..()
if(prob(50))
new /obj/item/weapon/storage/backpack/medic(src)
else
new /obj/item/weapon/storage/backpack/satchel/med(src)
if(prob(50))
new /obj/item/weapon/storage/backpack/dufflebag/med(src)
new /obj/item/clothing/under/rank/nursesuit (src)
new /obj/item/clothing/head/nursehat (src)
switch(pick("blue", "green", "purple", "black", "navyblue"))
if ("blue")
new /obj/item/clothing/under/rank/medical/scrubs(src)
new /obj/item/clothing/head/surgery/blue(src)
if ("green")
new /obj/item/clothing/under/rank/medical/scrubs/green(src)
new /obj/item/clothing/head/surgery/green(src)
if ("purple")
new /obj/item/clothing/under/rank/medical/scrubs/purple(src)
new /obj/item/clothing/head/surgery/purple(src)
if ("black")
new /obj/item/clothing/under/rank/medical/scrubs/black(src)
new /obj/item/clothing/head/surgery/black(src)
if ("navyblue")
new /obj/item/clothing/under/rank/medical/scrubs/navyblue(src)
new /obj/item/clothing/head/surgery/navyblue(src)
switch(pick("blue", "green", "purple", "black", "navyblue"))
if ("blue")
new /obj/item/clothing/under/rank/medical/scrubs(src)
new /obj/item/clothing/head/surgery/blue(src)
if ("green")
new /obj/item/clothing/under/rank/medical/scrubs/green(src)
new /obj/item/clothing/head/surgery/green(src)
if ("purple")
new /obj/item/clothing/under/rank/medical/scrubs/purple(src)
new /obj/item/clothing/head/surgery/purple(src)
if ("black")
new /obj/item/clothing/under/rank/medical/scrubs/black(src)
new /obj/item/clothing/head/surgery/black(src)
if ("navyblue")
new /obj/item/clothing/under/rank/medical/scrubs/navyblue(src)
new /obj/item/clothing/head/surgery/navyblue(src)
new /obj/item/clothing/under/rank/medical(src)
new /obj/item/clothing/under/rank/nurse(src)
new /obj/item/clothing/under/rank/orderly(src)
new /obj/item/clothing/suit/storage/toggle/labcoat(src)
new /obj/item/clothing/suit/storage/toggle/fr_jacket(src)
new /obj/item/clothing/shoes/white(src)
new /obj/item/weapon/cartridge/medical(src)
new /obj/item/device/radio/headset/headset_med(src)
new /obj/item/device/radio/headset/headset_med/alt(src)
new /obj/item/clothing/suit/storage/hooded/wintercoat/medical(src)
new /obj/item/clothing/shoes/boots/winter/medical(src)
new /obj/item/weapon/storage/box/freezer(src)
new /obj/item/weapon/storage/box/freezer(src)
new /obj/item/weapon/storage/box/freezer(src)
return
/obj/structure/closet/secure_closet/paramedic
name = "paramedic locker"
@@ -130,7 +130,7 @@
req_access = list(access_medical_equip)
New()
/obj/structure/closet/secure_closet/paramedic/New()
..()
new /obj/item/weapon/storage/backpack/dufflebag/emt(src)
new /obj/item/weapon/storage/box/autoinjectors(src)
@@ -167,51 +167,51 @@
icon_broken = "cmosecurebroken"
icon_off = "cmosecureoff"
New()
..()
if(prob(50))
new /obj/item/weapon/storage/backpack/medic(src)
else
new /obj/item/weapon/storage/backpack/satchel/med(src)
if(prob(50))
new /obj/item/weapon/storage/backpack/dufflebag/med(src)
new /obj/item/clothing/suit/bio_suit/cmo(src)
new /obj/item/clothing/head/bio_hood/cmo(src)
new /obj/item/clothing/shoes/white(src)
switch(pick("blue", "green", "purple", "black", "navyblue"))
if ("blue")
new /obj/item/clothing/under/rank/medical/scrubs(src)
new /obj/item/clothing/head/surgery/blue(src)
if ("green")
new /obj/item/clothing/under/rank/medical/scrubs/green(src)
new /obj/item/clothing/head/surgery/green(src)
if ("purple")
new /obj/item/clothing/under/rank/medical/scrubs/purple(src)
new /obj/item/clothing/head/surgery/purple(src)
if ("black")
new /obj/item/clothing/under/rank/medical/scrubs/black(src)
new /obj/item/clothing/head/surgery/black(src)
if ("navyblue")
new /obj/item/clothing/under/rank/medical/scrubs/navyblue(src)
new /obj/item/clothing/head/surgery/navyblue(src)
new /obj/item/clothing/under/rank/chief_medical_officer(src)
new /obj/item/clothing/under/rank/chief_medical_officer/skirt(src)
new /obj/item/clothing/suit/storage/toggle/labcoat/cmo(src)
new /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt(src)
new /obj/item/weapon/cartridge/cmo(src)
new /obj/item/clothing/gloves/sterile/latex(src)
new /obj/item/clothing/shoes/brown (src)
new /obj/item/device/radio/headset/heads/cmo(src)
new /obj/item/device/radio/headset/heads/cmo/alt(src)
new /obj/item/device/flash(src)
new /obj/item/weapon/reagent_containers/hypospray/vial(src)
new /obj/item/weapon/reagent_containers/glass/beaker/vial(src) //VOREStation Edit - An extra vial for the hypo
new /obj/item/clothing/suit/storage/hooded/wintercoat/medical(src)
new /obj/item/clothing/shoes/boots/winter/medical(src)
new /obj/item/weapon/storage/box/freezer(src)
new /obj/item/clothing/mask/gas(src)
new /obj/item/taperoll/medical(src)
return
/obj/structure/closet/secure_closet/CMO/New()
..()
if(prob(50))
new /obj/item/weapon/storage/backpack/medic(src)
else
new /obj/item/weapon/storage/backpack/satchel/med(src)
if(prob(50))
new /obj/item/weapon/storage/backpack/dufflebag/med(src)
new /obj/item/clothing/suit/bio_suit/cmo(src)
new /obj/item/clothing/head/bio_hood/cmo(src)
new /obj/item/clothing/shoes/white(src)
switch(pick("blue", "green", "purple", "black", "navyblue"))
if ("blue")
new /obj/item/clothing/under/rank/medical/scrubs(src)
new /obj/item/clothing/head/surgery/blue(src)
if ("green")
new /obj/item/clothing/under/rank/medical/scrubs/green(src)
new /obj/item/clothing/head/surgery/green(src)
if ("purple")
new /obj/item/clothing/under/rank/medical/scrubs/purple(src)
new /obj/item/clothing/head/surgery/purple(src)
if ("black")
new /obj/item/clothing/under/rank/medical/scrubs/black(src)
new /obj/item/clothing/head/surgery/black(src)
if ("navyblue")
new /obj/item/clothing/under/rank/medical/scrubs/navyblue(src)
new /obj/item/clothing/head/surgery/navyblue(src)
new /obj/item/clothing/under/rank/chief_medical_officer(src)
new /obj/item/clothing/under/rank/chief_medical_officer/skirt(src)
new /obj/item/clothing/suit/storage/toggle/labcoat/cmo(src)
new /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt(src)
new /obj/item/weapon/cartridge/cmo(src)
new /obj/item/clothing/gloves/sterile/latex(src)
new /obj/item/clothing/shoes/brown (src)
new /obj/item/device/radio/headset/heads/cmo(src)
new /obj/item/device/radio/headset/heads/cmo/alt(src)
new /obj/item/device/flash(src)
new /obj/item/weapon/reagent_containers/hypospray/vial(src)
new /obj/item/weapon/reagent_containers/glass/beaker/vial(src) //VOREStation Edit - An extra vial for the hypo
new /obj/item/clothing/suit/storage/hooded/wintercoat/medical(src)
new /obj/item/clothing/shoes/boots/winter/medical(src)
new /obj/item/weapon/storage/box/freezer(src)
new /obj/item/clothing/mask/gas(src)
new /obj/item/taperoll/medical(src)
return
@@ -220,7 +220,7 @@
req_access = list(access_surgery)
New()
/obj/structure/closet/secure_closet/animal/New()
..()
new /obj/item/device/assembly/signaler(src)
new /obj/item/device/radio/electropack(src)
@@ -242,7 +242,7 @@
req_access = list(access_chemistry)
New()
/obj/structure/closet/secure_closet/chemical/New()
..()
new /obj/item/clothing/under/rank/psych(src)
new /obj/item/clothing/under/rank/psych/turtleneck(src)
@@ -285,7 +285,7 @@
req_access = list(access_psychiatrist)
New()
/obj/structure/closet/secure_closet/psych/New()
..()
new /obj/item/clothing/under/rank/psych(src)
new /obj/item/clothing/under/rank/psych/turtleneck(src)
@@ -333,9 +333,25 @@
/obj/structure/closet/secure_closet/medical_wall/pills
name = "pill cabinet"
New()
/obj/structure/closet/secure_closet/medical_wall/pills/New()
..()
new /obj/item/weapon/storage/pill_bottle/tramadol(src)
new /obj/item/weapon/storage/pill_bottle/antitox(src)
new /obj/item/weapon/storage/pill_bottle/carbon(src)
new /obj/random/medical/pillbottle(src)
new /obj/random/medical/pillbottle(src)
return
/obj/structure/closet/secure_closet/medical_wall/anesthetics
name = "anesthetics wall closet"
desc = "Used to knock people out."
req_access = list(access_surgery)
/obj/structure/closet/secure_closet/medical_wall/anesthetics/New()
..()
new /obj/item/weapon/tank/anesthetic(src)
new /obj/item/weapon/tank/anesthetic(src)
new /obj/item/weapon/tank/anesthetic(src)
new /obj/item/clothing/mask/breath/medical(src)
new /obj/item/clothing/mask/breath/medical(src)
new /obj/item/clothing/mask/breath/medical(src)
return
@@ -320,3 +320,10 @@
if(2)
name = "near finished "
name += "[glass == 1 ? "window " : ""][istext(glass) ? "[glass] airlock" : base_name] assembly ([created_name])"
// Airlock frames are indestructable, so bullets hitting them would always be stopped.
// To fix this, airlock assemblies will sometimes let bullets pass through, since generally the sprite shows them partially open.
/obj/structure/door_assembly/bullet_act(var/obj/item/projectile/P)
if(prob(40)) // Chance for the frame to let the bullet keep going.
return PROJECTILE_CONTINUE
return ..()
+10 -1
View File
@@ -47,13 +47,19 @@
animate(transform=null, pixel_x=init_px, time=6, easing=ELASTIC_EASING)
// Used when the tree gets hurt.
/obj/structure/flora/tree/proc/adjust_health(var/amount)
/obj/structure/flora/tree/proc/adjust_health(var/amount, var/is_ranged = FALSE)
if(is_stump)
return
// Bullets and lasers ruin some of the wood
if(is_ranged && product_amount > 0)
var/wood = initial(product_amount)
product_amount -= round(wood * (abs(amount)/max_health))
health = between(0, health + amount, max_health)
if(health <= 0)
die()
return
// Called when the tree loses all health, for whatever reason.
/obj/structure/flora/tree/proc/die()
@@ -81,6 +87,9 @@
/obj/structure/flora/tree/ex_act(var/severity)
adjust_health(-(max_health / severity))
/obj/structure/flora/tree/bullet_act(var/obj/item/projectile/Proj)
if(Proj.get_structure_damage())
adjust_health(-Proj.get_structure_damage(), TRUE)
/obj/structure/flora/tree/get_description_interaction()
var/list/results = list()
+1 -1
View File
@@ -104,7 +104,7 @@
playsound(src, W.usesound, 100, 1)
anchored = !anchored
user.visible_message("<span class='notice'>[user] [anchored ? "fastens" : "unfastens"] the grille.</span>", \
"<span class='notice'>You have [anchored ? "fastened the grille to" : "unfastened the grill from"] the floor.</span>")
"<span class='notice'>You have [anchored ? "fastened the grille to" : "unfastened the grille from"] the floor.</span>")
return
//window placing begin //TODO CONVERT PROPERLY TO MATERIAL DATUM
@@ -522,3 +522,50 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh
/obj/item/clothing/suit/armor/alien/tank,
/obj/item/clothing/head/helmet/alien/tank,
)
/obj/structure/loot_pile/surface/bones
name = "bone pile"
desc = "A pile of various dusty bones. Your graverobbing instincts tell you there might be valuables here."
icon = 'icons/obj/bones.dmi'
icon_state = "bonepile"
delete_on_depletion = TRUE
common_loot = list(
/obj/item/weapon/bone,
/obj/item/weapon/bone/skull,
/obj/item/weapon/bone/skull/tajaran,
/obj/item/weapon/bone/skull/unathi,
/obj/item/weapon/bone/skull/unknown,
/obj/item/weapon/bone/leg,
/obj/item/weapon/bone/arm,
/obj/item/weapon/bone/ribs,
)
uncommon_loot = list(
/obj/item/weapon/coin/gold,
/obj/item/weapon/coin/silver,
/obj/item/weapon/deck/tarot,
/obj/item/weapon/flame/lighter/zippo/gold,
/obj/item/weapon/flame/lighter/zippo/black,
/obj/item/weapon/material/knife/tacknife/survival,
/obj/item/weapon/material/knife/tacknife/combatknife,
/obj/item/weapon/material/knife/machete/hatchet,
/obj/item/weapon/material/knife/butch,
/obj/item/weapon/storage/wallet/random,
/obj/item/clothing/accessory/bracelet/material/gold,
/obj/item/clothing/accessory/bracelet/material/silver,
/obj/item/clothing/accessory/locket,
/obj/item/clothing/accessory/poncho/blue,
/obj/item/clothing/shoes/boots/cowboy,
/obj/item/clothing/suit/storage/toggle/bomber,
/obj/item/clothing/under/frontier,
/obj/item/clothing/under/overalls,
/obj/item/clothing/under/pants/classicjeans/ripped,
/obj/item/clothing/under/sl_suit
)
rare_loot = list(
/obj/item/weapon/storage/belt/utility/alien/full,
/obj/item/weapon/gun/projectile/revolver,
/obj/item/weapon/gun/projectile/sec,
/obj/item/weapon/gun/launcher/crossbow
)
+24
View File
@@ -0,0 +1,24 @@
/obj/structure/snowman
name = "snowman"
icon = 'icons/obj/snowman.dmi'
icon_state = "snowman"
desc = "A happy little snowman smiles back at you!"
anchored = 1
/obj/structure/snowman/attack_hand(mob/user as mob)
if(user.a_intent == I_HURT)
user << "<span class='notice'>In one hit, [src] easily crumples into a pile of snow. You monster.</span>"
var/turf/simulated/floor/F = get_turf(src)
if (istype(F))
new /obj/item/stack/material/snow(F)
qdel(src)
/obj/structure/snowman/borg
name = "snowborg"
icon_state = "snowborg"
desc = "A snowy little robot. It even has a monitor for a head."
/obj/structure/snowman/spider
name = "snow spider"
icon_state = "snowspider"
desc = "An impressively crafted snow spider. Not nearly as creepy as the real thing."