diff --git a/code/game/turfs/flooring/flooring_decals_vr.dm b/code/game/turfs/flooring/flooring_decals_vr.dm new file mode 100644 index 0000000000..6f07c769af --- /dev/null +++ b/code/game/turfs/flooring/flooring_decals_vr.dm @@ -0,0 +1,9 @@ +/obj/effect/floor_decal/flesh + name = "flesh" + icon = 'icons/turf/stomach_vr.dmi' + icon_state = "flesh_floor_edges" + +/obj/effect/floor_decal/flesh/colour + name = "flesh" + icon = 'icons/turf/stomach_vr.dmi' + icon_state = "c_flesh_floor_edges" \ No newline at end of file diff --git a/code/game/turfs/flooring/flooring_vr.dm b/code/game/turfs/flooring/flooring_vr.dm new file mode 100644 index 0000000000..dfc7375c8c --- /dev/null +++ b/code/game/turfs/flooring/flooring_vr.dm @@ -0,0 +1,19 @@ +/turf/simulated/floor/flesh + name = "flesh" + desc = "This slick flesh ripples and squishes under your touch" + icon_state = "flesh_floor" + icon = 'icons/turf/stomach_vr.dmi' + initial_flooring = /decl/flooring/flesh + +/turf/simulated/floor/flesh/colour + icon_state = "c_flesh_floor" + initial_flooring = /decl/flooring/flesh + +/turf/simulated/floor/flesh/attackby() + return + +/decl/flooring/flesh + name = "flesh" + desc = "This slick flesh ripples and squishes under your touch" + icon = 'icons/turf/stomach_vr.dmi' + icon_base = "flesh_floor" \ No newline at end of file diff --git a/code/game/turfs/simulated/floor_types_vr.dm b/code/game/turfs/simulated/floor_types_vr.dm new file mode 100644 index 0000000000..e89c3d0b29 --- /dev/null +++ b/code/game/turfs/simulated/floor_types_vr.dm @@ -0,0 +1,17 @@ +/turf/simulated/floor/flesh + name = "flesh" + desc = "This slick flesh ripples and squishes under your touch" + icon_state = "flesh-floor" + icon = 'icons/turf/stomach_vr.dmi' + +/turf/simulated/floor/flesh/colour + name = "flesh" + desc = "This slick flesh ripples and squishes under your touch" + icon_state = "colorable-floor" + icon = 'icons/turf/stomach_vr.dmi' + +/turf/simulated/floor/flesh/attackby() + return + +/turf/simulated/floor/flesh/ex_act(severity) + return \ No newline at end of file diff --git a/code/game/turfs/simulated/wall_types_vr.dm b/code/game/turfs/simulated/wall_types_vr.dm new file mode 100644 index 0000000000..90d389bf53 --- /dev/null +++ b/code/game/turfs/simulated/wall_types_vr.dm @@ -0,0 +1,46 @@ +/turf/simulated/flesh + name = "flesh wall" + desc = "The fleshy surface of this wall squishes nicely under your touch but looks and feels extremly strong" + icon = 'icons/turf/stomach_vr.dmi' + icon_state = "flesh" + opacity = 1 + density = 1 + blocks_air = 1 + +/turf/simulated/flesh/colour + name = "flesh wall" + desc = "The fleshy surface of this wall squishes nicely under your touch but looks and feels extremly strong" + icon = 'icons/turf/stomach_vr.dmi' + icon_state = "colorable-wall" + opacity = 1 + density = 1 + blocks_air = 1 + +/turf/simulated/flesh/attackby() + return + +/turf/simulated/flesh/New() + ..() + update_icon(1) + +var/list/flesh_overlay_cache = list() + +/turf/simulated/flesh/update_icon(var/update_neighbors) + overlays.Cut() + + if(density) + icon = 'icons/turf/stomach_vr.dmi' + icon_state = "flesh" + for(var/direction in cardinal) + var/turf/T = get_step(src,direction) + if(istype(T) && !T.density) + var/place_dir = turn(direction, 180) + if(!flesh_overlay_cache["flesh_side_[place_dir]"]) + flesh_overlay_cache["flesh_side_[place_dir]"] = image('icons/turf/stomach_vr.dmi', "flesh_side", dir = place_dir) + T.overlays += flesh_overlay_cache["flesh_side_[place_dir]"] + + if(update_neighbors) + for(var/direction in alldirs) + if(istype(get_step(src, direction), /turf/simulated/flesh)) + var/turf/simulated/flesh/F = get_step(src, direction) + F.update_icon() \ No newline at end of file diff --git a/code/modules/materials/materials_vr.dm b/code/modules/materials/materials_vr.dm new file mode 100644 index 0000000000..6330293ec8 --- /dev/null +++ b/code/modules/materials/materials_vr.dm @@ -0,0 +1,11 @@ +/material/flesh + name = "flesh" + display_name = "chunk of flesh" + icon_colour = "#dd90aa" + sheet_singular_name = "meat" + sheet_plural_name = "meats" + integrity = 1200 + melting_point = 6000 + explosion_resistance = 200 + hardness = 500 + weight = 500 \ No newline at end of file diff --git a/icons/turf/stomach_vr.dmi b/icons/turf/stomach_vr.dmi index def1416795..69c8ddd6f6 100644 Binary files a/icons/turf/stomach_vr.dmi and b/icons/turf/stomach_vr.dmi differ diff --git a/vorestation.dme b/vorestation.dme index 58ef90892a..fd5181da90 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -1026,7 +1026,9 @@ #include "code\game\turfs\unsimulated.dm" #include "code\game\turfs\flooring\flooring.dm" #include "code\game\turfs\flooring\flooring_decals.dm" +#include "code\game\turfs\flooring\flooring_decals_vr.dm" #include "code\game\turfs\flooring\flooring_premade.dm" +#include "code\game\turfs\flooring\flooring_vr.dm" #include "code\game\turfs\initialization\init.dm" #include "code\game\turfs\initialization\maintenance.dm" #include "code\game\turfs\simulated\floor.dm" @@ -1036,9 +1038,11 @@ #include "code\game\turfs\simulated\floor_icon.dm" #include "code\game\turfs\simulated\floor_static.dm" #include "code\game\turfs\simulated\floor_types.dm" +#include "code\game\turfs\simulated\floor_types_vr.dm" #include "code\game\turfs\simulated\wall_attacks.dm" #include "code\game\turfs\simulated\wall_icon.dm" #include "code\game\turfs\simulated\wall_types.dm" +#include "code\game\turfs\simulated\wall_types_vr.dm" #include "code\game\turfs\simulated\walls.dm" #include "code\game\turfs\snow\snow.dm" #include "code\game\turfs\space\cracked_asteroid.dm" @@ -1480,6 +1484,7 @@ #include "code\modules\materials\material_sheets.dm" #include "code\modules\materials\material_synth.dm" #include "code\modules\materials\materials.dm" +#include "code\modules\materials\materials_vr.dm" #include "code\modules\metric\activity.dm" #include "code\modules\metric\department.dm" #include "code\modules\metric\metric.dm"