mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-27 22:17:32 +01:00
Merge pull request #11630 from Markolie/whatareyousinkingabout
More Lavaland fixes
This commit is contained in:
@@ -175,136 +175,174 @@
|
||||
|
||||
/atom/proc/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisIntegrate(src)
|
||||
return TRUE
|
||||
|
||||
/obj/item/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.Integrate(src)
|
||||
return FALSE
|
||||
|
||||
/atom/movable/lighting_object/swarmer_act()
|
||||
return FALSE
|
||||
|
||||
/obj/item/gun/swarmer_act()//Stops you from eating the entire armory
|
||||
return
|
||||
return FALSE
|
||||
|
||||
/turf/simulated/floor/swarmer_act()//ex_act() on turf calls it on its contents, this is to prevent attacking mobs by DisIntegrate()'ing the floor
|
||||
return
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/atmospherics/swarmer_act()
|
||||
return
|
||||
return FALSE
|
||||
|
||||
/obj/structure/disposalpipe/swarmer_act()
|
||||
return
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DismantleMachine(src)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/light/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisIntegrate(src)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/door/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisIntegrate(src)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/camera/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisIntegrate(src)
|
||||
toggle_cam(S, 0)
|
||||
return TRUE
|
||||
|
||||
/obj/structure/particle_accelerator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Disrupting the power grid would bring no benefit to us. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/particle_accelerator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) // Since the console is still parented to this
|
||||
to_chat(S, "<span class='warning'>Disrupting the power grid would bring no benefit to us. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/field/generator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
if(!active)
|
||||
S.DisIntegrate(src)
|
||||
return
|
||||
return TRUE
|
||||
to_chat(S, "<span class='warning'>An inhospitable area may be created as a result of destroying this object. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/gravity_generator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisIntegrate(src)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/vending/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)//It's more visually interesting than dismantling the machine
|
||||
S.DisIntegrate(src)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/turretid/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisIntegrate(src)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/chem_dispenser/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>The volatile chemicals in this machine would destroy us. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/nuclearbomb/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This device's destruction would result in the extermination of everything in the area. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/effect/rune/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Searching... sensor malfunction! Target lost. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/structure/reagent_dispensers/fueltank/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Destroying this object would cause a chain reaction. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/structure/cable/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Disrupting the power grid would bring no benefit to us. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/portable_atmospherics/canister/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>An inhospitable area may be created as a result of destroying this object. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/telecomms/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/message_server/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/blackbox_recorder/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This machine has recorded large amounts of data on this structure and its inhabitants, it will be a useful resource to our masters in the future. Aborting. </span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/power/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Disrupting the power grid would bring no benefit to us. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/gateway/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This bluespace source will be important to us later. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/cryopod/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This cryogenic sleeper should be preserved, it will be a useful resource to our masters in the future. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/structure/cryofeed/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This cryogenic feed should be preserved, it will be a useful resource to our masters in the future. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/computer/cryopod/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This cryopod control computer should be preserved, it contains useful items and information about the inhabitants. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/turf/simulated/wall/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
for(var/turf/T in range(1, src))
|
||||
if(istype(T, /turf/space) || istype(T.loc, /area/space) || istype(T, /turf/simulated/floor/plating/airless))
|
||||
to_chat(S, "<span class='warning'>Destroying this object has the potential to cause a hull breach. Aborting.</span>")
|
||||
return
|
||||
..()
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
/obj/structure/window/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
for(var/turf/T in range(1, src))
|
||||
if(istype(T, /turf/space) || istype(T.loc, /area/space))
|
||||
to_chat(S, "<span class='warning'>Destroying this object has the potential to cause a hull breach. Aborting.</span>")
|
||||
return
|
||||
..()
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
/obj/item/stack/cable_coil/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)//Wiring would be too effective as a resource
|
||||
to_chat(S, "<span class='warning'>This object does not contain enough materials to work with.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/item/circuitboard/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This object does not contain enough materials to work with.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/porta_turret/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Attempting to dismantle this machine would result in an immediate counterattack. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/spacepod/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>Destroying this vehicle would destroy us. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/machinery/clonepod/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
if(occupant)
|
||||
to_chat(S, "<span class='warning'>Destroying this machine while it is occupied would result in biological and sentient resources to be harmed. Aborting.</span>")
|
||||
return
|
||||
..()
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
/mob/living/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
S.DisperseTarget(src)
|
||||
return TRUE
|
||||
|
||||
/mob/living/carbon/slime/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>This biological resource is somehow resisting our bluespace transceiver. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/structure/lattice/catwalk/swarmer_catwalk/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
|
||||
to_chat(S, "<span class='warning'>We have created these for our own benefit. Aborting.</span>")
|
||||
return FALSE
|
||||
|
||||
////END CTRL CLICK FOR SWARMERS////
|
||||
|
||||
|
||||
@@ -284,6 +284,7 @@
|
||||
var/turf/simulated/wall/mineral/plastitanium/explosive/E = wall
|
||||
if(E.explosive_wall_group == explosive_wall_group)
|
||||
E.self_destruct()
|
||||
sleep(5)
|
||||
|
||||
///Bomb Cores///
|
||||
|
||||
@@ -301,6 +302,7 @@
|
||||
var/range_medium = 9
|
||||
var/range_light = 17
|
||||
var/range_flame = 17
|
||||
var/admin_log = TRUE
|
||||
|
||||
/obj/item/bombcore/ex_act(severity) //Little boom can chain a big boom
|
||||
detonate()
|
||||
@@ -314,7 +316,7 @@
|
||||
if(adminlog)
|
||||
message_admins(adminlog)
|
||||
log_game(adminlog)
|
||||
explosion(get_turf(src), range_heavy, range_medium, range_light, flame_range = range_flame)
|
||||
explosion(get_turf(src), range_heavy, range_medium, range_light, flame_range = range_flame, adminlog = admin_log)
|
||||
if(loc && istype(loc, /obj/machinery/syndicatebomb))
|
||||
qdel(loc)
|
||||
qdel(src)
|
||||
@@ -405,6 +407,9 @@
|
||||
range_light = 20
|
||||
range_flame = 20
|
||||
|
||||
/obj/item/bombcore/large/explosive_wall
|
||||
admin_log = FALSE
|
||||
|
||||
/obj/item/bombcore/large/underwall
|
||||
layer = ABOVE_OPEN_TURF_LAYER
|
||||
|
||||
|
||||
@@ -1053,6 +1053,36 @@
|
||||
/obj/machinery/vending/cigarette/free
|
||||
prices = list()
|
||||
|
||||
/obj/machinery/vending/cigarette/syndicate
|
||||
products = list(/obj/item/storage/fancy/cigarettes/cigpack_syndicate = 7,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_uplift = 3,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_robust = 2,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_carp = 3,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_midori = 1,
|
||||
/obj/item/storage/box/matches = 10,
|
||||
/obj/item/lighter/zippo = 4,
|
||||
/obj/item/storage/fancy/rollingpapers = 5)
|
||||
|
||||
/obj/machinery/vending/cigarette/syndicate/free
|
||||
prices = list()
|
||||
|
||||
/obj/machinery/vending/cigarette/beach //Used in the lavaland_biodome_beach.dmm ruin
|
||||
name = "\improper ShadyCigs Ultra"
|
||||
desc = "Now with extra premium products!"
|
||||
product_ads = "Probably not bad for you!;Dope will get you through times of no money better than money will get you through times of no dope!;It's good for you!"
|
||||
product_slogans = "Turn on, tune in, drop out!;Better living through chemistry!;Toke!;Don't forget to keep a smile on your lips and a song in your heart!"
|
||||
products = list(/obj/item/storage/fancy/cigarettes = 5,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_uplift = 3,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_robust = 3,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_carp = 3,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_midori = 3,
|
||||
/obj/item/storage/box/matches = 10,
|
||||
/obj/item/lighter/random = 4,
|
||||
/obj/item/storage/fancy/rollingpapers = 5)
|
||||
premium = list(/obj/item/clothing/mask/cigarette/cigar/havana = 2,
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_robustgold = 1,
|
||||
/obj/item/lighter/zippo = 3)
|
||||
|
||||
/obj/machinery/vending/cigarette/New()
|
||||
..()
|
||||
component_parts = list()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//TODO: Flash range does nothing currently
|
||||
|
||||
/proc/explosion(turf/epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range, adminlog = 1, ignorecap = 0, flame_range = 0 ,silent = 0, smoke = 1, cause = null, breach = TRUE)
|
||||
/proc/explosion(turf/epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range, adminlog = 1, ignorecap = 0, flame_range = 0, silent = 0, smoke = 1, cause = null, breach = TRUE)
|
||||
src = null //so we don't abort once src is deleted
|
||||
epicenter = get_turf(epicenter)
|
||||
|
||||
|
||||
@@ -136,7 +136,9 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \
|
||||
/obj/item/clothing/suit/space/eva/plasmaman/miner,
|
||||
/obj/item/clothing/head/helmet/space/eva/plasmaman/miner,
|
||||
/obj/item/clothing/suit/hooded/explorer,
|
||||
/obj/item/clothing/head/hooded/explorer
|
||||
/obj/item/clothing/head/hooded/explorer,
|
||||
/obj/item/clothing/suit/space/eva/plasmaman/explorer,
|
||||
/obj/item/clothing/head/helmet/space/eva/plasmaman/explorer
|
||||
))
|
||||
|
||||
/obj/item/stack/sheet/animalhide/goliath_hide/afterattack(atom/target, mob/user, proximity_flag)
|
||||
|
||||
@@ -277,6 +277,7 @@
|
||||
|
||||
/turf/simulated/wall/mineral/plastitanium/explosive
|
||||
var/explosive_wall_group = EXPLOSIVE_WALL_GROUP_SYNDICATE_BASE
|
||||
smooth = SMOOTH_MORE
|
||||
|
||||
/turf/simulated/wall/mineral/plastitanium/explosive/Initialize(mapload)
|
||||
. = ..()
|
||||
@@ -287,9 +288,12 @@
|
||||
return ..()
|
||||
|
||||
/turf/simulated/wall/mineral/plastitanium/explosive/proc/self_destruct()
|
||||
var/obj/item/bombcore/large/bombcore = new(get_turf(src))
|
||||
var/obj/item/bombcore/large/explosive_wall/bombcore = new(get_turf(src))
|
||||
bombcore.detonate()
|
||||
|
||||
/turf/simulated/wall/mineral/plastitanium/explosive/ex_act(severity)
|
||||
return
|
||||
|
||||
//have to copypaste this code
|
||||
/turf/simulated/wall/mineral/plastitanium/interior/copyTurf(turf/T)
|
||||
if(T.type != type)
|
||||
|
||||
@@ -180,8 +180,8 @@
|
||||
if(L)
|
||||
qdel(L)
|
||||
|
||||
/turf/proc/TerraformTurf(path)
|
||||
return ChangeTurf(path)
|
||||
/turf/proc/TerraformTurf(path, defer_change = FALSE, keep_icon = TRUE, ignore_air = FALSE)
|
||||
return ChangeTurf(path, defer_change, keep_icon, ignore_air)
|
||||
|
||||
//Creates a new turf
|
||||
/turf/proc/ChangeTurf(path, defer_change = FALSE, keep_icon = TRUE, ignore_air = FALSE)
|
||||
|
||||
Reference in New Issue
Block a user