mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-26 22:50:26 +01:00
feat: A Plastic World (plastic floral decorations) (#96350)
## About The Pull Request Adds the Rapid Decoration Device and plastic plants and stones! <div style="display:flex; gap:8px; align-items:center;"> <img width="92" height="93" alt="image" src="https://github.com/user-attachments/assets/1c53d55f-6dd0-4841-8fb8-f46e5392421c" /> <img width="104" height="93" alt="image" src="https://github.com/user-attachments/assets/0c86eac0-cc43-4587-a1c4-e73c894ab674" /> <img src="https://github.com/user-attachments/assets/d99fef71-31de-4059-940a-73f64ed8660e" width="415" height="93" alt="image" /> </div> <img width="830" height="597" alt="image" src="https://github.com/user-attachments/assets/e51330a3-58fb-428b-b002-323192f52f2e" /> <img width="713" height="293" alt="image" src="https://github.com/user-attachments/assets/45a4f037-4153-461b-84d1-d1c923dcf1a9" /> <br> <br> Plastic plants are very cheap to make but at the same time are very fragile (20 integrity points). They cannot be deconstructed by wrenching (only by destroying them or using a RDD to suck them in) and yield no resources. <br> <br> The RDD is available in the service protolathe roundstart. <br> <br> <img width="293" height="120" alt="image" src="https://github.com/user-attachments/assets/69506d34-c309-4c6e-8658-8e0d22816f91" /> ## Why It's Good For The Game RDD is a great way to decorate the station or your passion projects without having to hunt down and dig out decorative flora piece by piece. I think this will also pair greatly with https://github.com/tgstation/tgstation/pull/96345 ## Changelog 🆑 add: Added fake plastic plants to be used for decoration add: RDD: Rapid Decoration Device is now available for the service department /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,344 @@
|
||||
//RAPID DECORATION DEVICE
|
||||
|
||||
/// Multiplier applied to cost when using RDD — each decoration costs this many matter units
|
||||
#define RDD_COST_MULTIPLIER 2
|
||||
|
||||
/// All decoration designs available in the RDD
|
||||
GLOBAL_LIST_INIT(rdd_designs, list(
|
||||
"Grasses" = list(
|
||||
list("name" = "Plastic Grass Patch", "path" = /obj/structure/decoration/grass/first),
|
||||
list("name" = "Plastic Grass Patch (Alt)", "path" = /obj/structure/decoration/grass/second),
|
||||
list("name" = "Plastic Grass Patch (Alt 2)", "path" = /obj/structure/decoration/grass/third),
|
||||
list("name" = "Plastic Grass Patch (Random)", "path" = /obj/structure/decoration/grass/style_random),
|
||||
list("name" = "Plastic Brown Grass", "path" = /obj/structure/decoration/grass/brown/first),
|
||||
list("name" = "Plastic Brown Grass (Alt)", "path" = /obj/structure/decoration/grass/brown/second),
|
||||
list("name" = "Plastic Brown Grass (Alt 2)", "path" = /obj/structure/decoration/grass/brown/third),
|
||||
list("name" = "Plastic Brown Grass (Random)", "path" = /obj/structure/decoration/grass/brown/style_random),
|
||||
list("name" = "Plastic Jungle Grass", "path" = /obj/structure/decoration/jungle_grass/first),
|
||||
list("name" = "Plastic Jungle Grass (Alt)", "path" = /obj/structure/decoration/jungle_grass/second),
|
||||
list("name" = "Plastic Jungle Grass (Alt 2)", "path" = /obj/structure/decoration/jungle_grass/third),
|
||||
list("name" = "Plastic Jungle Grass (Alt 3)", "path" = /obj/structure/decoration/jungle_grass/fourth),
|
||||
list("name" = "Plastic Jungle Grass (Alt 4)", "path" = /obj/structure/decoration/jungle_grass/fifth),
|
||||
list("name" = "Plastic Jungle Grass (Random)", "path" = /obj/structure/decoration/jungle_grass/style_random),
|
||||
list("name" = "Plastic Jungle Grass B", "path" = /obj/structure/decoration/jungle_grass/b/first),
|
||||
list("name" = "Plastic Jungle Grass B (Alt)", "path" = /obj/structure/decoration/jungle_grass/b/second),
|
||||
list("name" = "Plastic Jungle Grass B (Alt 2)", "path" = /obj/structure/decoration/jungle_grass/b/third),
|
||||
list("name" = "Plastic Jungle Grass B (Alt 3)", "path" = /obj/structure/decoration/jungle_grass/b/fourth),
|
||||
list("name" = "Plastic Jungle Grass B (Alt 4)", "path" = /obj/structure/decoration/jungle_grass/b/fifth),
|
||||
list("name" = "Plastic Jungle Grass B (Random)", "path" = /obj/structure/decoration/jungle_grass/b/style_random),
|
||||
),
|
||||
"Bushes" = list(
|
||||
list("name" = "Plastic Bush", "path" = /obj/structure/decoration/bush/first),
|
||||
list("name" = "Plastic Bush (Alt)", "path" = /obj/structure/decoration/bush/second),
|
||||
list("name" = "Plastic Bush (Alt 2)", "path" = /obj/structure/decoration/bush/third),
|
||||
list("name" = "Plastic Bush (Alt 3)", "path" = /obj/structure/decoration/bush/fourth),
|
||||
list("name" = "Plastic Bush (Random)", "path" = /obj/structure/decoration/bush/style_random),
|
||||
list("name" = "Plastic Reeds", "path" = /obj/structure/decoration/bush/reed/first),
|
||||
list("name" = "Plastic Reeds (Alt)", "path" = /obj/structure/decoration/bush/reed/second),
|
||||
list("name" = "Plastic Reeds (Alt 2)", "path" = /obj/structure/decoration/bush/reed/third),
|
||||
list("name" = "Plastic Reeds (Alt 3)", "path" = /obj/structure/decoration/bush/reed/fourth),
|
||||
list("name" = "Plastic Reeds (Random)", "path" = /obj/structure/decoration/bush/reed/style_random),
|
||||
list("name" = "Plastic Leafy Bush", "path" = /obj/structure/decoration/bush/leafy/first),
|
||||
list("name" = "Plastic Leafy Bush (Alt)", "path" = /obj/structure/decoration/bush/leafy/second),
|
||||
list("name" = "Plastic Leafy Bush (Alt 2)", "path" = /obj/structure/decoration/bush/leafy/third),
|
||||
list("name" = "Plastic Leafy Bush (Random)", "path" = /obj/structure/decoration/bush/leafy/style_random),
|
||||
list("name" = "Plastic Pale Bush", "path" = /obj/structure/decoration/bush/pale/first),
|
||||
list("name" = "Plastic Pale Bush (Alt)", "path" = /obj/structure/decoration/bush/pale/second),
|
||||
list("name" = "Plastic Pale Bush (Alt 2)", "path" = /obj/structure/decoration/bush/pale/third),
|
||||
list("name" = "Plastic Pale Bush (Alt 3)", "path" = /obj/structure/decoration/bush/pale/fourth),
|
||||
list("name" = "Plastic Pale Bush (Random)", "path" = /obj/structure/decoration/bush/pale/style_random),
|
||||
list("name" = "Plastic Stalky Bush", "path" = /obj/structure/decoration/bush/stalky/first),
|
||||
list("name" = "Plastic Stalky Bush (Alt)", "path" = /obj/structure/decoration/bush/stalky/second),
|
||||
list("name" = "Plastic Stalky Bush (Alt 2)", "path" = /obj/structure/decoration/bush/stalky/third),
|
||||
list("name" = "Plastic Stalky Bush (Random)", "path" = /obj/structure/decoration/bush/stalky/style_random),
|
||||
list("name" = "Plastic Grassy Bush", "path" = /obj/structure/decoration/bush/grassy/first),
|
||||
list("name" = "Plastic Grassy Bush (Alt)", "path" = /obj/structure/decoration/bush/grassy/second),
|
||||
list("name" = "Plastic Grassy Bush (Alt 2)", "path" = /obj/structure/decoration/bush/grassy/third),
|
||||
list("name" = "Plastic Grassy Bush (Alt 3)", "path" = /obj/structure/decoration/bush/grassy/fourth),
|
||||
list("name" = "Plastic Grassy Bush (Random)", "path" = /obj/structure/decoration/bush/grassy/style_random),
|
||||
list("name" = "Plastic Sparse Grass", "path" = /obj/structure/decoration/bush/sparsegrass/first),
|
||||
list("name" = "Plastic Sparse Grass (Alt)", "path" = /obj/structure/decoration/bush/sparsegrass/second),
|
||||
list("name" = "Plastic Sparse Grass (Alt 2)", "path" = /obj/structure/decoration/bush/sparsegrass/third),
|
||||
list("name" = "Plastic Sparse Grass (Random)", "path" = /obj/structure/decoration/bush/sparsegrass/style_random),
|
||||
list("name" = "Plastic Full Grass", "path" = /obj/structure/decoration/bush/fullgrass/first),
|
||||
list("name" = "Plastic Full Grass (Alt)", "path" = /obj/structure/decoration/bush/fullgrass/second),
|
||||
list("name" = "Plastic Full Grass (Alt 2)", "path" = /obj/structure/decoration/bush/fullgrass/third),
|
||||
list("name" = "Plastic Full Grass (Random)", "path" = /obj/structure/decoration/bush/fullgrass/style_random),
|
||||
list("name" = "Plastic Ferny Bush", "path" = /obj/structure/decoration/bush/ferny/first),
|
||||
list("name" = "Plastic Ferny Bush (Alt)", "path" = /obj/structure/decoration/bush/ferny/second),
|
||||
list("name" = "Plastic Ferny Bush (Alt 2)", "path" = /obj/structure/decoration/bush/ferny/third),
|
||||
list("name" = "Plastic Ferny Bush (Random)", "path" = /obj/structure/decoration/bush/ferny/style_random),
|
||||
list("name" = "Plastic Sunny Bush", "path" = /obj/structure/decoration/bush/sunny/first),
|
||||
list("name" = "Plastic Sunny Bush (Alt)", "path" = /obj/structure/decoration/bush/sunny/second),
|
||||
list("name" = "Plastic Sunny Bush (Alt 2)", "path" = /obj/structure/decoration/bush/sunny/third),
|
||||
list("name" = "Plastic Sunny Bush (Random)", "path" = /obj/structure/decoration/bush/sunny/style_random),
|
||||
list("name" = "Plastic Generic Bush", "path" = /obj/structure/decoration/bush/generic/first),
|
||||
list("name" = "Plastic Generic Bush (Alt)", "path" = /obj/structure/decoration/bush/generic/second),
|
||||
list("name" = "Plastic Generic Bush (Alt 2)", "path" = /obj/structure/decoration/bush/generic/third),
|
||||
list("name" = "Plastic Generic Bush (Alt 3)", "path" = /obj/structure/decoration/bush/generic/fourth),
|
||||
list("name" = "Plastic Generic Bush (Random)", "path" = /obj/structure/decoration/bush/generic/style_random),
|
||||
list("name" = "Plastic Pointy Bush", "path" = /obj/structure/decoration/bush/pointy/first),
|
||||
list("name" = "Plastic Pointy Bush (Alt)", "path" = /obj/structure/decoration/bush/pointy/second),
|
||||
list("name" = "Plastic Pointy Bush (Alt 2)", "path" = /obj/structure/decoration/bush/pointy/third),
|
||||
list("name" = "Plastic Pointy Bush (Alt 3)", "path" = /obj/structure/decoration/bush/pointy/fourth),
|
||||
list("name" = "Plastic Pointy Bush (Random)", "path" = /obj/structure/decoration/bush/pointy/style_random),
|
||||
list("name" = "Plastic Lavender Grass", "path" = /obj/structure/decoration/bush/lavendergrass/first),
|
||||
list("name" = "Plastic Lavender Grass (Alt)", "path" = /obj/structure/decoration/bush/lavendergrass/second),
|
||||
list("name" = "Plastic Lavender Grass (Alt 2)", "path" = /obj/structure/decoration/bush/lavendergrass/third),
|
||||
list("name" = "Plastic Lavender Grass (Alt 3)", "path" = /obj/structure/decoration/bush/lavendergrass/fourth),
|
||||
list("name" = "Plastic Lavender Grass (Random)", "path" = /obj/structure/decoration/bush/lavendergrass/style_random),
|
||||
),
|
||||
"Flowers" = list(
|
||||
list("name" = "Plastic Yellow-White Flowers", "path" = /obj/structure/decoration/bush/flowers_yw/first),
|
||||
list("name" = "Plastic Yellow-White Flowers (Alt)", "path" = /obj/structure/decoration/bush/flowers_yw/second),
|
||||
list("name" = "Plastic Yellow-White Flowers (Alt 2)", "path" = /obj/structure/decoration/bush/flowers_yw/third),
|
||||
list("name" = "Plastic Yellow-White Flowers (Random)", "path" = /obj/structure/decoration/bush/flowers_yw/style_random),
|
||||
list("name" = "Plastic Blue-Red Flowers", "path" = /obj/structure/decoration/bush/flowers_br/first),
|
||||
list("name" = "Plastic Blue-Red Flowers (Alt)", "path" = /obj/structure/decoration/bush/flowers_br/second),
|
||||
list("name" = "Plastic Blue-Red Flowers (Alt 2)", "path" = /obj/structure/decoration/bush/flowers_br/third),
|
||||
list("name" = "Plastic Blue-Red Flowers (Random)", "path" = /obj/structure/decoration/bush/flowers_br/style_random),
|
||||
list("name" = "Plastic Purple Flowers", "path" = /obj/structure/decoration/bush/flowers_pp/first),
|
||||
list("name" = "Plastic Purple Flowers (Alt)", "path" = /obj/structure/decoration/bush/flowers_pp/second),
|
||||
list("name" = "Plastic Purple Flowers (Alt 2)", "path" = /obj/structure/decoration/bush/flowers_pp/third),
|
||||
list("name" = "Plastic Purple Flowers (Random)", "path" = /obj/structure/decoration/bush/flowers_pp/style_random),
|
||||
),
|
||||
"Snow" = list(
|
||||
list("name" = "Plastic Snowy Bush", "path" = /obj/structure/decoration/bush/snow/first),
|
||||
list("name" = "Plastic Snowy Bush (Alt)", "path" = /obj/structure/decoration/bush/snow/second),
|
||||
list("name" = "Plastic Snowy Bush (Alt 2)", "path" = /obj/structure/decoration/bush/snow/third),
|
||||
list("name" = "Plastic Snowy Bush (Alt 3)", "path" = /obj/structure/decoration/bush/snow/fourth),
|
||||
list("name" = "Plastic Snowy Bush (Alt 4)", "path" = /obj/structure/decoration/bush/snow/fifth),
|
||||
list("name" = "Plastic Snowy Bush (Alt 5)", "path" = /obj/structure/decoration/bush/snow/sixth),
|
||||
list("name" = "Plastic Snowy Bush (Random)", "path" = /obj/structure/decoration/bush/snow/style_random),
|
||||
),
|
||||
"Jungle" = list(
|
||||
list("name" = "Plastic Jungle Bush", "path" = /obj/structure/decoration/bush/jungle/first),
|
||||
list("name" = "Plastic Jungle Bush (Alt)", "path" = /obj/structure/decoration/bush/jungle/second),
|
||||
list("name" = "Plastic Jungle Bush (Alt 2)", "path" = /obj/structure/decoration/bush/jungle/third),
|
||||
list("name" = "Plastic Jungle Bush (Random)", "path" = /obj/structure/decoration/bush/jungle/style_random),
|
||||
list("name" = "Plastic Jungle Bush B", "path" = /obj/structure/decoration/bush/jungle/b/first),
|
||||
list("name" = "Plastic Jungle Bush B (Alt)", "path" = /obj/structure/decoration/bush/jungle/b/second),
|
||||
list("name" = "Plastic Jungle Bush B (Alt 2)", "path" = /obj/structure/decoration/bush/jungle/b/third),
|
||||
list("name" = "Plastic Jungle Bush B (Random)", "path" = /obj/structure/decoration/bush/jungle/b/style_random),
|
||||
list("name" = "Plastic Jungle Bush C", "path" = /obj/structure/decoration/bush/jungle/c/first),
|
||||
list("name" = "Plastic Jungle Bush C (Alt)", "path" = /obj/structure/decoration/bush/jungle/c/second),
|
||||
list("name" = "Plastic Jungle Bush C (Alt 2)", "path" = /obj/structure/decoration/bush/jungle/c/third),
|
||||
list("name" = "Plastic Jungle Bush C (Random)", "path" = /obj/structure/decoration/bush/jungle/c/style_random),
|
||||
list("name" = "Large Plastic Bush", "path" = /obj/structure/decoration/bush/large/first),
|
||||
list("name" = "Large Plastic Bush (Alt)", "path" = /obj/structure/decoration/bush/large/second),
|
||||
list("name" = "Large Plastic Bush (Alt 2)", "path" = /obj/structure/decoration/bush/large/third),
|
||||
list("name" = "Large Plastic Bush (Random)", "path" = /obj/structure/decoration/bush/large/style_random),
|
||||
),
|
||||
"Rocks" = list(
|
||||
list("name" = "Plastic Rock", "path" = /obj/structure/decoration/rock/first),
|
||||
list("name" = "Plastic Rock (Alt)", "path" = /obj/structure/decoration/rock/second),
|
||||
list("name" = "Plastic Rock (Alt 2)", "path" = /obj/structure/decoration/rock/third),
|
||||
list("name" = "Plastic Rock (Alt 3)", "path" = /obj/structure/decoration/rock/fourth),
|
||||
list("name" = "Plastic Rock (Random)", "path" = /obj/structure/decoration/rock/style_random),
|
||||
list("name" = "Plastic Rock Pile", "path" = /obj/structure/decoration/rock/pile/first),
|
||||
list("name" = "Plastic Rock Pile (Alt)", "path" = /obj/structure/decoration/rock/pile/second),
|
||||
list("name" = "Plastic Rock Pile (Alt 2)", "path" = /obj/structure/decoration/rock/pile/third),
|
||||
list("name" = "Plastic Rock Pile (Random)", "path" = /obj/structure/decoration/rock/pile/style_random),
|
||||
list("name" = "Plastic Jungle Rocks", "path" = /obj/structure/decoration/rock/pile/jungle/first),
|
||||
list("name" = "Plastic Jungle Rocks (Alt)", "path" = /obj/structure/decoration/rock/pile/jungle/second),
|
||||
list("name" = "Plastic Jungle Rocks (Alt 2)", "path" = /obj/structure/decoration/rock/pile/jungle/third),
|
||||
list("name" = "Plastic Jungle Rocks (Alt 3)", "path" = /obj/structure/decoration/rock/pile/jungle/fourth),
|
||||
list("name" = "Plastic Jungle Rocks (Alt 4)", "path" = /obj/structure/decoration/rock/pile/jungle/fifth),
|
||||
list("name" = "Plastic Jungle Rocks (Random)", "path" = /obj/structure/decoration/rock/pile/jungle/style_random),
|
||||
list("name" = "Large Plastic Rocks", "path" = /obj/structure/decoration/rock/pile/jungle/large/first),
|
||||
list("name" = "Large Plastic Rocks (Alt)", "path" = /obj/structure/decoration/rock/pile/jungle/large/second),
|
||||
list("name" = "Large Plastic Rocks (Alt 2)", "path" = /obj/structure/decoration/rock/pile/jungle/large/third),
|
||||
list("name" = "Large Plastic Rocks (Random)", "path" = /obj/structure/decoration/rock/pile/jungle/large/style_random),
|
||||
),
|
||||
))
|
||||
|
||||
/obj/item/construction/rdd
|
||||
name = "rapid-decoration-device (RDD)"
|
||||
desc = "A device used to rapidly deploy plastic decorative flora. \
|
||||
Internally synthesizes cheap plastic replicas of natural scenery."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "rdd"
|
||||
worn_icon_state = "RCD"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
custom_premium_price = PAYCHECK_COMMAND * 1
|
||||
max_matter = 200
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
item_flags = NO_MAT_REDEMPTION | NOBLUDGEON
|
||||
has_ammobar = TRUE
|
||||
banned_upgrades = RCD_ALL_UPGRADES & ~RCD_UPGRADE_SILO_LINK
|
||||
charge_icon_state = "rtd"
|
||||
drop_sound = 'sound/items/handling/tools/rcd_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/tools/rcd_pickup.ogg'
|
||||
sound_vary = TRUE
|
||||
|
||||
/// Currently selected decoration path
|
||||
var/obj/structure/decoration/selected_decoration
|
||||
/// Currently selected category name (for UI)
|
||||
var/selected_category
|
||||
/// Currently selected design name (for UI)
|
||||
var/selected_design_name
|
||||
|
||||
/obj/item/construction/rdd/Initialize(mapload)
|
||||
. = ..()
|
||||
selected_category = GLOB.rdd_designs[1]
|
||||
var/list/category_designs = GLOB.rdd_designs[selected_category]
|
||||
if(length(category_designs))
|
||||
var/list/first_design = category_designs[1]
|
||||
selected_decoration = first_design["path"]
|
||||
selected_design_name = first_design["name"]
|
||||
|
||||
/obj/item/construction/rdd/examine(mob/user)
|
||||
. = ..()
|
||||
. += span_info("Currently set to produce: [span_bold(initial(selected_decoration.name))].")
|
||||
|
||||
/obj/item/construction/rdd/attack_self(mob/user)
|
||||
. = ..()
|
||||
ui_interact(user)
|
||||
|
||||
/obj/item/construction/rdd/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if(!ui)
|
||||
ui = new(user, src, "RapidDecorationDevice", name)
|
||||
ui.open()
|
||||
|
||||
/obj/item/construction/rdd/ui_assets(mob/user)
|
||||
return list(
|
||||
get_asset_datum(/datum/asset/spritesheet_batched/rdd),
|
||||
)
|
||||
|
||||
/obj/item/construction/rdd/ui_static_data(mob/user)
|
||||
var/list/data = ..()
|
||||
|
||||
data["categories"] = list()
|
||||
for(var/category in GLOB.rdd_designs)
|
||||
var/list/cat_entry = list("cat_name" = category, "designs" = list())
|
||||
for(var/list/design in GLOB.rdd_designs[category])
|
||||
cat_entry["designs"] += list(list(
|
||||
"name" = design["name"],
|
||||
"icon" = sanitize_css_class_name(design["name"]),
|
||||
))
|
||||
data["categories"] += list(cat_entry)
|
||||
|
||||
return data
|
||||
|
||||
/obj/item/construction/rdd/ui_data(mob/user)
|
||||
var/list/data = ..()
|
||||
|
||||
var/total_matter = get_matter(user)
|
||||
data["matter"] = isnum(total_matter) ? total_matter : 0
|
||||
data["max_matter"] = max_matter
|
||||
data["selected_category"] = selected_category
|
||||
data["selected_design"] = selected_design_name
|
||||
|
||||
return data
|
||||
|
||||
/obj/item/construction/rdd/handle_ui_act(action, params, datum/tgui/ui, datum/ui_state/state)
|
||||
. = ..()
|
||||
if(.)
|
||||
return
|
||||
|
||||
switch(action)
|
||||
if("design")
|
||||
var/category = params["category"]
|
||||
var/design_name = params["name"]
|
||||
for(var/list/design as anything in GLOB.rdd_designs[category])
|
||||
if(design["name"] == design_name)
|
||||
selected_decoration = design["path"]
|
||||
selected_category = category
|
||||
selected_design_name = design_name
|
||||
playsound(src, SFX_TOOL_SWITCH, 20, TRUE)
|
||||
return TRUE
|
||||
|
||||
return TRUE
|
||||
|
||||
/obj/item/construction/rdd/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers)
|
||||
. = ..()
|
||||
if(. & ITEM_INTERACT_ANY_BLOCKER)
|
||||
return .
|
||||
|
||||
var/turf/target_turf = get_turf(interacting_with)
|
||||
if(!target_turf)
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
|
||||
if(target_turf.is_blocked_turf(exclude_mobs = TRUE))
|
||||
balloon_alert(user, "tile is blocked!")
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
|
||||
var/decoration_count = 0
|
||||
for(var/obj/structure/decoration/existing in target_turf.contents)
|
||||
decoration_count++
|
||||
if(decoration_count >= 3)
|
||||
balloon_alert(user, "too many decorations here!")
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
|
||||
var/cost = RDD_COST_MULTIPLIER
|
||||
if(!useResource(cost, user, TRUE))
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
|
||||
playsound(loc, 'sound/machines/click.ogg', 50, TRUE)
|
||||
if(!do_after(user, 0.5 SECONDS, target_turf))
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
if(!useResource(cost, user, TRUE))
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
|
||||
playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE)
|
||||
new selected_decoration(target_turf)
|
||||
useResource(cost, user)
|
||||
|
||||
log_tool("[key_name(user)] used [src] to create [initial(selected_decoration.name)] at [AREACOORD(target_turf)]")
|
||||
return ITEM_INTERACT_SUCCESS
|
||||
|
||||
/obj/item/construction/rdd/interact_with_atom_secondary(atom/interacting_with, mob/living/user, list/modifiers)
|
||||
var/turf/target_turf = get_turf(interacting_with)
|
||||
if(!target_turf)
|
||||
return NONE
|
||||
|
||||
var/obj/structure/decoration/found = locate() in target_turf
|
||||
|
||||
if(!found)
|
||||
return NONE
|
||||
|
||||
playsound(target_turf, 'sound/machines/click.ogg', 50, TRUE)
|
||||
if(!do_after(user, 0.5 SECONDS, target_turf))
|
||||
return ITEM_INTERACT_BLOCKING
|
||||
|
||||
playsound(target_turf, 'sound/items/deconstruct.ogg', 50, TRUE)
|
||||
qdel(found)
|
||||
|
||||
log_tool("[key_name(user)] used [src] to deconstruct [found] at [AREACOORD(target_turf)]")
|
||||
return ITEM_INTERACT_SUCCESS
|
||||
|
||||
/obj/item/construction/rdd/borg
|
||||
desc = "A device used to rapidly deploy plastic decorative flora. Uses the cyborg's internal cell."
|
||||
/// energy usage per decoration
|
||||
var/energyfactor = 0.05 * STANDARD_CELL_CHARGE
|
||||
|
||||
/obj/item/construction/rdd/borg/get_matter(mob/user)
|
||||
if(!iscyborg(user))
|
||||
return 0
|
||||
var/mob/living/silicon/robot/borgy = user
|
||||
if(!borgy.cell)
|
||||
return 0
|
||||
max_matter = borgy.cell.maxcharge
|
||||
return borgy.cell.charge
|
||||
|
||||
/obj/item/construction/rdd/borg/useResource(amount, mob/user, dry_run)
|
||||
var/mob/living/silicon/robot/borgy = user
|
||||
if(!iscyborg(borgy))
|
||||
return FALSE
|
||||
if(!borgy.cell)
|
||||
balloon_alert(user, "no cell found!")
|
||||
return FALSE
|
||||
if(borgy.cell.charge < amount * energyfactor)
|
||||
balloon_alert(user, "insufficient charge!")
|
||||
return FALSE
|
||||
if(!dry_run)
|
||||
playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE)
|
||||
return borgy.cell.use(amount * energyfactor)
|
||||
return TRUE
|
||||
|
||||
/obj/item/construction/rdd/loaded
|
||||
matter = 200
|
||||
|
||||
#undef RDD_COST_MULTIPLIER
|
||||
@@ -30,6 +30,8 @@
|
||||
var/has_ammobar = FALSE
|
||||
/// amount of divisions in the ammo indicator overlay/number of ammo indicator states
|
||||
var/ammo_sections = 10
|
||||
/// icon_state prefix used for charge overlays — defaults to icon_state if not set
|
||||
var/charge_icon_state
|
||||
/// bitflags for upgrades
|
||||
var/construction_upgrades = NONE
|
||||
/// bitflags for banned upgrades
|
||||
@@ -179,7 +181,7 @@
|
||||
if(has_ammobar)
|
||||
var/ratio = ceil((matter / max_matter) * ammo_sections)
|
||||
if(ratio > 0)
|
||||
. += "[icon_state]_charge[ratio]"
|
||||
. += "[charge_icon_state || icon_state]_charge[ratio]"
|
||||
|
||||
/**
|
||||
* Uses resource to do some action. Returns amount of resource used or TRUE/FALSE if only an dry run is required
|
||||
@@ -193,7 +195,7 @@
|
||||
if(!silo_mats || !silo_link)
|
||||
if(matter < amount)
|
||||
if(has_ammobar)
|
||||
flick("[icon_state]_empty", src)
|
||||
flick("[charge_icon_state || icon_state]_empty", src)
|
||||
if(user)
|
||||
balloon_alert(user, "not enough matter!")
|
||||
return FALSE
|
||||
|
||||
@@ -0,0 +1,609 @@
|
||||
/obj/structure/decoration
|
||||
name = "plastic decoration"
|
||||
desc = "A cheap plastic imitation of nature. At least it doesn't need watering."
|
||||
icon = 'icons/obj/fluff/flora/ausflora.dmi'
|
||||
resistance_flags = FLAMMABLE
|
||||
max_integrity = 20
|
||||
anchored = TRUE
|
||||
alpha = 210
|
||||
/// No material refund on deconstruction, it's cheap plastic
|
||||
custom_materials = null
|
||||
|
||||
/obj/structure/decoration/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
/obj/structure/decoration/atom_deconstruct(disassembled = TRUE)
|
||||
if(!disassembled)
|
||||
new /obj/effect/decal/cleanable/plastic(loc)
|
||||
return
|
||||
|
||||
/obj/structure/decoration/examine(mob/user)
|
||||
. = ..()
|
||||
. += span_notice("It's made of cheap, hollow plastic.")
|
||||
|
||||
/obj/structure/decoration/grass
|
||||
name = "plastic grass patch"
|
||||
desc = "Fake grass. Feels like a brillo pad."
|
||||
icon = /obj/structure/flora/grass/green::icon
|
||||
icon_state = /obj/structure/flora/grass/green::icon_state
|
||||
|
||||
/obj/structure/decoration/grass/first
|
||||
// inherits from parent
|
||||
|
||||
/obj/structure/decoration/grass/second
|
||||
icon_state = /obj/structure/flora/grass/green/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/grass/third
|
||||
icon_state = /obj/structure/flora/grass/green/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/grass/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "snowgrass[rand(1, 3)]gb"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/grass/brown
|
||||
icon = /obj/structure/flora/grass/brown::icon
|
||||
icon_state = /obj/structure/flora/grass/brown::icon_state
|
||||
|
||||
/obj/structure/decoration/grass/brown/first
|
||||
|
||||
/obj/structure/decoration/grass/brown/second
|
||||
icon_state = /obj/structure/flora/grass/brown/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/grass/brown/third
|
||||
icon_state = /obj/structure/flora/grass/brown/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/grass/brown/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "snowgrass[rand(1, 3)]bb"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/jungle_grass
|
||||
name = "plastic jungle grass"
|
||||
desc = "Plastic alien-looking grass. The jungle vibe without the jungle bugs."
|
||||
icon = /obj/structure/flora/grass/jungle::icon
|
||||
icon_state = /obj/structure/flora/grass/jungle::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/first
|
||||
|
||||
/obj/structure/decoration/jungle_grass/second
|
||||
icon_state = /obj/structure/flora/grass/jungle/a/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/third
|
||||
icon_state = /obj/structure/flora/grass/jungle/a/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/fourth
|
||||
icon_state = /obj/structure/flora/grass/jungle/a/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/fifth
|
||||
icon_state = /obj/structure/flora/grass/jungle/a/style_5::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "grassa[rand(1, 5)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b
|
||||
icon = /obj/structure/flora/grass/jungle/b::icon
|
||||
icon_state = /obj/structure/flora/grass/jungle/b::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b/first
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b/second
|
||||
icon_state = /obj/structure/flora/grass/jungle/b/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b/third
|
||||
icon_state = /obj/structure/flora/grass/jungle/b/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b/fourth
|
||||
icon_state = /obj/structure/flora/grass/jungle/b/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b/fifth
|
||||
icon_state = /obj/structure/flora/grass/jungle/b/style_5::icon_state
|
||||
|
||||
/obj/structure/decoration/jungle_grass/b/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "grassb[rand(1, 5)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush
|
||||
name = "plastic bush"
|
||||
desc = "A plastic shrub. Bristly to the touch and slightly off-color."
|
||||
icon = /obj/structure/flora/bush::icon
|
||||
icon_state = /obj/structure/flora/bush::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/first
|
||||
|
||||
/obj/structure/decoration/bush/second
|
||||
icon_state = /obj/structure/flora/bush/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/third
|
||||
icon_state = /obj/structure/flora/bush/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/fourth
|
||||
icon_state = /obj/structure/flora/bush/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "firstbush_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/reed
|
||||
name = "plastic reeds"
|
||||
icon = /obj/structure/flora/bush/reed::icon
|
||||
icon_state = /obj/structure/flora/bush/reed::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/reed/first
|
||||
|
||||
/obj/structure/decoration/bush/reed/second
|
||||
icon_state = /obj/structure/flora/bush/reed/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/reed/third
|
||||
icon_state = /obj/structure/flora/bush/reed/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/reed/fourth
|
||||
icon_state = /obj/structure/flora/bush/reed/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/reed/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "reedbush_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/leafy
|
||||
name = "plastic leafy bush"
|
||||
icon = /obj/structure/flora/bush/leafy::icon
|
||||
icon_state = /obj/structure/flora/bush/leafy::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/leafy/first
|
||||
|
||||
/obj/structure/decoration/bush/leafy/second
|
||||
icon_state = /obj/structure/flora/bush/leavy/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/leafy/third
|
||||
icon_state = /obj/structure/flora/bush/leavy/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/leafy/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "leafybush_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/pale
|
||||
name = "plastic pale bush"
|
||||
icon = /obj/structure/flora/bush/pale::icon
|
||||
icon_state = /obj/structure/flora/bush/pale::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pale/first
|
||||
|
||||
/obj/structure/decoration/bush/pale/second
|
||||
icon_state = /obj/structure/flora/bush/pale/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pale/third
|
||||
icon_state = /obj/structure/flora/bush/pale/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pale/fourth
|
||||
icon_state = /obj/structure/flora/bush/pale/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pale/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "palebush_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/stalky
|
||||
name = "plastic stalky bush"
|
||||
icon = /obj/structure/flora/bush/stalky::icon
|
||||
icon_state = /obj/structure/flora/bush/stalky::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/stalky/first
|
||||
|
||||
/obj/structure/decoration/bush/stalky/second
|
||||
icon_state = /obj/structure/flora/bush/stalky/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/stalky/third
|
||||
icon_state = /obj/structure/flora/bush/stalky/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/stalky/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "stalkybush_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/grassy
|
||||
name = "plastic grassy bush"
|
||||
icon = /obj/structure/flora/bush/grassy::icon
|
||||
icon_state = /obj/structure/flora/bush/grassy::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/grassy/first
|
||||
|
||||
/obj/structure/decoration/bush/grassy/second
|
||||
icon_state = /obj/structure/flora/bush/grassy/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/grassy/third
|
||||
icon_state = /obj/structure/flora/bush/grassy/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/grassy/fourth
|
||||
icon_state = /obj/structure/flora/bush/grassy/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/grassy/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "grassybush_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/sparsegrass
|
||||
name = "plastic sparse grass"
|
||||
icon = /obj/structure/flora/bush/sparsegrass::icon
|
||||
icon_state = /obj/structure/flora/bush/sparsegrass::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/sparsegrass/first
|
||||
|
||||
/obj/structure/decoration/bush/sparsegrass/second
|
||||
icon_state = /obj/structure/flora/bush/sparsegrass/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/sparsegrass/third
|
||||
icon_state = /obj/structure/flora/bush/sparsegrass/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/sparsegrass/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "sparsegrass_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/fullgrass
|
||||
name = "plastic full grass"
|
||||
icon = /obj/structure/flora/bush/fullgrass::icon
|
||||
icon_state = /obj/structure/flora/bush/fullgrass::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/fullgrass/first
|
||||
|
||||
/obj/structure/decoration/bush/fullgrass/second
|
||||
icon_state = /obj/structure/flora/bush/fullgrass/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/fullgrass/third
|
||||
icon_state = /obj/structure/flora/bush/fullgrass/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/fullgrass/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "fullgrass_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/ferny
|
||||
name = "plastic ferny bush"
|
||||
icon = /obj/structure/flora/bush/ferny::icon
|
||||
icon_state = /obj/structure/flora/bush/ferny::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/ferny/first
|
||||
|
||||
/obj/structure/decoration/bush/ferny/second
|
||||
icon_state = /obj/structure/flora/bush/ferny/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/ferny/third
|
||||
icon_state = /obj/structure/flora/bush/ferny/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/ferny/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "fernybush_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/sunny
|
||||
name = "plastic sunny bush"
|
||||
icon = /obj/structure/flora/bush/sunny::icon
|
||||
icon_state = /obj/structure/flora/bush/sunny::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/sunny/first
|
||||
|
||||
/obj/structure/decoration/bush/sunny/second
|
||||
icon_state = /obj/structure/flora/bush/sunny/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/sunny/third
|
||||
icon_state = /obj/structure/flora/bush/sunny/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/sunny/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "sunnybush_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/generic
|
||||
name = "plastic generic bush"
|
||||
icon = /obj/structure/flora/bush/generic::icon
|
||||
icon_state = /obj/structure/flora/bush/generic::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/generic/first
|
||||
|
||||
/obj/structure/decoration/bush/generic/second
|
||||
icon_state = /obj/structure/flora/bush/generic/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/generic/third
|
||||
icon_state = /obj/structure/flora/bush/generic/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/generic/fourth
|
||||
icon_state = /obj/structure/flora/bush/generic/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/generic/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "genericbush_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/pointy
|
||||
name = "plastic pointy bush"
|
||||
icon = /obj/structure/flora/bush/pointy::icon
|
||||
icon_state = /obj/structure/flora/bush/pointy::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pointy/first
|
||||
|
||||
/obj/structure/decoration/bush/pointy/second
|
||||
icon_state = /obj/structure/flora/bush/pointy/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pointy/third
|
||||
icon_state = /obj/structure/flora/bush/pointy/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pointy/fourth
|
||||
icon_state = /obj/structure/flora/bush/pointy/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/pointy/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "pointybush_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/lavendergrass
|
||||
name = "plastic lavender grass"
|
||||
icon = /obj/structure/flora/bush/lavendergrass::icon
|
||||
icon_state = /obj/structure/flora/bush/lavendergrass::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/lavendergrass/first
|
||||
|
||||
/obj/structure/decoration/bush/lavendergrass/second
|
||||
icon_state = /obj/structure/flora/bush/lavendergrass/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/lavendergrass/third
|
||||
icon_state = /obj/structure/flora/bush/lavendergrass/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/lavendergrass/fourth
|
||||
icon_state = /obj/structure/flora/bush/lavendergrass/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/lavendergrass/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "lavendergrass_[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/flowers_yw
|
||||
name = "plastic yellow-white flowers"
|
||||
icon = /obj/structure/flora/bush/flowers_yw::icon
|
||||
icon_state = /obj/structure/flora/bush/flowers_yw::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_yw/first
|
||||
|
||||
/obj/structure/decoration/bush/flowers_yw/second
|
||||
icon_state = /obj/structure/flora/bush/flowers_yw/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_yw/third
|
||||
icon_state = /obj/structure/flora/bush/flowers_yw/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_yw/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "ywflowers_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/flowers_br
|
||||
name = "plastic blue-red flowers"
|
||||
icon = /obj/structure/flora/bush/flowers_br::icon
|
||||
icon_state = /obj/structure/flora/bush/flowers_br::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_br/first
|
||||
|
||||
/obj/structure/decoration/bush/flowers_br/second
|
||||
icon_state = /obj/structure/flora/bush/flowers_br/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_br/third
|
||||
icon_state = /obj/structure/flora/bush/flowers_br/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_br/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "brflowers_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/flowers_pp
|
||||
name = "plastic purple flowers"
|
||||
icon = /obj/structure/flora/bush/flowers_pp::icon
|
||||
icon_state = /obj/structure/flora/bush/flowers_pp::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_pp/first
|
||||
|
||||
/obj/structure/decoration/bush/flowers_pp/second
|
||||
icon_state = /obj/structure/flora/bush/flowers_pp/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_pp/third
|
||||
icon_state = /obj/structure/flora/bush/flowers_pp/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/flowers_pp/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "ppflowers_[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/snow
|
||||
name = "plastic snowy bush"
|
||||
desc = "A plastic bush dusted with fake snow. Year-round winter cheer."
|
||||
icon = /obj/structure/flora/bush/snow::icon
|
||||
icon_state = /obj/structure/flora/bush/snow::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/snow/first
|
||||
|
||||
/obj/structure/decoration/bush/snow/second
|
||||
icon_state = /obj/structure/flora/bush/snow/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/snow/third
|
||||
icon_state = /obj/structure/flora/bush/snow/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/snow/fourth
|
||||
icon_state = /obj/structure/flora/bush/snow/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/snow/fifth
|
||||
icon_state = /obj/structure/flora/bush/snow/style_5::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/snow/sixth
|
||||
icon_state = /obj/structure/flora/bush/snow/style_6::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/snow/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "snowbush[rand(1, 6)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/jungle
|
||||
name = "plastic jungle bush"
|
||||
desc = "Plastic jungle foliage. All the looks, none of the allergens."
|
||||
icon = /obj/structure/flora/bush/jungle::icon
|
||||
icon_state = /obj/structure/flora/bush/jungle::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/first
|
||||
|
||||
/obj/structure/decoration/bush/jungle/second
|
||||
icon_state = /obj/structure/flora/bush/jungle/a/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/third
|
||||
icon_state = /obj/structure/flora/bush/jungle/a/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "busha[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/jungle/b
|
||||
icon = /obj/structure/flora/bush/jungle/b::icon
|
||||
icon_state = /obj/structure/flora/bush/jungle/b::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/b/first
|
||||
|
||||
/obj/structure/decoration/bush/jungle/b/second
|
||||
icon_state = /obj/structure/flora/bush/jungle/b/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/b/third
|
||||
icon_state = /obj/structure/flora/bush/jungle/b/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/b/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "bushb[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/jungle/c
|
||||
icon = /obj/structure/flora/bush/jungle/c::icon
|
||||
icon_state = /obj/structure/flora/bush/jungle/c::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/c/first
|
||||
|
||||
/obj/structure/decoration/bush/jungle/c/second
|
||||
icon_state = /obj/structure/flora/bush/jungle/c/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/c/third
|
||||
icon_state = /obj/structure/flora/bush/jungle/c/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/jungle/c/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "bushc[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/bush/large
|
||||
name = "large plastic bush"
|
||||
desc = "A large plastic bush. Dominates the room with its hollow presence."
|
||||
icon = /obj/structure/flora/bush/large::icon
|
||||
icon_state = /obj/structure/flora/bush/large::icon_state
|
||||
pixel_x = /obj/structure/flora/bush/large::pixel_x
|
||||
pixel_y = /obj/structure/flora/bush/large::pixel_y
|
||||
layer = /obj/structure/flora/bush/large::layer
|
||||
plane = /obj/structure/flora/bush/large::plane
|
||||
density = /obj/structure/flora/bush/large::density
|
||||
|
||||
/obj/structure/decoration/bush/large/first
|
||||
|
||||
/obj/structure/decoration/bush/large/second
|
||||
icon_state = /obj/structure/flora/bush/large/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/large/third
|
||||
icon_state = /obj/structure/flora/bush/large/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/bush/large/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "bush[rand(1, 3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/rock
|
||||
name = "plastic rock"
|
||||
desc = "A hollow plastic boulder. Surprisingly convincing from a distance."
|
||||
icon = /obj/structure/flora/rock::icon
|
||||
icon_state = /obj/structure/flora/rock::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/first
|
||||
|
||||
/obj/structure/decoration/rock/second
|
||||
icon_state = /obj/structure/flora/rock/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/third
|
||||
icon_state = /obj/structure/flora/rock/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/fourth
|
||||
icon_state = /obj/structure/flora/rock/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "basalt[rand(1, 4)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/rock/pile
|
||||
name = "plastic rock pile"
|
||||
desc = "A pile of hollow plastic rocks. Light enough to kick over."
|
||||
icon = /obj/structure/flora/rock/pile::icon
|
||||
icon_state = /obj/structure/flora/rock/pile::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/first
|
||||
|
||||
/obj/structure/decoration/rock/pile/second
|
||||
icon_state = /obj/structure/flora/rock/pile/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/third
|
||||
icon_state = /obj/structure/flora/rock/pile/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "lavarocks[pick(3;1,3;2,1;3)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle
|
||||
name = "plastic jungle rocks"
|
||||
desc = "Fake rocks with a jungle theme. No actual geological history."
|
||||
icon = /obj/structure/flora/rock/pile/jungle::icon
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/first
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/second
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/third
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/fourth
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/style_4::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/fifth
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/style_5::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "rock[rand(1, 5)]"
|
||||
update_appearance()
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/large
|
||||
name = "plastic large rocks"
|
||||
desc = "A pile of large fake jungle rocks. Surprisingly light."
|
||||
icon = /obj/structure/flora/rock/pile/jungle/large::icon
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/large::icon_state
|
||||
pixel_x = /obj/structure/flora/rock/pile/jungle/large::pixel_x
|
||||
pixel_y = /obj/structure/flora/rock/pile/jungle/large::pixel_y
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/large/first
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/large/second
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/large/style_2::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/large/third
|
||||
icon_state = /obj/structure/flora/rock/pile/jungle/large/style_3::icon_state
|
||||
|
||||
/obj/structure/decoration/rock/pile/jungle/large/style_random/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = "rocks[rand(1, 3)]"
|
||||
update_appearance()
|
||||
Reference in New Issue
Block a user