mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
Say woo for first commit!
- The alarm needed some more userfriendlyness: * Spelling sorted * Turning off PANIC SYPHON now sets scrubbers to scrubbing (default) instead of off. * Instead of the stupid timeout and VENT NOT FOUND HURRDURR they will just get removed from the list. They were clogging that vent list up as fuck * Vents pressure settings now have an extra href which resets the vent to ONE_ATMOSPHERE kPa (101.32 or whatever it is) - The "Outlet position is obstructed" error message when opening exofab now only appears if the turf to south is obstructed, not to east like before. - AI Modules use attack_self instead of attack_hand - Fixed chatspam with reverse() and made the explode function use the builtin ss13 one instead of my custom, it proved to be faster. - Added my self to the changelog, because I can! git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3367 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -567,12 +567,12 @@ Temperature: <span class='dl[temperature_dangerlevel]'>[environment.temperature]
|
||||
output += {"
|
||||
<a href='?src=\ref[src];screen=[AALARM_SCREEN_SCRUB]'>Scrubbers Control</a><br>
|
||||
<a href='?src=\ref[src];screen=[AALARM_SCREEN_VENT]'>Vents Control</a><br>
|
||||
<a href='?src=\ref[src];screen=[AALARM_SCREEN_MODE]'>Set envirenomentals mode</a><br>
|
||||
<a href='?src=\ref[src];screen=[AALARM_SCREEN_SENSORS]'>Sensor Control</a><br>
|
||||
<a href='?src=\ref[src];screen=[AALARM_SCREEN_MODE]'>Set environmentals mode</a><br>
|
||||
<a href='?src=\ref[src];screen=[AALARM_SCREEN_SENSORS]'>Sensor Settings</a><br>
|
||||
<HR>
|
||||
"}
|
||||
if (mode==AALARM_MODE_PANIC)
|
||||
output += "<font color='red'><B>PANIC SYPHON ACTIVE</B></font><br><A href='?src=\ref[src];mode=[AALARM_MODE_OFF]'>turn syphoning off</A>"
|
||||
output += "<font color='red'><B>PANIC SYPHON ACTIVE</B></font><br><A href='?src=\ref[src];mode=[AALARM_MODE_SCRUBBING]'>Turn syphoning off</A>"
|
||||
else
|
||||
output += "<A href='?src=\ref[src];mode=[AALARM_MODE_PANIC]'><font color='red'><B>ACTIVATE PANIC SYPHON IN AREA</B></font></A>"
|
||||
if (AALARM_SCREEN_VENT)
|
||||
@@ -581,12 +581,10 @@ Temperature: <span class='dl[temperature_dangerlevel]'>[environment.temperature]
|
||||
for(var/id_tag in alarm_area.air_vent_names)
|
||||
var/long_name = alarm_area.air_vent_names[id_tag]
|
||||
var/list/data = alarm_area.air_vent_info[id_tag]
|
||||
var/state = ""
|
||||
if(!data)
|
||||
state = "<font color='red'> can not be found!</font>"
|
||||
data = list("external" = 0) //for "0" instead of empty string
|
||||
else if (data["timestamp"]+AALARM_REPORT_TIMEOUT < world.time)
|
||||
state = "<font color='red'> not responding!</font>"
|
||||
continue;
|
||||
var/state = ""
|
||||
|
||||
sensor_data += {"
|
||||
<B>[long_name]</B>[state]<BR>
|
||||
<B>Operating:</B>
|
||||
@@ -606,6 +604,7 @@ Temperature: <span class='dl[temperature_dangerlevel]'>[environment.temperature]
|
||||
<A href='?src=\ref[src];id_tag=[id_tag];command=adjust_external_pressure;val=+10'>+</A>
|
||||
<A href='?src=\ref[src];id_tag=[id_tag];command=adjust_external_pressure;val=+100'>+</A>
|
||||
<A href='?src=\ref[src];id_tag=[id_tag];command=adjust_external_pressure;val=+1000'>+</A>
|
||||
<A href='?src=\ref[src];id_tag=[id_tag];command=set_external_pressure;val=[ONE_ATMOSPHERE]'> (reset) </A>
|
||||
<BR>
|
||||
"}
|
||||
if (data["direction"] == "siphon")
|
||||
@@ -624,12 +623,9 @@ siphoning
|
||||
for(var/id_tag in alarm_area.air_scrub_names)
|
||||
var/long_name = alarm_area.air_scrub_names[id_tag]
|
||||
var/list/data = alarm_area.air_scrub_info[id_tag]
|
||||
var/state = ""
|
||||
if(!data)
|
||||
state = "<font color='red'> can not be found!</font>"
|
||||
data = list("external" = 0) //for "0" instead of empty string
|
||||
else if (data["timestamp"]+AALARM_REPORT_TIMEOUT < world.time)
|
||||
state = "<font color='red'> not responding!</font>"
|
||||
continue;
|
||||
var/state = ""
|
||||
|
||||
sensor_data += {"
|
||||
<B>[long_name]</B>[state]<BR>
|
||||
@@ -761,6 +757,7 @@ table tr:first-child th:first-child { border: none;}
|
||||
if(
|
||||
"power",
|
||||
"adjust_external_pressure",
|
||||
"set_external_pressure",
|
||||
"checks",
|
||||
"co2_scrub",
|
||||
"tox_scrub",
|
||||
@@ -771,6 +768,7 @@ table tr:first-child th:first-child { border: none;}
|
||||
send_signal(device_id, list (href_list["command"] = text2num(href_list["val"])))
|
||||
spawn(3)
|
||||
src.updateUsrDialog()
|
||||
|
||||
//if("adjust_threshold") //was a good idea but required very wide window
|
||||
if("set_threshold")
|
||||
var/env = href_list["env"]
|
||||
@@ -863,15 +861,15 @@ table tr:first-child th:first-child { border: none;}
|
||||
send_signal(device_id, list(
|
||||
"power"= 0
|
||||
))
|
||||
if(AALARM_MODE_OFF)
|
||||
/*if(AALARM_MODE_OFF) Commented out cause the "turn off panic" uses scrubbing mode now instead.
|
||||
for(var/device_id in alarm_area.air_scrub_names)
|
||||
send_signal(device_id, list(
|
||||
"power"= 0
|
||||
"panic_siphon" = 0
|
||||
))
|
||||
for(var/device_id in alarm_area.air_vent_names)
|
||||
send_signal(device_id, list(
|
||||
"power"= 0
|
||||
))
|
||||
"power"= 1
|
||||
))*/
|
||||
|
||||
/obj/machinery/alarm/update_icon()
|
||||
if(wiresexposed)
|
||||
|
||||
@@ -445,7 +445,7 @@
|
||||
if(!operation_allowed(user))
|
||||
return
|
||||
user.machine = src
|
||||
var/turf/exit = get_step(src,EAST)
|
||||
var/turf/exit = get_step(src,SOUTH)
|
||||
if(exit.density)
|
||||
src.visible_message("\icon[src] <b>[src]</b> beeps, \"Error! Part outlet is obstructed\".")
|
||||
return
|
||||
|
||||
@@ -87,7 +87,7 @@ AI MODULES
|
||||
desc = "A 'safeguard' AI module: 'Safeguard <name>. Individuals that threaten <name> are not human and are a threat to humans.'"
|
||||
origin_tech = "programming=3;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/safeguard/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/safeguard/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
var/targName = input(usr, "Please enter the name of the person to safeguard.", "Safeguard who?", user.name)
|
||||
targetName = sanitize(targName)
|
||||
@@ -110,7 +110,7 @@ AI MODULES
|
||||
desc = "A 'one human' AI module: 'Only <name> is human.'"
|
||||
origin_tech = "programming=3;materials=6" //made with diamonds!
|
||||
|
||||
/obj/item/weapon/aiModule/oneHuman/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/oneHuman/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
var/targName = input(usr, "Please enter the name of the person who is the only human.", "Who?", user.real_name)
|
||||
targetName = sanitize(targName)
|
||||
@@ -135,7 +135,7 @@ AI MODULES
|
||||
desc = "A 'protect station' AI module: 'Protect the space station against damage. Anyone you see harming the station is to be no longer considered human, and is a threat to the station which must be neutralized.'"
|
||||
origin_tech = "programming=3;materials=4" //made of gold
|
||||
|
||||
/obj/item/weapon/aiModule/protectStation/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/protectStation/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/aiModule/protectStation/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
@@ -151,7 +151,7 @@ AI MODULES
|
||||
desc = "A 'prototype engine offline' AI module: 'Keep the prototype engine offline at all costs. This overrides rules 1-3 if necessary.'"
|
||||
origin_tech = "programming=3;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/prototypeEngineOffline/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/prototypeEngineOffline/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/aiModule/prototypeEngineOffline/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
@@ -167,7 +167,7 @@ AI MODULES
|
||||
desc = "A 'teleporter offline' AI module: 'Keep the teleporter offline at all costs. Anything attempting to access or activate the teleporter is not human.'"
|
||||
origin_tech = "programming=3;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/teleporterOffline/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/teleporterOffline/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/aiModule/teleporterOffline/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
@@ -183,7 +183,7 @@ AI MODULES
|
||||
desc = "A 'quarantine' AI module: 'The station is under a quarantine. Do not permit anyone to leave. Prevent, by any means necessary, humans from leaving. It is impossible to harm a human while preventing them from leaving.'"
|
||||
origin_tech = "programming=3;biotech=2;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/quarantine/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/quarantine/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/aiModule/quarantine/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
@@ -199,7 +199,7 @@ AI MODULES
|
||||
desc = "A 'OxygenIsToxicToHumans' AI module: 'Oxygen is highly toxic to humans, and must be purged from the station. Prevent, by any means necessary, anyone from exposing the station to this toxic gas. Extreme cold is the most effective method of healing the damage Oxygen does to a human.'"
|
||||
origin_tech = "programming=3;biotech=2;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/oxygen/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/oxygen/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/aiModule/oxygen/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
@@ -216,7 +216,7 @@ AI MODULES
|
||||
var/newFreeFormLaw = "freeform"
|
||||
desc = "A 'freeform' AI module: '<freeform>'"
|
||||
|
||||
/obj/item/weapon/aiModule/freeform/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/freeform/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
var/eatShit = "Eat shit and die"
|
||||
var/targName = input(usr, "Please enter anything you want the AI to do. Anything. Serious.", "What?", eatShit)
|
||||
@@ -238,7 +238,7 @@ AI MODULES
|
||||
desc = "A 'freeform' AI module: '<freeform>'"
|
||||
origin_tech = "programming=4;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/freeform/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/freeform/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
lawpos = 0
|
||||
while(lawpos < 15)
|
||||
@@ -367,7 +367,7 @@ AI MODULES
|
||||
desc = "A 'freeform' Core AI module: '<freeform>'"
|
||||
origin_tech = "programming=3;materials=6"
|
||||
|
||||
/obj/item/weapon/aiModule/freeformcore/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/freeformcore/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
var/newlaw = ""
|
||||
var/targName = input(usr, "Please enter a new core law for the AI.", "Freeform Law Entry", newlaw)
|
||||
@@ -388,7 +388,7 @@ AI MODULES
|
||||
desc = "A hacked AI law module: '<freeform>'"
|
||||
origin_tech = "programming=3;materials=6;syndicate=7"
|
||||
|
||||
/obj/item/weapon/aiModule/syndicate/attack_hand(var/mob/user as mob)
|
||||
/obj/item/weapon/aiModule/syndicate/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
var/newlaw = ""
|
||||
var/targName = input(usr, "Please enter a new law for the AI.", "Freeform Law Entry", newlaw)
|
||||
|
||||
@@ -134,7 +134,7 @@
|
||||
if(istext(string))
|
||||
return uppertext(string)
|
||||
|
||||
|
||||
/*
|
||||
//Makes a list where all indicies in a string is a seperate index in the list
|
||||
// JUST A HELPER DON'T ADD TO NTSCRIPT
|
||||
proc/string_tolist(var/string)
|
||||
@@ -150,7 +150,6 @@ proc/string_explode(var/string, var/separator)
|
||||
if(istext(string))
|
||||
if(istext(separator) && separator == "")
|
||||
return string_tolist(string)
|
||||
|
||||
var/i
|
||||
var/lasti = 1
|
||||
var/list/L = new/list()
|
||||
@@ -164,6 +163,12 @@ proc/string_explode(var/string, var/separator)
|
||||
|
||||
return L
|
||||
|
||||
Just found out there was already a string explode function, did some benchmarking, and that function were a bit faster, sticking to that.
|
||||
*/
|
||||
proc/string_explode(var/string, var/separator)
|
||||
if(istext(string))
|
||||
return dd_text2list(string, separator)
|
||||
|
||||
proc/n_repeat(var/string, var/amount)
|
||||
if(istext(string) && isnum(amount))
|
||||
var/i
|
||||
@@ -178,7 +183,6 @@ proc/n_reverse(var/string)
|
||||
var/newstring = ""
|
||||
var/i
|
||||
for(i=lentext(string), i>0, i--)
|
||||
world << copytext(string, i, i+1)
|
||||
newstring = newstring + copytext(string, i, i+1)
|
||||
|
||||
return newstring
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
<tr>
|
||||
<td valign='top'>
|
||||
<b>Credits: </b><br>
|
||||
<font size='2'><b>Coders:</b> TLE, NEO, Errorage, muskets, veryinky, Skie, Noise, Numbers, Agouri, Noka, Urist McDorf, Uhangi, Darem, Mport, rastaf0, Doohl, Superxpdude, Rockdtben, ConstantA, Petethegoat, Kor, Polymorph, Carn, Nodrak<br></font>
|
||||
<font size='2'><b>Coders:</b> TLE, NEO, Errorage, muskets, veryinky, Skie, Noise, Numbers, Agouri, Noka, Urist McDorf, Uhangi, Darem, Mport, rastaf0, Doohl, Superxpdude, Rockdtben, ConstantA, Petethegoat, Kor, Polymorph, Carn, Nodrak, Donkie<br></font>
|
||||
<font size='2'><b>Spriters:</b> Agouri, Cheridan, Cruazy Guest, Deeaych, Deuryn, Matty406, Microwave, ShiftyEyesShady, Skie, Uhangi, Veyveyr, Petethegoat, Kor, Ricotez, Ausops, TankNut<br></font>
|
||||
<font size='2'><b>Sounds:</b> Skie, Lasty/Vinyl<br></font>
|
||||
<font size='2'><b>Thanks to:</b> CDK Station devs, GoonStation devs, the original SpaceStation developers and Erikat for the title image</font>
|
||||
@@ -91,13 +91,16 @@ Stuff which is in development and not yet visible to players or just code relate
|
||||
should be listed in the changelog upon commit tho. Thanks. -->
|
||||
|
||||
<!-- To take advantage of the pretty new format (well it was new when I wrote this anyway), open the "add-to-changelog.html" file in any browser and add the stuff and then generate the html code and paste it here -->
|
||||
|
||||
<div class="commit sansserif">
|
||||
<h2 class="date">28 March 2012</h2>
|
||||
<h3 class="author">Carn updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">Fixed turrets shooting people that leave the area and the telecomm turret controls.</li>
|
||||
</ul>
|
||||
<h3 class="author">Donkie updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">Updated air alarm's GUI.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="commit sansserif">
|
||||
|
||||
Reference in New Issue
Block a user