mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
Added supply beacon.
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
#define SD_DOOR_TILE 2
|
||||
#define SD_EMPTY_TILE 3
|
||||
#define SD_SUPPLY_TILE 7
|
||||
|
||||
var/global/list/supply_drop_random_loot_types = list(
|
||||
"guns",
|
||||
"seeds",
|
||||
@@ -23,15 +24,17 @@ var/global/list/supply_drop_random_loot_types = list(
|
||||
limit_y = 3
|
||||
preserve_map = 0
|
||||
|
||||
wall_type = /turf/simulated/wall/voxshuttle
|
||||
wall_type = /turf/simulated/wall/titanium
|
||||
floor_type = /turf/simulated/floor/engine
|
||||
var/list/supplied_drop_types = list()
|
||||
var/door_type = /obj/structure/droppod_door
|
||||
var/drop_type = /mob/living/simple_animal/parrot
|
||||
|
||||
var/has_pod_doors
|
||||
var/auto_open_doors
|
||||
|
||||
var/placement_explosion_dev = 2
|
||||
var/placement_explosion_heavy = 4
|
||||
var/placement_explosion_dev = 1
|
||||
var/placement_explosion_heavy = 2
|
||||
var/placement_explosion_light = 6
|
||||
var/placement_explosion_flash = 4
|
||||
|
||||
@@ -96,7 +99,6 @@ var/global/list/supply_drop_random_loot_types = list(
|
||||
if(istype(T))
|
||||
explosion(T, placement_explosion_dev, placement_explosion_heavy, placement_explosion_light, placement_explosion_flash)
|
||||
sleep(5) // Let the explosion finish proccing before we ChangeTurf(), otherwise it might destroy our spawned objects.
|
||||
sleep(-1)
|
||||
return ..()
|
||||
|
||||
/datum/random_map/droppod/get_appropriate_path(var/value)
|
||||
@@ -104,6 +106,8 @@ var/global/list/supply_drop_random_loot_types = list(
|
||||
return floor_type
|
||||
else if(value == SD_WALL_TILE)
|
||||
return wall_type
|
||||
else if(value == SD_DOOR_TILE && !has_pod_doors)
|
||||
return wall_type
|
||||
return null
|
||||
|
||||
// Pods are circular. Get the direction this object is facing from the center of the pod.
|
||||
@@ -132,7 +136,7 @@ var/global/list/supply_drop_random_loot_types = list(
|
||||
qdel(A)
|
||||
|
||||
// Also spawn doors and loot.
|
||||
if(value == SD_DOOR_TILE)
|
||||
if(value == SD_DOOR_TILE && has_pod_doors)
|
||||
var/obj/structure/S = new door_type(T, auto_open_doors)
|
||||
S.set_dir(spawn_dir)
|
||||
|
||||
@@ -242,4 +246,4 @@ var/global/list/supply_drop_random_loot_types = list(
|
||||
else
|
||||
return
|
||||
|
||||
new /datum/random_map/droppod(null, usr.x-2, usr.y-2, usr.z, supplied_drops = spawned_mobs, automated = automatic_pod)
|
||||
new /datum/random_map/droppod(null, usr.x-1, usr.y-1, usr.z, supplied_drops = spawned_mobs, automated = automatic_pod)
|
||||
@@ -3,8 +3,6 @@
|
||||
limit_x = 5
|
||||
limit_y = 5
|
||||
|
||||
placement_explosion_dev = 3
|
||||
placement_explosion_heavy = 5
|
||||
placement_explosion_light = 7
|
||||
placement_explosion_flash = 5
|
||||
|
||||
@@ -28,6 +26,10 @@
|
||||
drop_type = pick(supply_drop_random_loot_types)
|
||||
|
||||
switch(drop_type)
|
||||
|
||||
if("supermatter")
|
||||
new /obj/machinery/power/supermatter(T)
|
||||
|
||||
if("lasers")
|
||||
var/obj/structure/largecrate/C = new(T)
|
||||
new /obj/item/weapon/gun/energy/laser(C)
|
||||
|
||||
Reference in New Issue
Block a user