mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
Jetpacks can now use any gas.
The /obj/item/weapon/tank/jetpack path is now an empty jetpack, and oxygen and carbon dioxide filled jetpacks are /obj/item/weapon/tank/jetpack/blue_jetpack and /obj/item/weapon/tank/jetpack/black_jetpack respectively. Added a new kind of disposal, the deathsposal (it's not called that in game). It's the same as a normal disposal, except it has a red rim to indicate that it leads to space. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3150 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
|
||||
/obj/item/weapon/tank/jetpack
|
||||
name = "Jetpack (Oxygen)"
|
||||
desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas. Use with caution."
|
||||
icon_state = "jetpack0"
|
||||
name = "Jetpack (Empty)"
|
||||
desc = "A tank of compressed gas for use as propulsion in zero-gravity areas. Use with caution."
|
||||
icon_state = "jetpack"
|
||||
w_class = 4.0
|
||||
item_state = "jetpack"
|
||||
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
|
||||
@@ -16,7 +15,6 @@
|
||||
..()
|
||||
src.ion_trail = new /datum/effect/effect/system/ion_trail_follow()
|
||||
src.ion_trail.set_up(src)
|
||||
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
|
||||
|
||||
@@ -40,42 +38,29 @@
|
||||
verb/toggle()
|
||||
set name = "Toggle Jetpack"
|
||||
set category = "Object"
|
||||
src.on = !( src.on )
|
||||
if(src.type == /obj/item/weapon/tank/jetpack/void_jetpack) //Slight change added by me. i didn't make it an if-elseif because some of you might want to add other types of resprited packs :3 -Agouri
|
||||
src.icon_state = text("voidjetpack[]", src.on)
|
||||
else if(src.type == /obj/item/weapon/tank/jetpack/black_jetpack)
|
||||
src.icon_state = text("black_jetpack[]", src.on)
|
||||
on = !on
|
||||
if(on)
|
||||
icon_state = "[icon_state]-on"
|
||||
ion_trail.start()
|
||||
else
|
||||
src.icon_state = text("jetpack[]", src.on)
|
||||
if(src.on)
|
||||
src.ion_trail.start()
|
||||
else
|
||||
src.ion_trail.stop()
|
||||
icon_state = initial(icon_state)
|
||||
ion_trail.stop()
|
||||
return
|
||||
|
||||
|
||||
proc/allow_thrust(num, mob/living/user as mob)
|
||||
if (!( src.on ))
|
||||
if(!(src.on))
|
||||
return 0
|
||||
if ((num < 0.005 || src.air_contents.total_moles() < num))
|
||||
if((num < 0.005 || src.air_contents.total_moles() < num))
|
||||
src.ion_trail.stop()
|
||||
return 0
|
||||
|
||||
var/datum/gas_mixture/G = src.air_contents.remove(num)
|
||||
|
||||
if (G.oxygen >= 0.005)
|
||||
var/allgases = G.carbon_dioxide + G.nitrogen + G.oxygen + G.toxins //fuck trace gases -Pete
|
||||
if(allgases >= 0.005)
|
||||
return 1
|
||||
if (G.toxins > 0.001)
|
||||
if (user)
|
||||
var/d = G.toxins / 2
|
||||
d = min(abs(user.health + 100), d, 25)
|
||||
user.take_organ_damage(0,d)
|
||||
return (G.oxygen >= 0.0025 ? 0.5 : 0)
|
||||
else
|
||||
if (G.oxygen >= 0.0025)
|
||||
return 0.5
|
||||
else
|
||||
return 0
|
||||
|
||||
del(G)
|
||||
return
|
||||
|
||||
@@ -83,12 +68,31 @@
|
||||
/obj/item/weapon/tank/jetpack/void_jetpack
|
||||
name = "Void Jetpack (Oxygen)"
|
||||
desc = "It works well in a void."
|
||||
icon_state = "voidjetpack0"
|
||||
icon_state = "voidjetpack"
|
||||
item_state = "jetpack-void"
|
||||
|
||||
|
||||
/obj/item/weapon/tank/jetpack/blue_jetpack
|
||||
name = "Jetpack (Oxygen)"
|
||||
desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas. Use with caution."
|
||||
icon_state = "jetpack"
|
||||
item_state = "jetpack"
|
||||
|
||||
New()
|
||||
..()
|
||||
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
|
||||
/obj/item/weapon/tank/jetpack/black_jetpack
|
||||
name = "Black Jetpack (Oxygen)"
|
||||
desc = "A black model of jetpacks."
|
||||
icon_state = "black_jetpack0"
|
||||
name = "Jetpack (Carbon Dioxide)"
|
||||
desc = "A tank of compressed carbon dioxide for use as propulsion in zero-gravity areas. Painted black to indicate that it should not be used as a source for internals."
|
||||
icon_state = "black_jetpack"
|
||||
item_state = "jetpack-black"
|
||||
|
||||
New()
|
||||
..()
|
||||
src.ion_trail = new /datum/effect/effect/system/ion_trail_follow()
|
||||
src.ion_trail.set_up(src)
|
||||
src.air_contents.oxygen = 0
|
||||
src.air_contents.carbon_dioxide = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
@@ -329,7 +329,7 @@
|
||||
proc/flush()
|
||||
|
||||
flushing = 1
|
||||
flick("disposal-flush", src)
|
||||
flick("[icon_state]-flush", src)
|
||||
|
||||
var/wrapcheck = 0
|
||||
var/obj/structure/disposalholder/H = new() // virtual holder object which actually
|
||||
@@ -490,6 +490,11 @@
|
||||
update()
|
||||
return
|
||||
|
||||
//Red coloured disposals to indicate that they lead to space.
|
||||
/obj/machinery/disposal/space
|
||||
desc = "A pneumatic waste disposal unit, with the rim coloured red to indicate that it leads to space."
|
||||
icon_state = "deathsposal"
|
||||
|
||||
// virtual disposal object
|
||||
// travels through pipes in lieu of actual items
|
||||
// contents will be items flushed by the disposal
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 97 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 5.2 KiB |
@@ -4514,7 +4514,7 @@
|
||||
"bIP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
|
||||
"bIQ" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
|
||||
"bIR" = (/obj/machinery/atmospherics/valve,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
|
||||
"bIS" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
|
||||
"bIS" = (/obj/structure/disposalpipe/trunk,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/disposal/space,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
|
||||
"bIT" = (/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/apmaint)
|
||||
"bIU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/apmaint)
|
||||
"bIV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/apmaint)
|
||||
@@ -5013,7 +5013,7 @@
|
||||
"bSu" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator)
|
||||
"bSv" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bottle/flu_virion,/obj/item/weapon/reagent_containers/glass/bottle/cold{pixel_x = 3; pixel_y = 3},/obj/item/device/radio/intercom{pixel_x = -25},/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
"bSw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
"bSx" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
"bSx" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal/space,/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
"bSy" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/medical/virology)
|
||||
"bSz" = (/obj/machinery/door/window{dir = 1; name = "Isolation A"; req_access_txt = "39"},/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
"bSA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/virology)
|
||||
@@ -5049,7 +5049,7 @@
|
||||
"bTe" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos)
|
||||
"bTf" = (/obj/structure/grille,/turf/simulated/floor/engine/vacuum,/area/maintenance/incinerator)
|
||||
"bTg" = (/obj/machinery/atmospherics/binary/pump,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator)
|
||||
"bTh" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator)
|
||||
"bTh" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/space,/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator)
|
||||
"bTi" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/wall/r_wall,/area/medical/virology)
|
||||
"bTj" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; frequency = 1439; icon_state = "off"; id_tag = null; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/table,/obj/item/weapon/cleaner,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
"bTk" = (/obj/machinery/door/window{dir = 8; icon = 'windoor.dmi'; name = "Virology Holding Rooms"; req_access_txt = "39"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/virology)
|
||||
|
||||
Reference in New Issue
Block a user