mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-18 10:33:30 +01:00
Adds the NT drunk dialer, chasm recovery grenade (#22867)
* Adds the NT drunk dialer, chasm recovery grenade * simple numbers game * Update code/modules/mining/equipment/wormhole_jaunter.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * removes true * removes trait * Apply suggestions from code review Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> * removes * Update code/game/turfs/simulated/floor/chasm.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> --------- Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
@@ -173,3 +173,49 @@
|
||||
. = ..()
|
||||
playsound(loc, 'sound/goonstation/misc/matchstick_light.ogg', 50, TRUE)
|
||||
set_light(8, l_color = "#FFD165")
|
||||
|
||||
/obj/item/grenade/jaunter_grenade
|
||||
name = "chasm jaunter recovery grenade"
|
||||
desc = "NT-Drunk Dialer Grenade. Originally built by NT for locating all beacons in an area and creating wormholes to them, it now finds use to miners for recovering allies from chasms."
|
||||
icon_state = "mirage"
|
||||
/// Mob that threw the grenade.
|
||||
var/mob/living/thrower
|
||||
|
||||
/obj/item/grenade/jaunter_grenade/Destroy()
|
||||
thrower = null
|
||||
return ..()
|
||||
|
||||
/obj/item/grenade/jaunter_grenade/attack_self(mob/user)
|
||||
. = ..()
|
||||
thrower = user
|
||||
|
||||
/obj/item/grenade/jaunter_grenade/prime()
|
||||
update_mob()
|
||||
var/list/destinations = list()
|
||||
for(var/obj/item/radio/beacon/B in GLOB.global_radios)
|
||||
var/turf/BT = get_turf(B)
|
||||
if(is_station_level(BT.z))
|
||||
destinations += BT
|
||||
var/turf/T = get_turf(src)
|
||||
if(istype(T, /turf/simulated/floor/chasm/straight_down/lava_land_surface))
|
||||
for(var/obj/effect/abstract/chasm_storage/C in T)
|
||||
var/found_mob = FALSE
|
||||
for(var/mob/M in C)
|
||||
found_mob = TRUE
|
||||
do_teleport(M, pick(destinations))
|
||||
if(found_mob)
|
||||
new /obj/effect/temp_visual/thunderbolt(T) //Visual feedback it worked.
|
||||
playsound(src, 'sound/magic/lightningbolt.ogg', 100, TRUE)
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
var/list/portal_turfs = list()
|
||||
for(var/turf/PT in circleviewturfs(T, 3))
|
||||
if(!PT.density)
|
||||
portal_turfs += PT
|
||||
playsound(src, 'sound/magic/lightningbolt.ogg', 100, TRUE)
|
||||
for(var/turf/drunk_dial in shuffle(destinations))
|
||||
var/drunken_opening = pick_n_take(portal_turfs)
|
||||
new /obj/effect/portal/jaunt_tunnel(drunken_opening, drunk_dial, src, 100, thrower)
|
||||
new /obj/effect/temp_visual/thunderbolt(drunken_opening)
|
||||
qdel(src)
|
||||
|
||||
@@ -48,6 +48,7 @@
|
||||
EQUIPMENT("Brute First-Aid Kit", /obj/item/storage/firstaid/brute, 600),
|
||||
EQUIPMENT("Fulton Pack", /obj/item/extraction_pack, 1000),
|
||||
EQUIPMENT("Jaunter", /obj/item/wormhole_jaunter, 750),
|
||||
EQUIPMENT("Chasm Jaunter Recovery Grenade", /obj/item/grenade/jaunter_grenade, 1500),
|
||||
EQUIPMENT("Lazarus Injector", /obj/item/lazarus_injector, 1000),
|
||||
EQUIPMENT("Point Transfer Card", /obj/item/card/mining_point_card, 500),
|
||||
EQUIPMENT("Shelter Capsule", /obj/item/survivalcapsule, 400),
|
||||
|
||||
Reference in New Issue
Block a user