diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 216e2e59d0..c480d2dd16 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -35,12 +35,12 @@ /obj/item/device/radio/intercom/department/medbay name = "station intercom (Medbay)" - icon_state = "secintercom" + icon_state = "medintercom" frequency = MED_I_FREQ /obj/item/device/radio/intercom/department/security name = "station intercom (Security)" - icon_state = "medintercom" + icon_state = "secintercom" frequency = SEC_I_FREQ /obj/item/device/radio/intercom/entertainment diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index fb924bc9c4..5b1e33e5fd 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -839,4 +839,60 @@ var/list/random_useful_ random_junk_ -= /obj/item/trash/tray return pick(random_junk_) // Misc. actually useful stuff - return get_random_useful_type() \ No newline at end of file + return get_random_useful_type() + +/* + Selects one spawn point out of a group of points with the same ID and asks it to generate its items +*/ +var/list/multi_point_spawns + +/obj/random_multi + name = "random object spawn point" + desc = "This item type is used to spawn random objects at round-start. Only one spawn point for a given group id is selected." + icon = 'icons/misc/mark.dmi' + icon_state = "x3" + invisibility = INVISIBILITY_MAXIMUM + var/id // Group id + var/weight // Probability weight for this spawn point + +/obj/random_multi/initialize() + ..() + weight = max(1, round(weight)) + + if(!multi_point_spawns) + multi_point_spawns = list() + var/list/spawnpoints = multi_point_spawns[id] + if(!spawnpoints) + spawnpoints = list() + multi_point_spawns[id] = spawnpoints + spawnpoints[src] = weight + +/obj/random_multi/Destroy() + var/list/spawnpoints = multi_point_spawns[id] + spawnpoints -= src + if(!spawnpoints.len) + multi_point_spawns -= id + . = ..() + +/obj/random_multi/proc/generate_items() + return + +/obj/random_multi/single_item + var/item_path // Item type to spawn + +/obj/random_multi/single_item/generate_items() + new item_path(loc) + +/hook/roundstart/proc/generate_multi_spawn_items() + for(var/id in multi_point_spawns) + var/list/spawn_points = multi_point_spawns[id] + var/obj/random_multi/rm = pickweight(spawn_points) + rm.generate_items() + for(var/entry in spawn_points) + qdel(entry) + return 1 + +/obj/random_multi/single_item/captains_spare_id + name = "Multi Point - Captain's Spare" + id = "Captain's spare id" + item_path = /obj/item/weapon/card/id/captains_spare \ No newline at end of file diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index 9b731a0fa8..1bfd559b9c 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -92,10 +92,6 @@ icon = 'icons/obj/plants.dmi' icon_state = "plant-26" -/obj/structure/flora/pottedplant/xmas/New() - ..() - icon_state = "plant-xmas" - //newbushes @@ -218,4 +214,149 @@ name = "hanging skeleton model" icon = 'icons/obj/plants.dmi' icon_state = "hangskele" - desc = "It's an anatomical model of a human skeletal system made of plaster." \ No newline at end of file + desc = "It's an anatomical model of a human skeletal system made of plaster." + + +//potted plants credit: Flashkirby +/obj/structure/flora/pottedplant + name = "potted plant" + desc = "Really brings the room together." + icon = 'icons/obj/plants.dmi' + icon_state = "plant-01" + +/obj/structure/flora/pottedplant/large + name = "large potted plant" + desc = "This is a large plant. Three branches support pairs of waxy leaves." + icon_state = "plant-26" + +/obj/structure/flora/pottedplant/fern + name = "potted fern" + desc = "This is an ordinary looking fern. It looks like it could do with some water." + icon_state = "plant-02" + +/obj/structure/flora/pottedplant/overgrown + name = "overgrown potted plants" + desc = "This is an assortment of colourful plants. Some parts are overgrown." + icon_state = "plant-03" + +/obj/structure/flora/pottedplant/bamboo + name = "potted bamboo" + desc = "These are bamboo shoots. The tops looks like they've been cut short." + icon_state = "plant-04" + +/obj/structure/flora/pottedplant/largebush + name = "large potted bush" + desc = "This is a large bush. The leaves stick upwards in an odd fashion." + icon_state = "plant-05" + +/obj/structure/flora/pottedplant/thinbush + name = "thin potted bush" + desc = "This is a thin bush. It appears to be flowering." + icon_state = "plant-06" + +/obj/structure/flora/pottedplant/mysterious + name = "mysterious potted bulbs" + desc = "This is a mysterious looking plant. Touching the bulbs cause them to shrink." + icon_state = "plant-07" + +/obj/structure/flora/pottedplant/smalltree + name = "small potted tree" + desc = "This is a small tree. It is rather pleasant." + icon_state = "plant-08" + +/obj/structure/flora/pottedplant/unusual + name = "unusual potted plant" + desc = "This is an unusual plant. It's bulbous ends emit a soft blue light." + icon_state = "plant-09" + set_light(l_range = 1, l_power = 0.5, l_color = "#0000FF") + +/obj/structure/flora/pottedplant/orientaltree + name = "potted oriental tree" + desc = "This is a rather oriental style tree. It's flowers are bright pink." + icon_state = "plant-10" + +/obj/structure/flora/pottedplant/smallcactus + name = "small potted cactus" + desc = "This is a small cactus. Its needles are sharp." + icon_state = "plant-11" + +/obj/structure/flora/pottedplant/tall + name = "tall potted plant" + desc = "This is a tall plant. Tiny pores line its surface." + icon_state = "plant-12" + +/obj/structure/flora/pottedplant/sticky + name = "styicky potted plant" + desc = "This is an odd plant. Its sticky leaves trap insects." + icon_state = "plant-13" + +/obj/structure/flora/pottedplant/smelly + name = "smelly potted plant" + desc = "This is some kind of tropical plant. It reeks of rotten eggs." + icon_state = "plant-14" + +/obj/structure/flora/pottedplant/small + name = "small potted plant" + desc = "This is a pot of assorted small flora. Some look familiar." + icon_state = "plant-15" + +/obj/structure/flora/pottedplant/aquatic + name = "aquatic potted plant" + desc = "This is apparently an aquatic plant. It's probably fake." + icon_state = "plant-16" + +/obj/structure/flora/pottedplant/shoot + name = "small potted shoot" + desc = "This is a small shoot. It still needs time to grow." + icon_state = "plant-17" + +/obj/structure/flora/pottedplant/flower + name = "potted flower" + desc = "This is a slim plant. Sweet smelling flowers are supported by spindly stems." + icon_state = "plant-18" + +/obj/structure/flora/pottedplant/crystal + name = "crystalline potted plant" + desc = "These are rather cubic plants. Odd crystal formations grow on the end." + icon_state = "plant-19" + +/obj/structure/flora/pottedplant/subterranean + name = "subterranean potted plant" + desc = "This is a subterranean plant. It's bulbous ends glow faintly." + icon_state = "plant-20" + set_light(l_range = 1, l_power = 0.5, l_color = "#FF6633") + +/obj/structure/flora/pottedplant/minitree + name = "potted tree" + desc = "This is a miniature tree. Apparently it was grown to 1/5 scale." + icon_state = "plant-21" + +/obj/structure/flora/pottedplant/stoutbush + name = "stout potted bush" + desc = "This is a stout bush. Its leaves point up and outwards." + icon_state = "plant-22" + +/obj/structure/flora/pottedplant/drooping + name = "drooping potted plant" + desc = "This is a small plant. The drooping leaves make it look like its wilted." + icon_state = "plant-23" + +/obj/structure/flora/pottedplant/tropical + name = "tropical potted plant" + desc = "This is some kind of tropical plant. It hasn't begun to flower yet." + icon_state = "plant-24" + +/obj/structure/flora/pottedplant/dead + name = "dead potted plant" + desc = "This is the dried up remains of a dead plant. Someone should replace it." + icon_state = "plant-25" + +/obj/structure/flora/pottedplant/decorative + name = "decorative potted plant" + desc = "This is a decorative shrub. It's been trimmed into the shape of an apple." + icon_state = "applebush" + +/obj/structure/flora/pottedplant/xmas + name = "small christmas tree" + desc = "This is a tiny well lit decorative christmas tree." + icon_state = "plant-xmas" \ No newline at end of file diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index e8ce8bfb1c..5fed1a3577 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -122,6 +122,108 @@ desc = "A warning sign which reads 'NO SMOKING'." icon_state = "nosmoking2" +/obj/structure/sign/warning + name = "\improper WARNING" + icon_state = "securearea" + +/obj/structure/sign/warning/New() + ..() + desc = "A warning sign which reads '[name]'." + +/obj/structure/sign/warning/airlock + name = "\improper EXTERNAL AIRLOCK" + icon_state = "doors" + +/obj/structure/sign/warning/biohazard + name = "\improper BIOHAZARD" + icon_state = "bio" + +/obj/structure/sign/warning/bomb_range + name = "\improper BOMB RANGE" + icon_state = "blast" + +/obj/structure/sign/warning/caution + name = "\improper CAUTION" + +/obj/structure/sign/warning/compressed_gas + name = "\improper COMPRESSED GAS" + icon_state = "hikpa" + +/obj/structure/sign/warning/deathsposal + name = "\improper DISPOSAL LEADS TO SPACE" + icon_state = "deathsposal" + +/obj/structure/sign/warning/docking_area + name = "\improper KEEP CLEAR: DOCKING AREA" + +/obj/structure/sign/warning/engineering_access + name = "\improper ENGINEERING ACCESS" + +/obj/structure/sign/warning/fire + name = "\improper DANGER: FIRE" + icon_state = "fire" + +/obj/structure/sign/warning/high_voltage + name = "\improper HIGH VOLTAGE" + icon_state = "shock" + +/obj/structure/sign/warning/hot_exhaust + name = "\improper HOT EXHAUST" + icon_state = "fire" + +/obj/structure/sign/warning/internals_required + name = "\improper INTERNALS REQUIRED" + +/obj/structure/sign/warning/lethal_turrets + name = "\improper LETHAL TURRETS" + icon_state = "turrets" + +/obj/structure/sign/warning/lethal_turrets/New() + ..() + desc += " Enter at own risk!." + +/obj/structure/sign/warning/mail_delivery + name = "\improper MAIL DELIVERY" + +/obj/structure/sign/warning/moving_parts + name = "\improper MOVING PARTS" + +/obj/structure/sign/warning/nosmoking_1 + name = "\improper NO SMOKING" + icon_state = "nosmoking" + +/obj/structure/sign/warning/nosmoking_2 + name = "\improper NO SMOKING" + icon_state = "nosmoking2" + +/obj/structure/sign/warning/pods + name = "\improper ESCAPE PODS" + icon_state = "pods" + +/obj/structure/sign/warning/radioactive + name = "\improper RADIOACTIVE AREA" + icon_state = "radiation" + +/obj/structure/sign/warning/secure_area + name = "\improper SECURE AREA" + +/obj/structure/sign/warning/secure_area/armory + name = "\improper ARMORY" + +/obj/structure/sign/warning/server_room + name = "\improper SERVER ROOM" + +/obj/structure/sign/warning/siphon_valve + name = "\improper SIPHON VALVE" + +/obj/structure/sign/warning/vacuum + name = "\improper HARD VACUUM AHEAD" + icon_state = "space" + +/obj/structure/sign/warning/vent_port + name = "\improper EJECTION/VENTING PORT" + + /obj/structure/sign/redcross name = "medbay" desc = "The Intergalactic symbol of Medical institutions. You'll probably get help here." diff --git a/code/game/turfs/flooring/flooring_decals.dm b/code/game/turfs/flooring/flooring_decals.dm index 66434456f9..fc4dcd1d25 100644 --- a/code/game/turfs/flooring/flooring_decals.dm +++ b/code/game/turfs/flooring/flooring_decals.dm @@ -391,4 +391,16 @@ var/list/floor_decals = list() icon_state = "white_v" /obj/effect/floor_decal/sign/p - icon_state = "white_p" \ No newline at end of file + icon_state = "white_p" + +/obj/effect/floor_decal/sign/dock + icon_state = "white_d" + +/obj/effect/floor_decal/sign/dock/one + icon_state = "white_d1" + +/obj/effect/floor_decal/sign/dock/two + icon_state = "white_d2" + +/obj/effect/floor_decal/sign/dock/three + icon_state = "white_d3" \ No newline at end of file diff --git a/code/modules/tables/presets.dm b/code/modules/tables/presets.dm index 933f54ea8b..171bfe2b2c 100644 --- a/code/modules/tables/presets.dm +++ b/code/modules/tables/presets.dm @@ -28,7 +28,7 @@ material = get_material_by_name(DEFAULT_TABLE_MATERIAL) reinforced = get_material_by_name(DEFAULT_WALL_MATERIAL) ..() - + steel_reinforced icon_state = "reinf_preview" color = "#666666" @@ -37,6 +37,14 @@ reinforced = get_material_by_name(DEFAULT_WALL_MATERIAL) ..() + wooden_reinforced + icon_state = "reinf_preview" + color = "#824B28" + New() + material = get_material_by_name("wood") + reinforced = get_material_by_name(DEFAULT_WALL_MATERIAL) + ..() + woodentable icon_state = "plain_preview" color = "#824B28" diff --git a/icons/obj/decals.dmi b/icons/obj/decals.dmi index 6c8ddd9d39..af40b1c6ff 100644 Binary files a/icons/obj/decals.dmi and b/icons/obj/decals.dmi differ diff --git a/icons/turf/flooring/decals.dmi b/icons/turf/flooring/decals.dmi index c5b2a54b0b..c3441b5714 100644 Binary files a/icons/turf/flooring/decals.dmi and b/icons/turf/flooring/decals.dmi differ