mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-02-07 23:28:10 +00:00
- Tweaked cryo healing speed
- Added crawl-trough-vent travel time - Tweaked placement of utility belt contents window & fixed one related small bug - Added metabolization for several reagents - Other small tweaks git-svn-id: http://tgstation13.googlecode.com/svn/trunk@273 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
|
||||
level = 1
|
||||
|
||||
var/id_tag
|
||||
var/id_tag = null
|
||||
var/frequency = 1439
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
@@ -104,7 +104,10 @@
|
||||
|
||||
process()
|
||||
..()
|
||||
broadcast_status()
|
||||
if(!(stat & (NOPOWER|BROKEN)))
|
||||
broadcast_status()
|
||||
else
|
||||
return 0
|
||||
|
||||
if(!on)
|
||||
return 0
|
||||
@@ -184,7 +187,7 @@
|
||||
if(panic)
|
||||
on = 1
|
||||
scrubbing = 0
|
||||
volume_rate = 500
|
||||
volume_rate = 2000
|
||||
else
|
||||
scrubbing = 1
|
||||
volume_rate = 120
|
||||
|
||||
@@ -638,6 +638,8 @@ datum
|
||||
on_mob_life(var/mob/M)
|
||||
M:drowsyness = max(0,M:drowsyness-5)
|
||||
M.bodytemperature = max(310, M.bodytemperature-5) //310 is the normal bodytemp. 310.055
|
||||
..()
|
||||
return
|
||||
|
||||
plasma
|
||||
name = "Plasma"
|
||||
@@ -850,7 +852,7 @@ datum
|
||||
if(M:bruteloss) M:bruteloss = max(0, M:bruteloss-3)
|
||||
if(M:fireloss) M:fireloss = max(0, M:fireloss-3)
|
||||
if(M:toxloss) M:toxloss = max(0, M:toxloss-3)
|
||||
|
||||
..()
|
||||
return
|
||||
|
||||
spaceacillin
|
||||
@@ -1168,6 +1170,8 @@ datum
|
||||
M:sleeping = 0
|
||||
M.bodytemperature = min(310, M.bodytemperature+5) //Copy-paste from Coffee, derp
|
||||
M.make_jittery(5)
|
||||
..()
|
||||
return
|
||||
|
||||
|
||||
cognac
|
||||
@@ -1505,6 +1509,8 @@ datum
|
||||
if(data >= 50 && prob(33))
|
||||
if (!M.confused) M:confused = 1
|
||||
M.confused += 2
|
||||
..()
|
||||
return
|
||||
|
||||
manly_dorf
|
||||
name = "The Manly Dorf"
|
||||
@@ -1521,4 +1527,6 @@ datum
|
||||
M.stuttering += 4
|
||||
if(data >= 50 && prob(33))
|
||||
if (!M.confused) M:confused = 1
|
||||
M.confused += 3
|
||||
M.confused += 3
|
||||
..()
|
||||
return
|
||||
|
||||
@@ -42,13 +42,13 @@ obj/machinery/air_sensor
|
||||
if(output>4)
|
||||
var/total_moles = air_sample.total_moles()
|
||||
if(output&4)
|
||||
signal.data["oxygen"] = round(100*air_sample.oxygen/total_moles)
|
||||
signal.data["oxygen"] = round(100*air_sample.oxygen/total_moles,0.1)
|
||||
if(output&8)
|
||||
signal.data["toxins"] = round(100*air_sample.toxins/total_moles)
|
||||
signal.data["toxins"] = round(100*air_sample.toxins/total_moles,0.1)
|
||||
if(output&16)
|
||||
signal.data["nitrogen"] = round(100*air_sample.nitrogen/total_moles)
|
||||
signal.data["nitrogen"] = round(100*air_sample.nitrogen/total_moles,0.1)
|
||||
if(output&32)
|
||||
signal.data["carbon_dioxide"] = round(100*air_sample.carbon_dioxide/total_moles)
|
||||
signal.data["carbon_dioxide"] = round(100*air_sample.carbon_dioxide/total_moles,0.1)
|
||||
|
||||
radio_connection.post_signal(src, signal)
|
||||
|
||||
|
||||
@@ -73,9 +73,9 @@
|
||||
if(src.occupant.health <= -100)
|
||||
health_text = "<FONT color=red>Dead</FONT>"
|
||||
else if(src.occupant.health < 0)
|
||||
health_text = "<FONT color=red>[src.occupant.health]</FONT>"
|
||||
health_text = "<FONT color=red>[round(src.occupant.health,0.1)]</FONT>"
|
||||
else
|
||||
health_text = "[src.occupant.health]"
|
||||
health_text = "[round(src.occupant.health,0.1)]"
|
||||
if(air_contents.temperature > T0C)
|
||||
temp_text = "<FONT color=red>[air_contents.temperature]</FONT>"
|
||||
else if(air_contents.temperature > 225)
|
||||
@@ -90,7 +90,7 @@
|
||||
<B>Current cell temperature:</B> [temp_text]K<BR>
|
||||
<B>Cryo status:</B> [ src.on ? "<A href='?src=\ref[src];start=1'>Off</A> <B>On</B>" : "<B>Off</B> <A href='?src=\ref[src];start=1'>On</A>"]<BR>
|
||||
[beaker_text]<BR><BR>
|
||||
<B>Current occupant:</B> [src.occupant ? "<BR>Name: [src.occupant]<BR>Health: [health_text]<BR>Oxygen deprivation: [src.occupant.oxyloss]<BR>Brute damage: [src.occupant.bruteloss]<BR>Fire damage: [src.occupant.fireloss]<BR>Toxin damage: [src.occupant.toxloss]<BR>Body temperature: [src.occupant.bodytemperature]" : "<FONT color=red>None</FONT>"]<BR>
|
||||
<B>Current occupant:</B> [src.occupant ? "<BR>Name: [src.occupant]<BR>Health: [health_text]<BR>Oxygen deprivation: [round(src.occupant.oxyloss,0.1)]<BR>Brute damage: [round(src.occupant.bruteloss,0.1)]<BR>Fire damage: [round(src.occupant.fireloss,0.1)]<BR>Toxin damage: [round(src.occupant.toxloss,0.1)]<BR>Body temperature: [src.occupant.bodytemperature]" : "<FONT color=red>None</FONT>"]<BR>
|
||||
|
||||
"}
|
||||
|
||||
@@ -181,10 +181,11 @@
|
||||
if(occupant.oxyloss) occupant.oxyloss = max(0, occupant.oxyloss - 1)
|
||||
else
|
||||
occupant.oxyloss -= 1
|
||||
//severe damage should heal waaay slower without proper chemicals
|
||||
if(occupant.bodytemperature < 225)
|
||||
if(occupant.bruteloss) occupant.bruteloss = max(0, occupant.bruteloss - 1)
|
||||
if(occupant.fireloss) occupant.fireloss = max(0, occupant.fireloss - 1)
|
||||
if(occupant.toxloss) occupant.toxloss = max(0, occupant.toxloss - 1)
|
||||
if(occupant.bruteloss) occupant.bruteloss = max(0, occupant.bruteloss - min(1, 20/occupant.bruteloss))
|
||||
if(occupant.fireloss) occupant.fireloss = max(0, occupant.fireloss - min(1, 20/occupant.fireloss))
|
||||
if(occupant.toxloss) occupant.toxloss = max(0, occupant.toxloss - min(1, 20/occupant.toxloss))
|
||||
if(beaker && (next_trans == 0))
|
||||
beaker:reagents.trans_to(occupant, 1, 10)
|
||||
beaker:reagents.reaction(occupant)
|
||||
@@ -225,6 +226,7 @@
|
||||
|
||||
verb
|
||||
move_eject()
|
||||
set name = "Eject occupant"
|
||||
set src in oview(1)
|
||||
if (usr.stat != 0)
|
||||
return
|
||||
@@ -233,6 +235,7 @@
|
||||
return
|
||||
|
||||
move_inside()
|
||||
set name = "Move Inside"
|
||||
set src in oview(1)
|
||||
if (usr.stat != 0 || stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
@@ -281,4 +284,4 @@
|
||||
return
|
||||
|
||||
/datum/data/function/proc/display()
|
||||
return
|
||||
return
|
||||
|
||||
@@ -31,7 +31,8 @@
|
||||
return
|
||||
|
||||
for(var/mob/O in viewers(M, null))//echo message
|
||||
O.show_message(text("\blue [] [] to [] eyes", (O == user ? "You direct" : text("[] directs", user)), src, (M==user ? "your" : text("[]", M))),1)
|
||||
if ((O.client && !(O.blinded )))
|
||||
O.show_message("\blue [(O==user?"You direct":"[user]")] [src] to [(M==user? "your":"[M]")] eyes", 1)
|
||||
|
||||
if(istype(M, /mob/living/carbon/human) || istype(M, /mob/living/carbon/monkey))//robots and aliens are unaffected
|
||||
if(M.stat > 1 || M.sdisabilities & 1)//mob is dead or fully blind
|
||||
|
||||
@@ -65,17 +65,18 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/proc/orient2hud(mob/user as mob)
|
||||
|
||||
if (src == user.l_hand)
|
||||
src.orient_objs(3, 11, 3, 4)
|
||||
else if(src == user.r_hand)
|
||||
src.orient_objs(1, 11, 1, 4)
|
||||
else if(src == user.back)
|
||||
src.orient_objs(4, 10, 4, 3)
|
||||
else if(istype(user, /mob/living/carbon/human))//only humans have belts
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(src == H.belt)
|
||||
src.orient_objs(1, 3, 8, 3)
|
||||
else
|
||||
if (src == user.r_hand)
|
||||
src.orient_objs(1, 11, 1, 4)
|
||||
else
|
||||
if (src == user.back)
|
||||
src.orient_objs(4, 10, 4, 3)
|
||||
else
|
||||
src.orient_objs(7, 8, 10, 7)
|
||||
src.orient_objs(7, 8, 10, 7)
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
@@ -135,7 +136,7 @@
|
||||
if (M.s_active == src)
|
||||
src.close(M)
|
||||
//Foreach goto(76)
|
||||
src.orient2hud(user)
|
||||
src.orient2hud(user)
|
||||
src.add_fingerprint(user)
|
||||
return
|
||||
|
||||
|
||||
@@ -235,7 +235,8 @@ Also perhaps only queens can do that?
|
||||
var/vent_found = 0
|
||||
for(var/obj/machinery/atmospherics/unary/vent_pump/v in range(1,src))
|
||||
if(!v.welded)
|
||||
vent_found = 1
|
||||
vent_found = v
|
||||
|
||||
if(!vent_found)
|
||||
src << "You must be standing on or beside an open air vent to enter it."
|
||||
return
|
||||
@@ -260,7 +261,7 @@ Also perhaps only queens can do that?
|
||||
if(src.loc != startloc)
|
||||
src << "You need to remain still while entering a vent."
|
||||
return
|
||||
var/obj/target_vent = vents[selection_position]
|
||||
var/obj/machinery/atmospherics/unary/vent_pump/target_vent = vents[selection_position]
|
||||
if(target_vent)
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message(text("\green <B>[src] scrambles into the ventillation ducts!</B>"), 1)
|
||||
@@ -268,9 +269,24 @@ Also perhaps only queens can do that?
|
||||
for(var/obj/alien/facehugger/F in view(3, src))
|
||||
if(istype(F, /obj/alien/facehugger))
|
||||
huggers.Add(F)
|
||||
src.loc = target_vent.loc
|
||||
|
||||
src.loc = vent_found
|
||||
for(var/obj/alien/facehugger/F in huggers)
|
||||
F.loc = src.loc
|
||||
F.loc = vent_found
|
||||
var/travel_time = get_dist(src.loc, target_vent.loc)
|
||||
|
||||
spawn(round(travel_time/2))//give sound warning to anyone near the target vent
|
||||
if(!target_vent.welded)
|
||||
for(var/mob/O in hearers(target_vent, null))
|
||||
O.show_message("You hear something crawling trough the ventilation pipes.")
|
||||
|
||||
spawn(travel_time)
|
||||
if(target_vent.welded)//the went can be welded while alien scrolled through the list or travelled.
|
||||
target_vent = vent_found //travel back. No additional time required.
|
||||
src << "\red The vent you were heading to appears to be welded."
|
||||
src.loc = target_vent.loc
|
||||
for(var/obj/alien/facehugger/F in huggers)
|
||||
F.loc = src.loc
|
||||
|
||||
/mob/living/carbon/alien/humanoid/verb/corrode(obj/O as obj in view(1)) // -- TLE
|
||||
set name = "Spit Corrosive Acid (200)"
|
||||
|
||||
@@ -20,6 +20,9 @@
|
||||
p.lic {
|
||||
font-size: 6pt;
|
||||
}
|
||||
ul.sec {
|
||||
list-style: none;
|
||||
}
|
||||
</style>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>
|
||||
|
||||
@@ -41,6 +44,19 @@
|
||||
<strong>Thanks to:</strong> CDK Station devs, GoonStation devs and original SpaceStation developers
|
||||
|
||||
<h4>Changelog</h4>
|
||||
<h5>Wednesday, October 13, 14:12(GMT)</h5>
|
||||
<ul>
|
||||
<li>Crawling through vents (alien) now takes time. The farther destination vent is, the more time it takes.</li>
|
||||
<li>Cryo cell healing ability depends on wound severity. Grave wounds will heal slower. Use proper chemicals to speed up the process.</li>
|
||||
<li>Added sink to the medbay. </li>
|
||||
<li>Bugfixes:
|
||||
<ul class="sec">
|
||||
<li>- Some reagents were not metabolized, remaining in mob indefinitely (this includes Space Cola, Cryoxadone and cocktails Kahlua, Irish Cream and The Manly Dorf).</li>
|
||||
<li>- Fixed placement bug with container contents window. Also, utility belt window now doesn't obscure view.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h5>Sunday, October 10, 14:25(GMT)</h5>
|
||||
<ul>
|
||||
<li>Scrubbers in the area can be controlled by air alarms. Air alarm interface must be unlocked with an ID card (minimum access level - atmospheric technician), usable only by humans and AI. Panic syphon drains the air from affected room (simple syphoning does too, but much slower).</li>
|
||||
@@ -54,10 +70,9 @@
|
||||
<li>Air scrubber, vent and air alarm added to library</li>
|
||||
<li>Air alarm added to brig</li>
|
||||
<li>Air scrubbers in Toxins turned on, set to filter toxins</li>
|
||||
<li>Empty tanks, portable air pumps and similar can be filled with air in Aft Primary Hallway, just connect them to the port. Target pressure is set by Mixed Air Supply console in Atmospherics (defaults to 4000kPa).
|
||||
<li>Empty tanks, portable air pumps and similar can be filled with air in Aft Primary Hallway, just connect them to the port. Target pressure is set by Mixed Air Supply console in Atmospherics (defaults to 4000kPa).</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h5>Wednesday, October 6, 18:36</h5>
|
||||
<ul>
|
||||
<li>Fixed the Librarian's suit - its worn iconstate wasn't set.</li>
|
||||
|
||||
11563
maps/trunkmap.dmm
11563
maps/trunkmap.dmm
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user