Final merge

Merge branch 'development-2' into development

# Conflicts:
#	baystation12.dme
#	code/_helpers/icons.dm
#	code/controllers/master_controller.dm
#	code/game/machinery/Sleeper.dm
#	code/game/machinery/computer3/laptop.dm
#	code/game/machinery/doors/door.dm
#	code/game/machinery/floorlayer.dm
#	code/game/machinery/vending.dm
#	code/game/mecha/mech_fabricator.dm
#	code/game/objects/effects/decals/contraband.dm
#	code/game/objects/explosion.dm
#	code/game/objects/items/robot/robot_upgrades.dm
#	code/game/objects/items/weapons/melee/misc.dm
#	code/game/objects/items/weapons/storage/boxes.dm
#	code/game/objects/structures/crates_lockers/closets/secure/security.dm
#	code/game/objects/structures/window.dm
#	code/modules/clothing/spacesuits/rig/rig.dm
#	code/modules/clothing/suits/jobs.dm
#	code/modules/mob/freelook/update_triggers.dm
#	code/modules/mob/living/carbon/human/human_defense.dm
#	code/modules/mob/living/carbon/human/human_movement.dm
#	code/modules/mob/living/carbon/human/life.dm
#	code/modules/mob/living/carbon/human/species/species.dm
#	code/modules/mob/living/carbon/human/species/station/station.dm
#	code/modules/mob/living/living_defines.dm
#	code/modules/mob/mob_helpers.dm
#	code/modules/mob/mob_movement.dm
#	code/modules/projectiles/ammunition/boxes.dm
#	nano/templates/sleeper.tmpl
This commit is contained in:
skull132
2016-11-12 00:10:21 +02:00
187 changed files with 6193 additions and 1183 deletions
+413 -2
View File
@@ -102,7 +102,7 @@
desc = "This is a random piece of technology supplies."
icon = 'icons/obj/power.dmi'
icon_state = "cell"
spawn_nothing_percentage = 50
// spawn_nothing_percentage = 50
item_to_spawn()
return pick(prob(3);/obj/random/powercell,\
prob(2);/obj/random/technology_scanner,\
@@ -157,7 +157,7 @@
desc = "Hot Stuff."
icon = 'icons/obj/items.dmi'
icon_state = "purplecomb"
spawn_nothing_percentage = 50
// spawn_nothing_percentage = 50
item_to_spawn()
return pick(prob(3);/obj/item/weapon/storage/pill_bottle/tramadol,\
prob(4);/obj/item/weapon/haircomb,\
@@ -280,3 +280,414 @@
/obj/item/toy/plushie/kitten,\
/obj/item/toy/plushie/lizard)
/obj/random/smalltank/item_to_spawn()
if (prob(40))
return /obj/item/weapon/tank/emergency_oxygen
else if (prob(60))
return /obj/item/weapon/tank/emergency_oxygen/engi
else
return /obj/item/weapon/tank/emergency_oxygen/double
/obj/random/belt/item_to_spawn()
var/list/belts = list("/obj/item/weapon/storage/belt/utility" = 1,
"/obj/item/weapon/storage/belt/medical" = 0.4,
"/obj/item/weapon/storage/belt/medical/emt" = 0.4,
"/obj/item/weapon/storage/belt/security/tactical" = 0.1,
"/obj/item/weapon/storage/belt/military" = 0.1,
"/obj/item/weapon/storage/belt/janitor" = 0.4
)
return pickweight(belts)
//Spawns a random backpack
//Novelty and rare backpacks have lower weights
/obj/random/backpack/item_to_spawn()
var/list/packs = list(
"/obj/item/weapon/storage/backpack" = 3,
"/obj/item/weapon/storage/backpack/holding" = 0.5,
"/obj/item/weapon/storage/backpack/santabag" = 2,
"/obj/item/weapon/storage/backpack/cultpack" = 2,
"/obj/item/weapon/storage/backpack/clown" = 2,
"/obj/item/weapon/storage/backpack/medic" = 3,
"/obj/item/weapon/storage/backpack/security" = 3,
"/obj/item/weapon/storage/backpack/captain" = 2,
"/obj/item/weapon/storage/backpack/industrial" = 3,
"/obj/item/weapon/storage/backpack/toxins" = 3,
"/obj/item/weapon/storage/backpack/hydroponics" = 3,
"/obj/item/weapon/storage/backpack/genetics" = 3,
"/obj/item/weapon/storage/backpack/virology" = 3,
"/obj/item/weapon/storage/backpack/chemistry" = 3,
"/obj/item/weapon/storage/backpack/cloak" = 2,
"/obj/item/weapon/storage/backpack/syndie" = 2,
"/obj/item/weapon/storage/backpack/wizard" = 2,
"/obj/item/weapon/storage/backpack/satchel" = 3,
"/obj/item/weapon/storage/backpack/satchel_norm" = 3,
"/obj/item/weapon/storage/backpack/satchel_eng" = 3,
"/obj/item/weapon/storage/backpack/satchel_med" = 3,
"/obj/item/weapon/storage/backpack/satchel_vir" = 3,
"/obj/item/weapon/storage/backpack/satchel_chem" = 3,
"/obj/item/weapon/storage/backpack/satchel_gen" = 3,
"/obj/item/weapon/storage/backpack/satchel_tox" = 3,
"/obj/item/weapon/storage/backpack/satchel_sec" = 3,
"/obj/item/weapon/storage/backpack/satchel_hyd" = 3,
"/obj/item/weapon/storage/backpack/satchel_cap" = 2,
"/obj/item/weapon/storage/backpack/satchel_syndie" = 2,
"/obj/item/weapon/storage/backpack/satchel_wizard" = 2,
"/obj/item/weapon/storage/backpack/ert" = 2,
"/obj/item/weapon/storage/backpack/ert/security" = 2,
"/obj/item/weapon/storage/backpack/ert/engineer" = 2,
"/obj/item/weapon/storage/backpack/ert/medical" = 2,
"/obj/item/weapon/storage/backpack/duffel" = 3,
"/obj/item/weapon/storage/backpack/duffel/cap" = 2,
"/obj/item/weapon/storage/backpack/duffel/hyd" = 3,
"/obj/item/weapon/storage/backpack/duffel/vir" = 3,
"/obj/item/weapon/storage/backpack/duffel/med" = 3,
"/obj/item/weapon/storage/backpack/duffel/eng" = 3,
"/obj/item/weapon/storage/backpack/duffel/tox" = 3,
"/obj/item/weapon/storage/backpack/duffel/sec" = 3,
"/obj/item/weapon/storage/backpack/duffel/gen" = 3,
"/obj/item/weapon/storage/backpack/duffel/chem" = 3,
"/obj/item/weapon/storage/backpack/duffel/syndie" = 2,
"/obj/item/weapon/storage/backpack/duffel/wizard" = 2
)
return pickweight(packs)
/obj/random/voidsuit
var/damaged = 0
/obj/random/voidsuit/New(var/_damaged = 0)
damaged = _damaged
..()
/obj/random/voidsuit/spawn_item()
var/list/suit_types = list(
"/space/void" = 2,
"/space/void/engineering" = 2,
"/space/void/mining" = 2,
"/space/void/medical" = 2.3,
"/space/void/security" = 1,
"/space/void/atmos" = 1.5,
"/space/void/merc" = 0.5,
"/space/void/captain" = 0.3
)
var/atom/L = src.loc
var/suffix = pickweight(suit_types)
var/stype = "/obj/item/clothing/suit[suffix]"
var/htype = "/obj/item/clothing/head/helmet[suffix]"
var/obj/item/clothing/suit/space/newsuit = new stype(L)
new htype(L)
new /obj/item/clothing/shoes/magboots(L)
if (damaged && prob(60))//put some damage on it
var/damtype = pick(BRUTE,BURN)
var/amount = rand(1,5)
newsuit.create_breaches(damtype, amount)
/obj/random/vendor
var/depleted = 0
/obj/random/vendor/New(var/_depleted = 0)
depleted = _depleted
..()
/obj/random/vendor/spawn_item()
var/list/options = list(
"/obj/machinery/vending/boozeomat" = 1,
"/obj/machinery/vending/coffee" = 1,
"/obj/machinery/vending/snack" = 1,
"/obj/machinery/vending/cola" = 1,
"/obj/machinery/vending/cart" = 1.5,
"/obj/machinery/vending/cigarette" = 1,
"/obj/machinery/vending/medical" = 1.2,
"/obj/machinery/vending/phoronresearch" = 0.7,
"/obj/machinery/vending/security" = 0.3,
"/obj/machinery/vending/hydronutrients" = 1,
"/obj/machinery/vending/hydroseeds" = 1,
"/obj/machinery/vending/magivend" = 0.5,//The things it dispenses are just costumes to non-wizards
"/obj/machinery/vending/dinnerware" = 1,
"/obj/machinery/vending/sovietsoda" = 2,
"/obj/machinery/vending/tool" = 1,
"/obj/machinery/vending/engivend" = 0.6,
"/obj/machinery/vending/engineering" = 1,
"/obj/machinery/vending/robotics" = 1
)
var/turf/L = get_turf(src)
var/type = pickweight(options)
var/obj/machinery/vending/V = new type(L)
if (!depleted)
return
//Greatly reduce the contents. it will have 0-20% of what it usually has
for (var/content in V.products)
if (prob(40))
V.products[content] = 0//40% chance to completely lose an item
else
var/multiplier = rand(0,20)//Else, we reduce it to a very low percentage
if (multiplier)
multiplier /= 100
V.products[content] *= multiplier
if (V.products[content] < 1 && V.products[content] > 0)//But we'll usually have at least 1 left
V.products[content] = 0
/obj/random/pda_cart/item_to_spawn()
var/list/options = typesof(/obj/item/weapon/cartridge)
var/type = pick(options)
//reroll syndicate cartridge once to make it less common
if (type == /obj/item/weapon/cartridge/syndicate)
type = pick(options)
return type
/obj/random/glowstick
name = "random glowstick"
desc = "This is a random glowstick."
icon = 'icons/obj/glowsticks.dmi'
icon_state = "glowstick"
/obj/random/glowstick/item_to_spawn()
return pick(/obj/item/device/flashlight/glowstick,\
/obj/item/device/flashlight/glowstick/red,\
/obj/item/device/flashlight/glowstick/blue,\
/obj/item/device/flashlight/glowstick/orange,\
/obj/item/device/flashlight/glowstick/yellow)
/obj/random/booze
name = "random alcoholic drink"
desc = "This is a random alcoholic drink."
icon = 'icons/obj/drinks.dmi'
icon_state = "broken_bottle"
/obj/random/booze/item_to_spawn()
return pick(/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/wine,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/brandy,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/guinnes,\
/obj/item/weapon/reagent_containers/food/drinks/bottle/drambuie,\
/obj/item/weapon/reagent_containers/food/drinks/cans/beer,\
/obj/item/weapon/reagent_containers/food/drinks/cans/ale)
/obj/random/melee
name = "random melee weapon"
desc = "This is a random melee weapon."
icon = 'icons/obj/weapons.dmi'
icon_state = "baton"
/obj/random/melee/item_to_spawn()
return pick(/obj/item/weapon/melee/telebaton,\
/obj/item/weapon/melee/energy/sword,\
/obj/item/weapon/melee/energy/sword/pirate,\
/obj/item/weapon/melee/energy/glaive,\
/obj/item/weapon/melee/chainsword,\
/obj/item/weapon/melee/baton/stunrod,\
/obj/item/weapon/material/harpoon,\
/obj/item/weapon/material/scythe,\
/obj/item/weapon/material/twohanded/spear/plasteel,\
/obj/item/weapon/material/sword/trench,\
/obj/item/weapon/material/sword/rapier)
/obj/random/coin
name = "random coin"
desc = "This is a random coin."
icon = 'icons/obj/items.dmi'
icon_state = "coin"
/obj/random/coin/item_to_spawn()
var/list/coin = list("/obj/item/weapon/coin/iron" = 5,
"/obj/item/weapon/coin/silver" = 3,
"/obj/item/weapon/coin/gold" = 1,
"/obj/item/weapon/coin/silver" = 0.7,
"/obj/item/weapon/coin/phoron" = 0.5,
"obj/item/weapon/coin/uranium" = 0.5,
"/obj/item/weapon/coin/platinum" = 0.2,
"/obj/item/weapon/coin/diamond" = 0.1,
)
return pickweight(coin)
/obj/random/energy_antag
name = "random energy weapon"
desc = "This is a random energy weapon."
icon = 'icons/obj/gun.dmi'
icon_state = "retro100"
/obj/random/energy_antag/item_to_spawn()
return pick(/obj/item/weapon/gun/energy/retro,\
/obj/item/weapon/gun/energy/xray,\
/obj/item/weapon/gun/energy/gun,\
/obj/item/weapon/gun/energy/pistol,\
/obj/item/weapon/gun/energy/rifle,\
/obj/item/weapon/gun/energy/mindflayer,\
/obj/item/weapon/gun/energy/toxgun,\
/obj/item/weapon/gun/energy/vaurca/gatlinglaser,\
/obj/item/weapon/gun/energy/vaurca/blaster,\
/obj/item/weapon/gun/energy/crossbow/largecrossbow)
/obj/random/colored_jumpsuit
name = "random colored jumpsuit"
desc = "This is a random colowerd jumpsuit."
icon = 'icons/obj/clothing/uniforms.dmi'
icon_state = "black"
/obj/random/colored_jumpsuit/item_to_spawn()
return pick(/obj/item/clothing/under/color/black,\
/obj/item/clothing/under/color/blackf,\
/obj/item/clothing/under/color/blue,\
/obj/item/clothing/under/color/green,\
/obj/item/clothing/under/color/grey,\
/obj/item/clothing/under/color/orange,\
/obj/item/clothing/under/color/pink,\
/obj/item/clothing/under/color/red,\
/obj/item/clothing/under/color/white,\
/obj/item/clothing/under/color/yellow,\
/obj/item/clothing/under/lightblue,\
/obj/item/clothing/under/aqua,\
/obj/item/clothing/under/purple,\
/obj/item/clothing/under/lightpurple,\
/obj/item/clothing/under/lightgreen,\
/obj/item/clothing/under/lightbrown,\
/obj/item/clothing/under/brown,\
/obj/item/clothing/under/yellowgreen,\
/obj/item/clothing/under/darkblue,\
/obj/item/clothing/under/lightred,\
/obj/item/clothing/under/darkred)
/obj/random/loot
name = "random maintenance loot items"
desc = "Stuff for the maint-dwellers."
icon = 'icons/obj/items.dmi'
icon_state = "gift3"
/obj/random/loot/item_to_spawn()
var/list/maint = list("/obj/item/clothing/glasses/meson" = 1,
"/obj/item/clothing/glasses/meson/prescription" = 0.7,
"/obj/item/clothing/glasses/material" = 0.8,
"/obj/item/clothing/glasses/sunglasses" = 1.5,
"/obj/item/clothing/glasses/welding" = 1.2,
"/obj/item/clothing/under/captain_fly" = 0.7,
"/obj/item/clothing/under/rank/mailman" = 0.6,
"/obj/item/clothing/under/rank/vice" = 0.8,
"/obj/item/clothing/under/assistantformal" = 1,
"/obj/item/clothing/under/rainbow" = 0.9,
"/obj/item/clothing/under/overalls" = 1,
"/obj/item/clothing/under/redcoat" = 0.5,
"/obj/item/clothing/under/serviceoveralls" = 1,
"/obj/item/clothing/under/psyche" = 0.5,
"/obj/item/clothing/under/track" = 0.9,
"/obj/item/clothing/under/rank/dispatch" = 1,
"/obj/item/clothing/under/syndicate/tacticool" = 1,
"/obj/item/clothing/under/syndicate/tracksuit" = 0.2,
"/obj/item/clothing/accessory/badge" = 0.2,
"/obj/item/clothing/accessory/badge/old" = 0.2,
"/obj/item/clothing/accessory/storage/webbing" = 0.6,
"/obj/item/clothing/accessory/storage/knifeharness" = 0.3,
"/obj/item/clothing/head/collectable/petehat" = 0.3,
"/obj/item/clothing/head/hardhat" = 1.2,
"/obj/item/clothing/head/redcoat" = 0.4,
"/obj/item/clothing/head/syndicatefake" = 0.5,
"/obj/item/clothing/head/richard" = 0.3,
"/obj/item/clothing/head/soft/rainbow" = 0.7,
"/obj/item/clothing/head/plaguedoctorhat" = 0.5,
"/obj/item/clothing/head/cueball" = 0.5,
"/obj/item/clothing/head/pirate" = 0.4,
"/obj/item/clothing/head/bearpelt" = 0.4,
"/obj/item/clothing/head/witchwig" = 0.5,
"/obj/item/clothing/head/pumpkinhead" = 0.6,
"/obj/item/clothing/head/kitty" = 0.2,
"/obj/item/clothing/head/ushanka" = 0.6,
"/obj/item/clothing/head/helmet/augment" = 0.1,
"/obj/item/clothing/mask/balaclava" = 1,
"/obj/item/clothing/mask/gas" = 1.5,
"/obj/item/clothing/mask/gas/cyborg" = 0.7,
"/obj/item/clothing/mask/gas/owl_mask" = 0.8,
"/obj/item/clothing/mask/gas/syndicate" = 0.4,
"/obj/item/clothing/mask/fakemoustache" = 0.4,
"/obj/item/clothing/mask/horsehead" = 0.9,
"/obj/item/clothing/shoes/rainbow" = 1,
"/obj/item/clothing/shoes/jackboots" = 1,
"/obj/item/clothing/shoes/workboots" = 1,
"/obj/item/clothing/shoes/cyborg" = 0.4,
"/obj/item/clothing/shoes/galoshes" = 0.6,
"/obj/item/clothing/shoes/slippers_worn" = 0.5,
"/obj/item/clothing/shoes/combat" = 0.2,
"/obj/item/clothing/shoes/clown_shoes" = 0.1,
"/obj/item/clothing/suit/storage/hazardvest" = 1,
"/obj/item/clothing/suit/storage/leather_jacket/nanotrasen" = 0.7,
"/obj/item/clothing/suit/storage/toggle/tracksuit" = 0.7,
"/obj/item/clothing/suit/ianshirt" = 0.5,
"/obj/item/clothing/suit/syndicatefake" = 0.6,
"/obj/item/clothing/suit/imperium_monk" = 0.4,
"/obj/item/clothing/suit/storage/vest" = 0.2,
"/obj/item/clothing/gloves/black" = 1,
"/obj/item/clothing/gloves/fyellow" = 1.2,
"/obj/item/clothing/gloves/yellow" = 0.9,
"/obj/item/clothing/gloves/watch" = 0.3,
"/obj/item/clothing/gloves/boxing" = 0.3,
"/obj/item/clothing/gloves/boxing/green" = 0.8,
"/obj/item/clothing/gloves/botanic_leather" = 0.7,
"/obj/item/clothing/gloves/combat" = 0.2,
"/obj/item/toy/bosunwhistle" = 0.5,
"/obj/item/toy/balloon" = 0.4,
"/obj/item/weapon/haircomb" = 0.5,
"/obj/item/weapon/lipstick" = 0.6,
"/obj/item/weapon/material/knife/hook" = 0.3,
"/obj/item/weapon/material/hatchet/tacknife" = 0.4,
"/obj/item/weapon/storage/fancy/cigarettes/dromedaryco" = 1.2,
"/obj/item/weapon/storage/bag/plasticbag" = 1,
"/obj/item/weapon/extinguisher" = 1.3,
"/obj/item/weapon/extinguisher/mini" = 0.9,
"/obj/item/device/flashlight" = 1,
"/obj/item/device/flashlight/heavy" = 0.5,
"/obj/item/device/flashlight/maglight" = 0.4,
"/obj/item/device/flashlight/flare" = 0.5,
"/obj/item/device/flashlight/lantern" = 0.4,
"/obj/item/weapon/reagent_containers/food/drinks/teapot" = 0.4,
"/obj/item/weapon/reagent_containers/food/drinks/flask/shiny" = 0.3,
"/obj/item/weapon/reagent_containers/food/drinks/flask/lithium" = 0.3,
"/obj/item/bodybag" = 0.7,
"/obj/item/weapon/reagent_containers/spray/cleaner" = 0.6,
"/obj/item/weapon/tank/emergency_oxygen" = 0.7,
"/obj/item/weapon/tank/emergency_oxygen/double" = 0.4,
"/obj/item/clothing/mask/smokable/pipe/cobpipe" = 0.5,
"/obj/item/clothing/mask/smokable/cigarette/cigar/cohiba" = 0.7,
"/obj/item/weapon/flame/lighter" = 0.9,
"/obj/item/weapon/flame/lighter/zippo" = 0.7,
"/obj/item/device/gps/engineering" = 0.6,
"/obj/item/device/megaphone" = 0.5,
"/obj/item/device/floor_painter" = 0.6,
"/obj/random/toolbox" = 1,
"/obj/random/coin" = 1.2,
"/obj/random/tech_supply" = 1.2,
"/obj/random/powercell" = 0.8,
"/obj/random/colored_jumpsuit" = 0.7,
"/obj/random/booze" = 1.1,
"/obj/random/belt" = 0.9,
"/obj/random/contraband" = 0.9,
"/obj/random/glowstick" = 0.7,
"/obj/item/weapon/caution/cone" = 0.7,
"/obj/item/weapon/staff/broom" = 0.5,
"/obj/item/weapon/soap" = 0.4,
"/obj/item/weapon/material/wirerod" = 0.4,
"/obj/item/weapon/storage/box/donkpockets" = 0.6,
"/obj/item/weapon/contraband/poster" = 1.3,
"/obj/item/device/magnetic_lock/security" = 0.3,
"/obj/item/device/magnetic_lock/engineering" = 0.3
)
return pickweight(maint)