diff --git a/code/game/turfs/simulated/desert_planet_structures.dm b/code/game/turfs/simulated/desert_planet_structures.dm deleted file mode 100644 index 6819dfd939..0000000000 --- a/code/game/turfs/simulated/desert_planet_structures.dm +++ /dev/null @@ -1,125 +0,0 @@ - -/obj/structure/prop/desert_planet/rock - name = "desert rock" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "rock" - density = FALSE - anchored = TRUE - -/obj/structure/prop/desert_planet/largerock - name = "desert large rock" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "largerock" - density = TRUE - anchored = TRUE - -/obj/structure/prop/desert_planet/boulder1 - name = "desert boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "boulder1" - density = TRUE - anchored = TRUE - -/obj/structure/prop/desert_planet/boulder2 - name = "desert boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "boulder2" - density = TRUE - anchored = TRUE - -/obj/structure/prop/desert_planet/boulder3 - name = "desert boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "boulder3" - density = TRUE - anchored = TRUE - -/obj/structure/prop/desert_planet/boulder4 - name = "desert boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "boulder4" - density = TRUE - anchored = TRUE - -/obj/structure/prop/desert_planet/largeboulder1 - name = "desert large boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet_64x64.dmi' - icon_state = "largeboulder1" - density = TRUE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE - -/obj/structure/prop/desert_planet/largeboulder2 - name = "desert large boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet_64x64.dmi' - icon_state = "largeboulder2" - density = TRUE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE - -/obj/structure/prop/desert_planet/largeboulder3 - name = "desert large boulder" - desc = "Sandy and smooth from erosion." - icon = 'icons/turf/desert_planet_64x64.dmi' - icon_state = "largeboulder3" - density = TRUE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE - -/obj/structure/prop/desert_planet/cliff - name = "desert cliff" - desc = "A sheer cliff of smooth desert stone, quite steep." - icon = 'icons/turf/desert_planet_64x64.dmi' - icon_state = "cliff" - density = TRUE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE - -/obj/structure/prop/desert_planet/shadow - name = "shadow" - desc = "Looking at the cliff's shadow, cool off from the heat." - icon = 'icons/turf/desert_planet_64x64.dmi' - icon_state = "shadow" - density = TRUE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE - -/obj/structure/prop/desert_planet/palmtree - name = "palm tree" - desc = "Tall palm tree, makes for a good shade." - icon = 'icons/turf/desert_planet_160x160.dmi' - icon_state = "palmtree" - density = FALSE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE - -/obj/structure/prop/desert_planet/palmtreeshort - name = "palm tree" - desc = "Tall palm tree, makes for a good shade." - icon = 'icons/turf/desert_planet_160x160.dmi' - icon_state = "palmtreeshort" - density = FALSE - anchored = TRUE - bound_width = 64 - bound_height = 64 - can_buckle = FALSE \ No newline at end of file diff --git a/code/game/turfs/simulated/floor_icon.dm b/code/game/turfs/simulated/floor_icon.dm index 82153557a8..6caaf5e99f 100644 --- a/code/game/turfs/simulated/floor_icon.dm +++ b/code/game/turfs/simulated/floor_icon.dm @@ -107,13 +107,18 @@ var/image/no_ceiling_image = null // Has to have it's own edge_blending_priority // Has to have a higher priority than us // Their icon_state is not our icon_state - // They don't forbid_turf_edge + // They don't forbid_turf_edge if(istype(T) && T.edge_blending_priority && edge_blending_priority < T.edge_blending_priority && icon_state != T.icon_state && !T.forbid_turf_edge()) var/cache_key = "[T.get_edge_icon_state()]-[checkdir]" // Usually [icon_state]-[dirnum] if(!turf_edge_cache[cache_key]) - var/image/I = image(icon = 'icons/turf/outdoors_edge.dmi', icon_state = "[T.get_edge_icon_state()]-edge", dir = checkdir, layer = ABOVE_TURF_LAYER) // Icon should be abstracted out - I.plane = TURF_PLANE - turf_edge_cache[cache_key] = I + if(T.modular_icon) + var/image/I = image(icon = 'modular_chomp/icons/turf/outdoors_edge.dmi', icon_state = "[T.get_edge_icon_state()]-edge", dir = checkdir, layer = ABOVE_TURF_LAYER) // CHOMPedit start: use our turf edges for our turfs + I.plane = TURF_PLANE + turf_edge_cache[cache_key] = I + else + var/image/I = image(icon = 'icons/turf/outdoors_edge.dmi', icon_state = "[T.get_edge_icon_state()]-edge", dir = checkdir, layer = ABOVE_TURF_LAYER) // Icon should be abstracted out + I.plane = TURF_PLANE + turf_edge_cache[cache_key] = I // CHOMPedit end add_overlay(turf_edge_cache[cache_key]) // We will take this state and use it for a cache key, and append '-edge' to it to get the edge overlay (edges *from other turfs*, not our own internal edges) @@ -282,4 +287,3 @@ var/image/no_ceiling_image = null I.layer = layer flooring_cache[cache_key] = I return flooring_cache[cache_key] - diff --git a/code/game/turfs/simulated/outdoors/desert_planet.dm b/code/game/turfs/simulated/outdoors/desert_planet.dm deleted file mode 100644 index 06bfaec04c..0000000000 --- a/code/game/turfs/simulated/outdoors/desert_planet.dm +++ /dev/null @@ -1,213 +0,0 @@ -/* Testing -/turf/simulated/floor/outdoors/desert_planet/sand - name = "sand" - desc = "Sandy, taste salty and gritty." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' - edge_blending_priority = 2 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - initial_flooring = /decl/flooring/sand - can_dig = false -*/ - -/turf/simulated/floor/outdoors/desert_planet/sand - name = "sand" - desc = "Salty and gritty." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "sand0" - //edge_blending_priority = 1 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/* #I want this for the desert tiles. -/turf/simulated/floor/outdoors/desert_planet/sand - name = "sand" - desc = "Salty and gritty." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' - icon_base = "sand" - footstep_sounds = list("human" = list( - 'sound/effects/footstep/asteroid1.ogg', - 'sound/effects/footstep/asteroid2.ogg', - 'sound/effects/footstep/asteroid3.ogg', - 'sound/effects/footstep/asteroid4.ogg', - 'sound/effects/footstep/asteroid5.ogg', - 'sound/effects/footstep/MedDirt1.ogg', - 'sound/effects/footstep/MedDirt2.ogg', - 'sound/effects/footstep/MedDirt3.ogg', - 'sound/effects/footstep/MedDirt4.ogg')) - -/turf/simulated/floor/outdoors/sand/Initialize(mapload) - var/possiblesands = list( - "sand" = 50, - "sand" = 1, - "ironsand3" = 1, - "ironsand4" = 1, - "ironsand5" = 1, - "ironsand6" = 1, - "ironsand7" = 1, - "ironsand8" = 1, - "ironsand9" = 1, - "ironsand10" = 1, - "ironsand11" = 1, - "ironsand12" = 1, - "ironsand13" = 1, - "ironsand14" = 1, - "ironsand15" = 1 - - ) - flooring_override = pickweight(possiblesands) - return ..() - -/turf/simulated/floor/water/hotspring - name = "Hotsprings" - desc = "A natural hotspring connecting to an aquifer. It seems the facility was built ontop of it." - edge_blending_priority = -2 - movement_cost = 8 - depth = 2 - water_state = "water_shallow" - outdoors = FALSE - -/turf/simulated/floor/water/hotspring/Entered(atom/movable/AM, atom/oldloc) - if(istype(AM, /mob/living)) - var/mob/living/L = AM - L.update_water() - if(L.check_submerged() <= 0) - return - if(!istype(oldloc, /turf/simulated/floor/water/hotspring)) - to_chat(L, "You feel an overwhelming wave of warmth from entering \the [src]!") - AM.water_act(5) - ..() - - -*/ - -/turf/simulated/floor/outdoors/desert_planet/deep_sand - name = "sand" - desc = "Salty and gritty." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "deep_sand" - movement_cost = 3 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/turf/simulated/floor/outdoors/desert_planet/grass - name = "grass" - desc = "Lively green grass, soft to walk on." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "grass" - //edge_blending_priority = 4 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/turf/simulated/floor/outdoors/desert_planet/deep_grass - name = "dense grass" - desc = "Dense patch of grass, seems like a soft spot to lay on." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "deep_grass" - //edge_blending_priority = 5 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/turf/simulated/floor/outdoors/desert_planet/gravel - name = "gravel" - desc = "Mix of dirt and sand, it crumbles in your hand." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "gravel" - //edge_blending_priority = 2 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/turf/simulated/floor/outdoors/desert_planet/mud - name = "mud" - desc = "Squishy damp dirt, smells muddy." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "mud" - //edge_blending_priority = 3 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/turf/simulated/floor/outdoors/desert_planet/sandstone_tiles - name = "sandstone_tiles" - desc = "Smooth polished sandstone tiles, fitted and fixed in patters" - icon = 'icons/turf/desert_planet.dmi' - icon_state = "sandstone_tiles" - //edge_blending_priority = 3 - turf_layers = list(/turf/simulated/floor/outdoors/rocks) - -/obj/effect/floor_decal/desert_planet/floor/sand0_edge - name = "sand0_edge" - icon = 'icons/turf/desert_planet.dmi' - icon_state = "sand0_edge" - -/obj/effect/floor_decal/desert_planet/floor/gravel_edge - name = "gravel_edge" - icon = 'icons/turf/desert_planet.dmi' - icon_state = "gravel_edge" - -/obj/effect/floor_decal/desert_planet/floor/mud_edge - name = "mud_edge" - icon = 'icons/turf/desert_planet.dmi' - icon_state = "mud_edge" - -/obj/effect/floor_decal/desert_planet/floor/grass_edge - name = "grass_edge" - icon = 'icons/turf/desert_planet.dmi' - icon_state = "grass_edge" - -/obj/effect/floor_decal/desert_planet/floor/deep_grass_edge - name = "deep_grass_edge" - icon = 'icons/turf/desert_planet.dmi' - icon_state = "deep_grass_edge" - - -/* #No idea how water tiles work -/turf/simulated/floor/outdoors/desert_planet/water - name = "water" - desc = "Clear cool water, looks potable." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "water" - var/water_state = "water_shallow" - var/under_state = "sand" - can_be_plated = FALSE - outdoors = OUTDOORS_YES - flags = TURF_ACID_IMMUNE - layer = WATER_FLOOR_LAYER - can_dirty = FALSE // It's water - var/depth = 1 // Higher numbers indicates deeper water. - var/reagent_type = "water" - edge_blending_priority = 2 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) - -/turf/simulated/floor/outdoors/desert_planet/deep_water - name = "deep water" - desc = "deep enough you can't see the bottom of it." - icon = 'icons/turf/desert_planet.dmi' - icon_state = "deep_water" - var/water_state = "water_shallow" - var/under_state = "sand" - can_be_plated = FALSE - outdoors = OUTDOORS_YES - flags = TURF_ACID_IMMUNE - layer = WATER_FLOOR_LAYER - can_dirty = FALSE // It's water - var/depth = 2 // Higher numbers indicates deeper water. - var/reagent_type = "water" - edge_blending_priority = 4 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) - - //I want this for the water tiles -/turf/simulated/floor/water - name = "shallow water" - desc = "A body of water. It seems shallow enough to walk through, if needed." - icon = 'icons/turf/outdoors.dmi' - icon_state = "seashallow" // So it shows up in the map editor as water. - var/water_state = "water_shallow" - var/under_state = "rock" - edge_blending_priority = -1 - movement_cost = 4 - can_be_plated = FALSE - outdoors = OUTDOORS_YES - flags = TURF_ACID_IMMUNE - - layer = WATER_FLOOR_LAYER - - can_dirty = FALSE // It's water - - var/depth = 1 // Higher numbers indicates deeper water. - - var/reagent_type = "water" - // var/datum/looping_sound/water/soundloop CHOMPEdit: Removing soundloop for now. -*/ \ No newline at end of file diff --git a/icons/turf/desert_planet.dmi b/icons/turf/desert_planet.dmi deleted file mode 100644 index a47b108037..0000000000 Binary files a/icons/turf/desert_planet.dmi and /dev/null differ diff --git a/icons/turf/desert_planet_160x160.dmi b/icons/turf/desert_planet_160x160.dmi deleted file mode 100644 index 891c4f151b..0000000000 Binary files a/icons/turf/desert_planet_160x160.dmi and /dev/null differ diff --git a/icons/turf/outdoors_edge.dmi b/icons/turf/outdoors_edge.dmi index 7a12aa115d..764336a4f0 100644 Binary files a/icons/turf/outdoors_edge.dmi and b/icons/turf/outdoors_edge.dmi differ diff --git a/modular_chomp/code/game/turfs/simulated/desert_planet_structures.dm b/modular_chomp/code/game/turfs/simulated/desert_planet_structures.dm new file mode 100644 index 0000000000..e7f38907f5 --- /dev/null +++ b/modular_chomp/code/game/turfs/simulated/desert_planet_structures.dm @@ -0,0 +1,186 @@ +// TODO: split up icon files so all of this isn't reading from the turfs folder + +/obj/structure/prop/desert_planet + icon = 'modular_chomp/icons/turf/desert_planet.dmi' + desc = "Sandy and smooth from erosion." + density = TRUE + anchored = TRUE + +/obj/structure/prop/desert_planet/rock + name = "desert rock" + icon_state = "rock" + density = FALSE + +/obj/structure/prop/desert_planet/largerock + name = "desert large rock" + icon_state = "largerock" + +/obj/structure/prop/desert_planet/boulder1 + name = "desert boulder" + icon_state = "boulder1" + +/obj/structure/prop/desert_planet/boulder2 + name = "desert boulder" + icon_state = "boulder2" + +/obj/structure/prop/desert_planet/boulder3 + name = "desert boulder" + icon_state = "boulder3" + +/obj/structure/prop/desert_planet/boulder4 + name = "desert boulder" + icon_state = "boulder4" + +/obj/structure/prop/desert_planet64x64 + name = "desert large boulder" + desc = "Sandy and smooth from erosion." + icon = 'modular_chomp/icons/turf/desert_planet_64x64.dmi' + density = TRUE + anchored = TRUE + bound_width = 64 + bound_height = 64 + can_buckle = FALSE + +/obj/structure/prop/desert_planet64x64/largeboulder1 + icon_state = "largeboulder1" + +/obj/structure/prop/desert_planet64x64/largeboulder2 + icon_state = "largeboulder2" + +/obj/structure/prop/desert_planet64x64/largeboulder3 + icon_state = "largeboulder3" + +/obj/structure/prop/desert_planet64x64/cliff + name = "desert cliff" + desc = "A sheer cliff of smooth desert stone, quite steep." + icon_state = "cliff" + +/obj/structure/prop/desert_planet64x64/shadow + name = "shadow" + desc = "The cliff shadow looks useful for cooling off from the heat." + icon_state = "shadow" + +/obj/structure/prop/desert_planet160x160 + name = "desert large boulder" + desc = "Sandy and smooth from erosion." + icon = 'modular_chomp/icons/turf/desert_planet_160x160.dmi' + density = TRUE + anchored = TRUE + bound_width = 160 + bound_height = 160 + can_buckle = FALSE + +/obj/structure/prop/desert_planet160x160/largeboulder + icon_state = "large_boulder" + +/obj/structure/prop/desert_planet160x160/tallboulder + icon_state = "tall_boulder" + +/obj/structure/prop/desert_planet160x160/boulder + icon_state = "boulder" + +/obj/structure/prop/desert_planet160x160/lcactus + name = "cactus" + desc = "Large and prickly." + icon_state = "lcactus" + +/obj/structure/prop/desert_planet160x160/lcactus1 + name = "cactus" + desc = "Large and prickly." + icon_state = "lcactus1" + +/obj/structure/prop/desert_planet160x160/lcactus2 + name = "cactus" + desc = "Large and prickly." + icon_state = "lcactus2" + +/obj/structure/prop/desert_planet160x160/lcactus3 + name = "cactus" + desc = "Large and prickly." + icon_state = "lcactus3" + +/obj/structure/flora/desert_planet + name = "desert plant" + desc = "Probably a succulent" + icon = 'modular_chomp/icons/turf/desert_planet.dmi' + +/obj/structure/flora/desert_planet/floralia + name = "floralia" + desc = "Faintly floral." + icon_state = "floralia" + +/obj/structure/flora/desert_planet/ike + name = "ike" + desc = "Bushy." + icon_state = "ike" + +/obj/structure/flora/desert_planet/barrelcactus + name = "barrel cactus" + desc = "Round and prickly." + icon_state = "barrelcactus" + +/obj/structure/flora/tree/desert_planet + name = "palm tree" + desc = "Tall palm tree, makes for a good shade." + icon = 'modular_chomp/icons/turf/desert_planet_160x160.dmi' + density = FALSE + anchored = TRUE + bound_width = 160 + bound_height = 160 + can_buckle = FALSE + product = /obj/item/stack/material/log + product_amount = 50 + health = 2000 + max_health = 2000 + //var/fruit + +/obj/structure/flora/tree/desert_planet/palmtreeb + icon_state = "palmtreeb" + +/obj/structure/flora/tree/desert_planet/palmtreeb1 + icon_state = "palmtreeb1" + +/obj/structure/flora/tree/desert_planet/palmtree + icon_state = "palmtree" + +/obj/structure/flora/tree/desert_planet/palmtree1 + icon_state = "palmtree1" + +/obj/structure/flora/tree/desert_planet/mpalmtreeb + icon_state = "mpalmtreeb" + +/obj/structure/flora/tree/desert_planet/mpalmtreeb1 + icon_state = "mpalmtreeb1" + +/obj/structure/flora/tree/desert_planet/mpalmtree + icon_state = "mpalmtree" + +/obj/structure/flora/tree/desert_planet/mpalmtree1 + icon_state = "mpalmtree1" + +/obj/structure/flora/tree/desert_planet/spalmtree + icon_state = "spalmtree" + +/obj/structure/flora/tree/desert_planet/spalmtree2 + icon_state = "spalmtree2" + +/obj/structure/flora/tree/desert_planet/spalmtree3 + icon_state = "spalmtree3" + +/obj/structure/flora/tree/desert_planet/spalmtree4 + icon_state = "spalmtree4" + +/obj/structure/flora/tree/desert_planet/desert_tree + name = "barren tree" + desc = "Completely barren." + icon_state = "desert_tree" + +/obj/structure/flora/tree/desert_planet/desert_tree1 + name = "gnarled tree" + desc = "Twisted but living." + icon_state = "desert_tree1" + +/obj/structure/flora/tree/desert_planet/desert_tree3 + name = "hardy tree" + desc = "Thriving despite the conditions." + icon_state = "desert_tree3" diff --git a/modular_chomp/code/game/turfs/simulated/outdoors/desert_planet.dm b/modular_chomp/code/game/turfs/simulated/outdoors/desert_planet.dm index 58f1b1eea9..ae996c7c2a 100644 --- a/modular_chomp/code/game/turfs/simulated/outdoors/desert_planet.dm +++ b/modular_chomp/code/game/turfs/simulated/outdoors/desert_planet.dm @@ -9,128 +9,193 @@ can_dig = false */ +// Parent turf. +/turf/simulated/floor/outdoors/desert_planet + name = "sand" + desc = "Salty and gritty." + icon = 'modular_chomp/icons/turf/desert_planet.dmi' + modular_icon = TRUE // This must be true to add edges from our .dmi files. + /turf/simulated/floor/outdoors/desert_planet/sand name = "sand" desc = "Salty and gritty." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' - icon_state = "sand" - edge_blending_priority = 3 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) + icon_state = "sand0" + edge_blending_priority = 2 -/* Testing -/decl/flooring/outdoors/sand - name = "sand" - desc = "Salty and gritty." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' - icon_base = "sand" - footstep_sounds = list("human" = list( - 'sound/effects/footstep/asteroid1.ogg', - 'sound/effects/footstep/asteroid2.ogg', - 'sound/effects/footstep/asteroid3.ogg', - 'sound/effects/footstep/asteroid4.ogg', - 'sound/effects/footstep/asteroid5.ogg', - 'sound/effects/footstep/MedDirt1.ogg', - 'sound/effects/footstep/MedDirt2.ogg', - 'sound/effects/footstep/MedDirt3.ogg', - 'sound/effects/footstep/MedDirt4.ogg')) +// Necessary to get the edges to generate correctly since we use a random-ish icon_state. Inelegant to hard code, but this is a one-off case. +/turf/simulated/floor/outdoors/desert_planet/sand/get_edge_icon_state() + return "sand" -/turf/simulated/floor/outdoors/sand/Initialize(mapload) - var/possiblesands = list( - "ironsand1" = 50, - "ironsand2" = 1, - "ironsand3" = 1, - "ironsand4" = 1, - "ironsand5" = 1, - "ironsand6" = 1, - "ironsand7" = 1, - "ironsand8" = 1, - "ironsand9" = 1, - "ironsand10" = 1, - "ironsand11" = 1, - "ironsand12" = 1, - "ironsand13" = 1, - "ironsand14" = 1, - "ironsand15" = 1 +/turf/simulated/floor/outdoors/desert_planet/sand/Initialize(mapload) + . = ..() + icon_state = "sand[rand(0,2)]" - ) - flooring_override = pickweight(possiblesands) - return ..() - -/turf/simulated/floor/water/hotspring - name = "Hotsprings" - desc = "A natural hotspring connecting to an aquifer. It seems the facility was built ontop of it." - edge_blending_priority = -2 - movement_cost = 8 - depth = 2 - water_state = "water_shallow" - outdoors = FALSE - -/turf/simulated/floor/water/hotspring/Entered(atom/movable/AM, atom/oldloc) - if(istype(AM, /mob/living)) - var/mob/living/L = AM - L.update_water() - if(L.check_submerged() <= 0) - return - if(!istype(oldloc, /turf/simulated/floor/water/hotspring)) - to_chat(L, "You feel an overwhelming wave of warmth from entering \the [src]!") - AM.water_act(5) - ..() - - -*/ +/turf/simulated/floor/outdoors/desert_planet/sand/attackby(var/obj/item/W, var/mob/user) + if(istype(W, /obj/item/weapon/shovel)) + to_chat(user, "You begin to remove \the [src] with your [W].") + if(do_after(user, 4 SECONDS * W.toolspeed)) + to_chat(user, "\The [src] has been dug up, and now lies in a pile nearby.") + icon_state = "sand_dug" + new /obj/item/weapon/ore/glass (src) + else + to_chat(user, "You decide to not finish removing \the [src].") + else + ..() /turf/simulated/floor/outdoors/desert_planet/deep_sand name = "sand" - desc = "Salty and gritty." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' - icon_state = "deep_sand" - edge_blending_priority = 2 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) + desc = "Really gets everywhere." + icon_state = "deep_sand0" + edge_blending_priority = 1 + movement_cost = 3 + +/turf/simulated/floor/outdoors/desert_planet/deep_sand/Initialize(mapload) + . = ..() + icon_state = "deep_sand[rand(0,2)]" /turf/simulated/floor/outdoors/desert_planet/grass name = "grass" desc = "Lively green grass, soft to walk on." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' icon_state = "grass" - edge_blending_priority = 6 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) + edge_blending_priority = 5 /turf/simulated/floor/outdoors/desert_planet/deep_grass name = "dense grass" desc = "Dense patch of grass, seems like a soft spot to lay on." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' icon_state = "deep_grass" - edge_blending_priority = 7 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) + edge_blending_priority = 6 /turf/simulated/floor/outdoors/desert_planet/gravel name = "gravel" desc = "Mix of dirt and sand, it crumbles in your hand." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' icon_state = "gravel" - edge_blending_priority = 5 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) + edge_blending_priority = 3 /turf/simulated/floor/outdoors/desert_planet/mud name = "mud" desc = "Squishy damp dirt, smells muddy." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' icon_state = "mud" edge_blending_priority = 4 - turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) +// At last we've come full circle, a floor which is actually a wall. +/turf/simulated/floor/outdoors/desert_planet/sandrock + name = "sandstone" + desc = "Worn, patterned sandstone." + icon_state = "sandrock" + density = TRUE + opacity = TRUE + turf_layers = list(/turf/simulated/floor/outdoors/rocks) + var/last_act = 0 + +// Stolen from mineral turf code. +/turf/simulated/floor/outdoors/desert_planet/sandrock/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(!user.IsAdvancedToolUser()) + to_chat(user, "You don't have the dexterity to do this!") + return + + if(istype(W, /obj/item/weapon/pickaxe)) + if(!istype(user.loc, /turf)) + return + + var/obj/item/weapon/pickaxe/P = W + if(last_act + P.digspeed > world.time)//prevents message spam + return + last_act = world.time + + playsound(user, P.drill_sound, 20, 1) + to_chat(user, "You start [P.drill_verb].") + + if(do_after(user,P.digspeed)) + + to_chat(user, "You finish [P.drill_verb] \the [src].") + new /obj/item/stack/material/sandstone(src) + density = FALSE + opacity = FALSE + demote() // Converts the turf to the next layer in turf_layers. + ..() + +/* +/obj/effect/floor_decal/desert_planet/floor/sand0_edge + name = "sand0_edge" + icon = 'icons/turf/desert_planet.dmi' + icon_state = "sand0_edge" + +/obj/effect/floor_decal/desert_planet/floor/gravel_edge + name = "gravel_edge" + icon = 'icons/turf/desert_planet.dmi' + icon_state = "gravel_edge" + +/obj/effect/floor_decal/desert_planet/floor/mud_edge + name = "mud_edge" + icon = 'icons/turf/desert_planet.dmi' + icon_state = "mud_edge" + +/obj/effect/floor_decal/desert_planet/floor/grass_edge + name = "grass_edge" + icon = 'icons/turf/desert_planet.dmi' + icon_state = "grass_edge" + +/obj/effect/floor_decal/desert_planet/floor/deep_grass_edge + name = "deep_grass_edge" + icon = 'icons/turf/desert_planet.dmi' + icon_state = "deep_grass_edge" +*/ + +/* #No idea how water tiles work /turf/simulated/floor/outdoors/desert_planet/water name = "water" desc = "Clear cool water, looks potable." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' + icon = 'icons/turf/desert_planet.dmi' icon_state = "water" - edge_blending_priority = 8 + var/water_state = "water_shallow" + var/under_state = "sand" + can_be_plated = FALSE + outdoors = OUTDOORS_YES + flags = TURF_ACID_IMMUNE + layer = WATER_FLOOR_LAYER + can_dirty = FALSE // It's water + var/depth = 1 // Higher numbers indicates deeper water. + var/reagent_type = "water" + edge_blending_priority = 2 turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) /turf/simulated/floor/outdoors/desert_planet/deep_water name = "deep water" desc = "deep enough you can't see the bottom of it." - icon = 'modular_chomp/icons/turf/desert_planet.dmi' + icon = 'icons/turf/desert_planet.dmi' icon_state = "deep_water" - edge_blending_priority = 9 + var/water_state = "water_shallow" + var/under_state = "sand" + can_be_plated = FALSE + outdoors = OUTDOORS_YES + flags = TURF_ACID_IMMUNE + layer = WATER_FLOOR_LAYER + can_dirty = FALSE // It's water + var/depth = 2 // Higher numbers indicates deeper water. + var/reagent_type = "water" + edge_blending_priority = 4 turf_layers = list(/turf/simulated/floor/outdoors/desert_planet/sand) + + //I want this for the water tiles +/turf/simulated/floor/water + name = "shallow water" + desc = "A body of water. It seems shallow enough to walk through, if needed." + icon = 'icons/turf/outdoors.dmi' + icon_state = "seashallow" // So it shows up in the map editor as water. + var/water_state = "water_shallow" + var/under_state = "rock" + edge_blending_priority = -1 + movement_cost = 4 + can_be_plated = FALSE + outdoors = OUTDOORS_YES + flags = TURF_ACID_IMMUNE + + layer = WATER_FLOOR_LAYER + + can_dirty = FALSE // It's water + + var/depth = 1 // Higher numbers indicates deeper water. + + var/reagent_type = "water" + // var/datum/looping_sound/water/soundloop CHOMPEdit: Removing soundloop for now. +*/ diff --git a/modular_chomp/code/game/turfs/simulated/simulated.dm b/modular_chomp/code/game/turfs/simulated/simulated.dm new file mode 100644 index 0000000000..efca9751f2 --- /dev/null +++ b/modular_chomp/code/game/turfs/simulated/simulated.dm @@ -0,0 +1,2 @@ +/turf/simulated + var/modular_icon = FALSE // Currently necessary for turf edges which read from our .dmi files. diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/desert_planet_mobs_ch.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/desert_planet_mobs.dm similarity index 87% rename from code/modules/mob/living/simple_mob/subtypes/vore/desert_planet_mobs_ch.dm rename to modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/desert_planet_mobs.dm index 9eecad9346..78711d4c08 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/desert_planet_mobs_ch.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/desert_planet_mobs.dm @@ -1,10 +1,10 @@ /mob/living/simple_mob/animal/passive/dog/stray name = "dog" - desc = "The most standard dog you have evern see, it even smells like one." + desc = "The most standard dog you have ever seen, it even smells like one." tt_desc = "Canis lupus familiaris" //faction = "mexico" //They are from Mexico. //Amusing but this prompts aggression from crew-aligned mobs. - icon = 'icons/turf/desert_planet.dmi' + icon = 'modular_chomp/icons/turf/desert_planet.dmi' icon_state = "dog" item_state = "dog" icon_living = "dog" @@ -44,4 +44,4 @@ speak_emote = list("rumbles", "chirr?", "churr") - say_list_type = /datum/say_list/armadillo \ No newline at end of file + say_list_type = /datum/say_list/armadillo diff --git a/modular_chomp/icons/turf/desert_planet.dmi b/modular_chomp/icons/turf/desert_planet.dmi index c9b6d3a7b5..dbe1af748b 100644 Binary files a/modular_chomp/icons/turf/desert_planet.dmi and b/modular_chomp/icons/turf/desert_planet.dmi differ diff --git a/modular_chomp/icons/turf/desert_planet_160x160.dmi b/modular_chomp/icons/turf/desert_planet_160x160.dmi new file mode 100644 index 0000000000..508d214d6f Binary files /dev/null and b/modular_chomp/icons/turf/desert_planet_160x160.dmi differ diff --git a/icons/turf/desert_planet_64x64.dmi b/modular_chomp/icons/turf/desert_planet_64x64.dmi similarity index 100% rename from icons/turf/desert_planet_64x64.dmi rename to modular_chomp/icons/turf/desert_planet_64x64.dmi diff --git a/modular_chomp/icons/turf/outdoors_edge.dmi b/modular_chomp/icons/turf/outdoors_edge.dmi index c9b6d3a7b5..773963e371 100644 Binary files a/modular_chomp/icons/turf/outdoors_edge.dmi and b/modular_chomp/icons/turf/outdoors_edge.dmi differ diff --git a/vorestation.dme b/vorestation.dme index 38d172e1da..5a070adb38 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -1721,7 +1721,6 @@ #include "code\game\turfs\initialization\init.dm" #include "code\game\turfs\initialization\maintenance.dm" #include "code\game\turfs\simulated\angled_walls_and_doors_department_colors.dm" -#include "code\game\turfs\simulated\desert_planet_structures.dm" #include "code\game\turfs\simulated\fancy_shuttles.dm" #include "code\game\turfs\simulated\floor.dm" #include "code\game\turfs\simulated\floor_acts.dm" @@ -1744,7 +1743,6 @@ #include "code\game\turfs\simulated\dungeon\floor.dm" #include "code\game\turfs\simulated\dungeon\wall.dm" #include "code\game\turfs\simulated\outdoors\atmoscaves_vr.dm" -#include "code\game\turfs\simulated\outdoors\desert_planet.dm" #include "code\game\turfs\simulated\outdoors\dirt.dm" #include "code\game\turfs\simulated\outdoors\grass.dm" #include "code\game\turfs\simulated\outdoors\ironsand_vr.dm" @@ -3360,7 +3358,6 @@ #include "code\modules\mob\living\simple_mob\subtypes\vore\cookiegirl.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\corrupt_hounds.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\deathclaw.dm" -#include "code\modules\mob\living\simple_mob\subtypes\vore\desert_planet_mobs_ch.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\dino.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\dominated_brain.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\dragon.dm" @@ -4515,6 +4512,8 @@ #include "modular_chomp\code\game\machinery\airconditioner_ch.dm" #include "modular_chomp\code\game\objects\structures\watercloset_ch.dm" #include "modular_chomp\code\game\objects\structures\crate_lockers\largecrate.dm" +#include "modular_chomp\code\game\turfs\simulated\simulated.dm" +#include "modular_chomp\code\game\turfs\simulated\desert_planet_structures.dm" #include "modular_chomp\code\game\turfs\simulated\outdoors\desert_planet.dm" #include "modular_chomp\code\modules\admin\functions\modify_traits.dm" #include "modular_chomp\code\modules\client\preferences.dm" @@ -4565,6 +4564,7 @@ #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\mechanical\drones\combat_drone.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\mechanical\mecha\gygax.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\bigdragon.dm" +#include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\desert_planet_mobs.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\greatwolf.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\vore.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\wolf.dm"