[MIRROR] [READY] RND TECHWEBS + DEPARTMENTAL LATHES (#4014)

* [READY] RND TECHWEBS + DEPARTMENTAL LATHES

* resetting all the maps because we can worry about them later.

* Regexing

* I'm fucked

* Fixes

* .

* maps

* bleh

* ree

* fixes
This commit is contained in:
CitadelStationBot
2017-12-11 18:36:38 -06:00
committed by kevinz000
parent b5600cb91c
commit cc0b768c72
332 changed files with 4962 additions and 4331 deletions
+10 -32
View File
@@ -10,7 +10,7 @@ They *could* go in their appropriate files, but this is supposed to be modular
*/
//Needs to return the amount drained from the atom, if no drain on a power object, return 0, otherwise, return a define.
//Needs to return the amount drained from the atom, if no drain on a power object, return FALSE, otherwise, return a define.
/atom/proc/ninjadrain_act()
return INVALID_DRAIN
@@ -130,26 +130,15 @@ They *could* go in their appropriate files, but this is supposed to be modular
to_chat(H, "<span class='notice'>Hacking \the [src]...</span>")
AI_notify_hack()
if(files && files.known_tech.len)
for(var/datum/tech/current_data in S.stored_research)
to_chat(H, "<span class='notice'>Checking \the [current_data.name] database.</span>")
if(do_after(H, S.s_delay, target = src) && G.candrain && src)
for(var/id in files.known_tech)
var/datum/tech/analyzing_data = files.known_tech[id]
if(current_data.id == analyzing_data.id)
if(analyzing_data.level > current_data.level)
to_chat(H, "<span class='notice'>Database:</span> <b>UPDATED</b>.")
current_data.level = analyzing_data.level
. = DRAIN_RD_HACKED
break//Move on to next.
else
break//Otherwise, quit processing.
if(stored_research)
to_chat(H, "<span class='notice'>Copying files...</span>")
if(do_after(H, S.s_delay, target = src) && G.candrain && src)
stored_research.copy_research_to(S.stored_research)
to_chat(H, "<span class='notice'>Data analyzed. Process finished.</span>")
//RD SERVER//
//Shamelessly copypasted from above, since these two used to be the same proc, but with MANY colon operators
/obj/machinery/r_n_d/server/ninjadrain_act(obj/item/clothing/suit/space/space_ninja/S, mob/living/carbon/human/H, obj/item/clothing/gloves/space_ninja/G)
/obj/machinery/rnd/server/ninjadrain_act(obj/item/clothing/suit/space/space_ninja/S, mob/living/carbon/human/H, obj/item/clothing/gloves/space_ninja/G)
if(!S || !H || !G)
return INVALID_DRAIN
@@ -158,21 +147,10 @@ They *could* go in their appropriate files, but this is supposed to be modular
to_chat(H, "<span class='notice'>Hacking \the [src]...</span>")
AI_notify_hack()
if(files && files.known_tech.len)
for(var/datum/tech/current_data in S.stored_research)
to_chat(H, "<span class='notice'>Checking \the [current_data.name] database.</span>")
if(do_after(H, S.s_delay, target = src) && G.candrain && src)
for(var/id in files.known_tech)
var/datum/tech/analyzing_data = files.known_tech[id]
if(current_data.id == analyzing_data.id)
if(analyzing_data.level > current_data.level)
to_chat(H, "<span class='notice'>Database:</span> <b>UPDATED</b>.")
current_data.level = analyzing_data.level
. = DRAIN_RD_HACKED
break//Move on to next.
else
break//Otherwise, quit processing.
if(stored_research)
to_chat(H, "<span class='notice'>Copying files...</span>")
if(do_after(H, S.s_delay, target = src) && G.candrain && src)
stored_research.copy_research_to(S.stored_research)
to_chat(H, "<span class='notice'>Data analyzed. Process finished.</span>")
+3 -5
View File
@@ -28,7 +28,7 @@ Contents:
var/mob/living/carbon/human/affecting = null
var/obj/item/stock_parts/cell/cell
var/datum/effect_system/spark_spread/spark_system
var/list/stored_research = list()//For stealing station research.
var/datum/techweb/stored_research
var/obj/item/disk/tech_disk/t_disk//To copy design onto disk.
var/obj/item/energy_katana/energyKatana //For teleporting the katana back to the ninja (It's an ability)
@@ -62,14 +62,12 @@ Contents:
..()
//Spark Init
spark_system = new()
spark_system = new
spark_system.set_up(5, 0, src)
spark_system.attach(src)
//Research Init
stored_research = new()
for(var/T in subtypesof(/datum/tech))//Store up on research.
stored_research += new T(src)
//Cell Init
cell = new/obj/item/stock_parts/cell/high
@@ -97,7 +95,7 @@ Contents:
//This proc prevents the suit from being taken off.
/obj/item/clothing/suit/space/space_ninja/proc/lock_suit(mob/living/carbon/human/H)
if(!istype(H))
return 0
return FALSE
if(!is_ninja(H))
to_chat(H, "<span class='danger'><B>fÄTaL ÈÈRRoR</B>: 382200-*#00CÖDE <B>RED</B>\nUNAU?HORIZED USÈ DETÈC???eD\nCoMMÈNCING SUB-R0U?IN3 13...\nTÈRMInATING U-U-USÈR...</span>")
H.gib()
+3 -17
View File
@@ -32,26 +32,12 @@
else if(istype(I, /obj/item/disk/tech_disk))//If it's a data disk, we want to copy the research on to the suit.
var/obj/item/disk/tech_disk/TD = I
var/has_research = FALSE
for(var/V in TD.tech_stored)
if(V)
has_research = TRUE
break
var/has_research = 0
if(has_research)//If it has something on it.
to_chat(U, "<span class='notice'>Research information detected, processing...</span>")
to_chat(U, "Research information detected, processing...")
if(do_after(U,s_delay, target = src))
for(var/V1 in 1 to TD.max_tech_stored)
var/datum/tech/new_data = TD.tech_stored[V1]
TD.tech_stored[V1] = null
if(!new_data)
continue
for(var/V2 in stored_research)
var/datum/tech/current_data = V2
if(current_data.id == new_data.id)
current_data.level = max(current_data.level, new_data.level)
break
TD.stored_research.copy_research_to(stored_research)
to_chat(U, "<span class='notice'>Data analyzed and updated. Disk erased.</span>")
else
to_chat(U, "<span class='userdanger'>ERROR</span>: Procedure interrupted. Process terminated.")
else