mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-26 13:37:58 +01:00
Removes All Weapons
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
/obj/item/weapon/implant/health
|
||||
/obj/item/implant/health
|
||||
name = "health implant"
|
||||
activated = FALSE
|
||||
var/healthstring = ""
|
||||
|
||||
/obj/item/weapon/implant/health/proc/sensehealth()
|
||||
/obj/item/implant/health/proc/sensehealth()
|
||||
if(!imp_in)
|
||||
return "ERROR"
|
||||
else
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implant
|
||||
/obj/item/implant
|
||||
name = "implant"
|
||||
icon = 'icons/obj/implants.dmi'
|
||||
icon_state = "generic" //Shows up as the action button icon
|
||||
@@ -14,13 +14,13 @@
|
||||
flags = DROPDEL
|
||||
|
||||
|
||||
/obj/item/weapon/implant/proc/trigger(emote, mob/source)
|
||||
/obj/item/implant/proc/trigger(emote, mob/source)
|
||||
return
|
||||
|
||||
/obj/item/weapon/implant/proc/activate()
|
||||
/obj/item/implant/proc/activate()
|
||||
return
|
||||
|
||||
/obj/item/weapon/implant/ui_action_click()
|
||||
/obj/item/implant/ui_action_click()
|
||||
activate("action_button")
|
||||
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
//return 1 if the implant injects
|
||||
//return -1 if the implant fails to inject
|
||||
//return 0 if there is no room for implant
|
||||
/obj/item/weapon/implant/proc/implant(var/mob/source, var/mob/user)
|
||||
var/obj/item/weapon/implant/imp_e = locate(src.type) in source
|
||||
/obj/item/implant/proc/implant(var/mob/source, var/mob/user)
|
||||
var/obj/item/implant/imp_e = locate(src.type) in source
|
||||
if(!allow_multiple && imp_e && imp_e != src)
|
||||
if(imp_e.uses < initial(imp_e.uses)*2)
|
||||
if(uses == -1)
|
||||
@@ -58,7 +58,7 @@
|
||||
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/implant/proc/removed(var/mob/source)
|
||||
/obj/item/implant/proc/removed(var/mob/source)
|
||||
src.loc = null
|
||||
imp_in = null
|
||||
implanted = 0
|
||||
@@ -73,15 +73,15 @@
|
||||
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/implant/Destroy()
|
||||
/obj/item/implant/Destroy()
|
||||
if(imp_in)
|
||||
removed(imp_in)
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/item/weapon/implant/proc/get_data()
|
||||
/obj/item/implant/proc/get_data()
|
||||
return "No information available"
|
||||
|
||||
/obj/item/weapon/implant/dropped(mob/user)
|
||||
/obj/item/implant/dropped(mob/user)
|
||||
. = 1
|
||||
..()
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implant/abductor
|
||||
/obj/item/implant/abductor
|
||||
name = "recall implant"
|
||||
desc = "Returns you to the mothership."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
@@ -9,7 +9,7 @@
|
||||
var/cooldown = 30
|
||||
var/total_cooldown = 30
|
||||
|
||||
/obj/item/weapon/implant/abductor/activate()
|
||||
/obj/item/implant/abductor/activate()
|
||||
if(cooldown == total_cooldown)
|
||||
home.Retrieve(imp_in,1)
|
||||
cooldown = 0
|
||||
@@ -17,13 +17,13 @@
|
||||
else
|
||||
to_chat(imp_in, "<span class='warning'>You must wait [(total_cooldown - cooldown)*2] seconds to use [src] again!</span>")
|
||||
|
||||
/obj/item/weapon/implant/abductor/process()
|
||||
/obj/item/implant/abductor/process()
|
||||
if(cooldown < total_cooldown)
|
||||
cooldown++
|
||||
if(cooldown == total_cooldown)
|
||||
processing_objects.Remove(src)
|
||||
|
||||
/obj/item/weapon/implant/abductor/implant(mob/source, mob/user)
|
||||
/obj/item/implant/abductor/implant(mob/source, mob/user)
|
||||
if(..())
|
||||
var/obj/machinery/abductor/console/console
|
||||
if(ishuman(source))
|
||||
@@ -37,7 +37,7 @@
|
||||
home = console.pad
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/implant/abductor/proc/get_team_console(var/team)
|
||||
/obj/item/implant/abductor/proc/get_team_console(var/team)
|
||||
var/obj/machinery/abductor/console/console
|
||||
for(var/obj/machinery/abductor/console/c in abductor_equipment)
|
||||
if(c.team == team)
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/obj/item/weapon/implant/chem
|
||||
/obj/item/implant/chem
|
||||
name = "chem implant"
|
||||
desc = "Injects things."
|
||||
icon_state = "reagents"
|
||||
origin_tech = "materials=3;biotech=4"
|
||||
flags = OPENCONTAINER
|
||||
|
||||
/obj/item/weapon/implant/chem/get_data()
|
||||
/obj/item/implant/chem/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Robust Corp MJ-420 Prisoner Management Implant<BR>
|
||||
<b>Life:</b> Deactivates upon death but remains within the body.<BR>
|
||||
@@ -21,23 +21,23 @@
|
||||
<b>Integrity:</b> Implant will last so long as the subject is alive."}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/chem/New()
|
||||
/obj/item/implant/chem/New()
|
||||
..()
|
||||
create_reagents(50)
|
||||
tracked_implants += src
|
||||
|
||||
/obj/item/weapon/implant/chem/Destroy()
|
||||
/obj/item/implant/chem/Destroy()
|
||||
tracked_implants -= src
|
||||
return ..()
|
||||
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/implant/chem/trigger(emote, mob/source)
|
||||
/obj/item/implant/chem/trigger(emote, mob/source)
|
||||
if(emote == "deathgasp")
|
||||
activate(reagents.total_volume)
|
||||
|
||||
/obj/item/weapon/implant/chem/activate(cause)
|
||||
/obj/item/implant/chem/activate(cause)
|
||||
if(!cause || !imp_in) return 0
|
||||
var/mob/living/carbon/R = imp_in
|
||||
var/injectamount = null
|
||||
@@ -52,10 +52,10 @@
|
||||
qdel(src)
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/chem
|
||||
/obj/item/implantcase/chem
|
||||
name = "implant case - 'Remote Chemical'"
|
||||
desc = "A glass case containing a remote chemical implant."
|
||||
|
||||
/obj/item/weapon/implantcase/chem/New()
|
||||
imp = new /obj/item/weapon/implant/chem(src)
|
||||
/obj/item/implantcase/chem/New()
|
||||
imp = new /obj/item/implant/chem(src)
|
||||
..()
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/obj/item/weapon/implant/death_alarm
|
||||
/obj/item/implant/death_alarm
|
||||
name = "death alarm implant"
|
||||
desc = "An alarm which monitors host vital signs and transmits a radio message upon death."
|
||||
var/mobname = "Will Robinson"
|
||||
activated = 0
|
||||
var/static/list/stealth_areas = typecacheof(list(/area/syndicate_station, /area/syndicate_mothership, /area/shuttle/syndicate_elite))
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/get_data()
|
||||
/obj/item/implant/death_alarm/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Nanotrasen \"Profit Margin\" Class Employee Lifesign Sensor<BR>
|
||||
<b>Life:</b> Activates upon death.<BR>
|
||||
@@ -17,11 +17,11 @@
|
||||
<b>Integrity:</b> Implant will occasionally be degraded by the body's immune system and thus will occasionally malfunction."}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/Destroy()
|
||||
/obj/item/implant/death_alarm/Destroy()
|
||||
processing_objects.Remove(src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/process()
|
||||
/obj/item/implant/death_alarm/process()
|
||||
if(!implanted)
|
||||
return
|
||||
var/mob/M = imp_in
|
||||
@@ -31,7 +31,7 @@
|
||||
else if(M.stat == DEAD)
|
||||
activate("death")
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/activate(var/cause)
|
||||
/obj/item/implant/death_alarm/activate(var/cause)
|
||||
var/mob/M = imp_in
|
||||
var/area/t = get_area(M)
|
||||
|
||||
@@ -55,17 +55,17 @@
|
||||
|
||||
qdel(a)
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/emp_act(severity) //for some reason alarms stop going off in case they are emp'd, even without this
|
||||
/obj/item/implant/death_alarm/emp_act(severity) //for some reason alarms stop going off in case they are emp'd, even without this
|
||||
activate("emp") //let's shout that this dude is dead
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/implant(mob/target)
|
||||
/obj/item/implant/death_alarm/implant(mob/target)
|
||||
if(..())
|
||||
mobname = target.real_name
|
||||
processing_objects.Add(src)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/implant/death_alarm/removed(mob/target)
|
||||
/obj/item/implant/death_alarm/removed(mob/target)
|
||||
if(..())
|
||||
processing_objects.Remove(src)
|
||||
return 1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implant/explosive
|
||||
/obj/item/implant/explosive
|
||||
name = "microbomb implant"
|
||||
desc = "And boom goes the weasel."
|
||||
icon_state = "explosive"
|
||||
@@ -8,7 +8,7 @@
|
||||
var/heavy = 0.4
|
||||
var/delay = 7
|
||||
|
||||
/obj/item/weapon/implant/explosive/get_data()
|
||||
/obj/item/implant/explosive/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Robust Corp RX-78 Employee Management Implant<BR>
|
||||
<b>Life:</b> Activates upon death.<BR>
|
||||
@@ -20,11 +20,11 @@
|
||||
"}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/explosive/trigger(emote, mob/source)
|
||||
/obj/item/implant/explosive/trigger(emote, mob/source)
|
||||
if(emote == "deathgasp")
|
||||
activate("death")
|
||||
|
||||
/obj/item/weapon/implant/explosive/activate(cause)
|
||||
/obj/item/implant/explosive/activate(cause)
|
||||
if(!cause || !imp_in) return 0
|
||||
if(cause == "action_button" && alert(imp_in, "Are you sure you want to activate your microbomb implant? This will cause you to explode!", "Microbomb Implant Confirmation", "Yes", "No") != "Yes")
|
||||
return 0
|
||||
@@ -41,8 +41,8 @@
|
||||
return
|
||||
timed_explosion()
|
||||
|
||||
/obj/item/weapon/implant/explosive/implant(mob/source)
|
||||
var/obj/item/weapon/implant/explosive/imp_e = locate(src.type) in source
|
||||
/obj/item/implant/explosive/implant(mob/source)
|
||||
var/obj/item/implant/explosive/imp_e = locate(src.type) in source
|
||||
if(imp_e && imp_e != src)
|
||||
imp_e.heavy += heavy
|
||||
imp_e.medium += medium
|
||||
@@ -53,7 +53,7 @@
|
||||
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/implant/explosive/proc/timed_explosion()
|
||||
/obj/item/implant/explosive/proc/timed_explosion()
|
||||
imp_in.visible_message("<span class = 'warning'>[imp_in] starts beeping ominously!</span>")
|
||||
playsound(loc, 'sound/items/timer.ogg', 30, 0)
|
||||
sleep(delay/4)
|
||||
@@ -71,7 +71,7 @@
|
||||
imp_in.gib()
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/implant/explosive/macro
|
||||
/obj/item/implant/explosive/macro
|
||||
name = "macrobomb implant"
|
||||
desc = "And boom goes the weasel. And everything else nearby."
|
||||
icon_state = "explosive"
|
||||
@@ -81,18 +81,18 @@
|
||||
heavy = 4
|
||||
delay = 70
|
||||
|
||||
/obj/item/weapon/implant/explosive/macro/activate(cause)
|
||||
/obj/item/implant/explosive/macro/activate(cause)
|
||||
if(!cause || !imp_in) return 0
|
||||
if(cause == "action_button" && alert(imp_in, "Are you sure you want to activate your macrobomb implant? This will cause you to explode and gib!", "Macrobomb Implant Confirmation", "Yes", "No") != "Yes")
|
||||
return 0
|
||||
to_chat(imp_in, "<span class='notice'>You activate your macrobomb implant.</span>")
|
||||
timed_explosion()
|
||||
|
||||
/obj/item/weapon/implant/explosive/macro/implant(mob/source)
|
||||
var/obj/item/weapon/implant/explosive/imp_e = locate(src.type) in source
|
||||
/obj/item/implant/explosive/macro/implant(mob/source)
|
||||
var/obj/item/implant/explosive/imp_e = locate(src.type) in source
|
||||
if(imp_e && imp_e != src)
|
||||
return 0
|
||||
imp_e = locate(/obj/item/weapon/implant/explosive) in source
|
||||
imp_e = locate(/obj/item/implant/explosive) in source
|
||||
if(imp_e && imp_e != src)
|
||||
heavy += imp_e.heavy
|
||||
medium += imp_e.medium
|
||||
@@ -103,40 +103,40 @@
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/explosive
|
||||
/obj/item/implanter/explosive
|
||||
name = "implanter (explosive)"
|
||||
|
||||
/obj/item/weapon/implanter/explosive/New()
|
||||
imp = new /obj/item/weapon/implant/explosive(src)
|
||||
/obj/item/implanter/explosive/New()
|
||||
imp = new /obj/item/implant/explosive(src)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/explosive
|
||||
/obj/item/implantcase/explosive
|
||||
name = "implant case - 'Explosive'"
|
||||
desc = "A glass case containing an explosive implant."
|
||||
|
||||
/obj/item/weapon/implantcase/explosive/New()
|
||||
imp = new /obj/item/weapon/implant/explosive(src)
|
||||
/obj/item/implantcase/explosive/New()
|
||||
imp = new /obj/item/implant/explosive(src)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/explosive_macro
|
||||
/obj/item/implanter/explosive_macro
|
||||
name = "implanter (macro-explosive)"
|
||||
|
||||
/obj/item/weapon/implanter/explosive_macro/New()
|
||||
imp = new /obj/item/weapon/implant/explosive/macro(src)
|
||||
/obj/item/implanter/explosive_macro/New()
|
||||
imp = new /obj/item/implant/explosive/macro(src)
|
||||
..()
|
||||
|
||||
|
||||
// Dust implant, for CC officers. Prevents gear theft if they die.
|
||||
|
||||
/obj/item/weapon/implant/dust
|
||||
/obj/item/implant/dust
|
||||
name = "duster implant"
|
||||
desc = "An alarm which monitors host vital signs, transmitting a radio message and dusting the corpse on death."
|
||||
icon = 'icons/effects/blood.dmi'
|
||||
icon_state = "remains"
|
||||
|
||||
/obj/item/weapon/implant/dust/get_data()
|
||||
/obj/item/implant/dust/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Ultraviolet Corp XX-13 Security Implant<BR>
|
||||
<b>Life:</b> Activates upon death.<BR>
|
||||
@@ -148,11 +148,11 @@
|
||||
"}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/dust/trigger(emote, mob/source)
|
||||
/obj/item/implant/dust/trigger(emote, mob/source)
|
||||
if(emote == "deathgasp")
|
||||
activate("death")
|
||||
|
||||
/obj/item/weapon/implant/dust/activate(cause)
|
||||
/obj/item/implant/dust/activate(cause)
|
||||
if(!cause || !imp_in || cause == "emp")
|
||||
return 0
|
||||
if(cause == "action_button" && alert(imp_in, "Are you sure you want to activate your dusting implant? This will turn you to ash!", "Dusting Confirmation", "Yes", "No") != "Yes")
|
||||
@@ -166,12 +166,12 @@
|
||||
qdel(I)
|
||||
imp_in.dust()
|
||||
|
||||
/obj/item/weapon/implant/dust/emp_act(severity)
|
||||
/obj/item/implant/dust/emp_act(severity)
|
||||
return
|
||||
|
||||
/obj/item/weapon/implanter/dust
|
||||
/obj/item/implanter/dust
|
||||
name = "implanter (Dust-on-death)"
|
||||
|
||||
/obj/item/weapon/implanter/dust/New()
|
||||
imp = new /obj/item/weapon/implant/dust(src)
|
||||
/obj/item/implanter/dust/New()
|
||||
imp = new /obj/item/implant/dust(src)
|
||||
..()
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implant/freedom
|
||||
/obj/item/implant/freedom
|
||||
name = "freedom implant"
|
||||
desc = "Use this to escape from those evil Red Shirts."
|
||||
icon_state = "freedom"
|
||||
@@ -7,7 +7,7 @@
|
||||
uses = 4
|
||||
|
||||
|
||||
/obj/item/weapon/implant/freedom/activate()
|
||||
/obj/item/implant/freedom/activate()
|
||||
uses--
|
||||
to_chat(imp_in, "You feel a faint click.")
|
||||
if(iscarbon(imp_in))
|
||||
@@ -17,7 +17,7 @@
|
||||
qdel(src)
|
||||
|
||||
|
||||
/obj/item/weapon/implant/freedom/get_data()
|
||||
/obj/item/implant/freedom/get_data()
|
||||
var/dat = {"
|
||||
<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Freedom Beacon<BR>
|
||||
@@ -34,18 +34,18 @@ No Implant Specifics"}
|
||||
return dat
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/freedom
|
||||
/obj/item/implanter/freedom
|
||||
name = "implanter (freedom)"
|
||||
|
||||
/obj/item/weapon/implanter/freedom/New()
|
||||
imp = new /obj/item/weapon/implant/freedom(src)
|
||||
/obj/item/implanter/freedom/New()
|
||||
imp = new /obj/item/implant/freedom(src)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/freedom
|
||||
/obj/item/implantcase/freedom
|
||||
name = "implant case - 'Freedom'"
|
||||
desc = "A glass case containing a freedom implant."
|
||||
|
||||
/obj/item/weapon/implantcase/freedom/New()
|
||||
imp = new /obj/item/weapon/implant/freedom(src)
|
||||
/obj/item/implantcase/freedom/New()
|
||||
imp = new /obj/item/implant/freedom(src)
|
||||
..()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implant/krav_maga
|
||||
/obj/item/implant/krav_maga
|
||||
name = "krav maga implant"
|
||||
desc = "Teaches you the arts of Krav Maga in 5 short instructional videos beamed directly into your eyeballs."
|
||||
icon = 'icons/obj/wizard.dmi'
|
||||
@@ -7,7 +7,7 @@
|
||||
origin_tech = "materials=2;biotech=4;combat=5;syndicate=4"
|
||||
var/datum/martial_art/krav_maga/style = new
|
||||
|
||||
/obj/item/weapon/implant/krav_maga/get_data()
|
||||
/obj/item/implant/krav_maga/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Krav Maga Implant<BR>
|
||||
<b>Life:</b> 4 hours after death of host<BR>
|
||||
@@ -15,7 +15,7 @@
|
||||
<b>Function:</b> Teaches even the clumsiest host the arts of Krav Maga."}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/krav_maga/activate()
|
||||
/obj/item/implant/krav_maga/activate()
|
||||
var/mob/living/carbon/human/H = imp_in
|
||||
if(!ishuman(H))
|
||||
return
|
||||
@@ -24,17 +24,17 @@
|
||||
else
|
||||
style.teach(H,1)
|
||||
|
||||
/obj/item/weapon/implanter/krav_maga
|
||||
/obj/item/implanter/krav_maga
|
||||
name = "implanter (krav maga)"
|
||||
|
||||
/obj/item/weapon/implanter/krav_maga/New()
|
||||
imp = new /obj/item/weapon/implant/krav_maga(src)
|
||||
/obj/item/implanter/krav_maga/New()
|
||||
imp = new /obj/item/implant/krav_maga(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/implantcase/krav_maga
|
||||
/obj/item/implantcase/krav_maga
|
||||
name = "implant case - 'Krav Maga'"
|
||||
desc = "A glass case containing an implant that can teach the user the art of Krav Maga."
|
||||
|
||||
/obj/item/weapon/implantcase/krav_maga/New()
|
||||
imp = new /obj/item/weapon/implant/krav_maga(src)
|
||||
/obj/item/implantcase/krav_maga/New()
|
||||
imp = new /obj/item/implant/krav_maga(src)
|
||||
..()
|
||||
@@ -1,10 +1,10 @@
|
||||
/obj/item/weapon/implant/mindshield
|
||||
/obj/item/implant/mindshield
|
||||
name = "mindshield implant"
|
||||
desc = "Stops people messing with your mind."
|
||||
origin_tech = "materials=2;biotech=4;programming=4"
|
||||
activated = 0
|
||||
|
||||
/obj/item/weapon/implant/mindshield/get_data()
|
||||
/obj/item/implant/mindshield/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Nanotrasen Employee Management Implant<BR>
|
||||
<b>Life:</b> Ten years.<BR>
|
||||
@@ -17,7 +17,7 @@
|
||||
return dat
|
||||
|
||||
|
||||
/obj/item/weapon/implant/mindshield/implant(mob/target)
|
||||
/obj/item/implant/mindshield/implant(mob/target)
|
||||
if(..())
|
||||
if(target.mind in ticker.mode.head_revolutionaries || is_shadow_or_thrall(target))
|
||||
target.visible_message("<span class='warning'>[target] seems to resist the implant!</span>", "<span class='warning'>You feel the corporate tendrils of Nanotrasen try to invade your mind!</span>")
|
||||
@@ -33,7 +33,7 @@
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/implant/mindshield/removed(mob/target, var/silent = 0)
|
||||
/obj/item/implant/mindshield/removed(mob/target, var/silent = 0)
|
||||
if(..())
|
||||
if(target.stat != DEAD && !silent)
|
||||
to_chat(target, "<span class='boldnotice'>You feel a sense of liberation as Nanotrasen's grip on your mind fades away.</span>")
|
||||
@@ -41,19 +41,19 @@
|
||||
return 0
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/mindshield
|
||||
/obj/item/implanter/mindshield
|
||||
name = "implanter (mindshield)"
|
||||
|
||||
/obj/item/weapon/implanter/mindshield/New()
|
||||
imp = new /obj/item/weapon/implant/mindshield(src)
|
||||
/obj/item/implanter/mindshield/New()
|
||||
imp = new /obj/item/implant/mindshield(src)
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/mindshield
|
||||
/obj/item/implantcase/mindshield
|
||||
name = "implant case - 'mindshield'"
|
||||
desc = "A glass case containing a mindshield implant."
|
||||
|
||||
/obj/item/weapon/implantcase/mindshield/New()
|
||||
imp = new /obj/item/weapon/implant/mindshield(src)
|
||||
/obj/item/implantcase/mindshield/New()
|
||||
imp = new /obj/item/implant/mindshield(src)
|
||||
..()
|
||||
@@ -1,11 +1,11 @@
|
||||
/obj/item/weapon/implant/weapons_auth
|
||||
/obj/item/implant/weapons_auth
|
||||
name = "firearms authentication implant"
|
||||
desc = "Lets you shoot your guns"
|
||||
icon_state = "auth"
|
||||
origin_tech = "magnets=2;programming=7;biotech=5;syndicate=5"
|
||||
activated = 0
|
||||
|
||||
/obj/item/weapon/implant/weapons_auth/get_data()
|
||||
/obj/item/implant/weapons_auth/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Firearms Authentication Implant<BR>
|
||||
<b>Life:</b> 4 hours after death of host<BR>
|
||||
@@ -14,14 +14,14 @@
|
||||
return dat
|
||||
|
||||
|
||||
/obj/item/weapon/implant/adrenalin
|
||||
/obj/item/implant/adrenalin
|
||||
name = "adrenal implant"
|
||||
desc = "Removes all stuns and knockdowns."
|
||||
icon_state = "adrenal"
|
||||
origin_tech = "materials=2;biotech=4;combat=3;syndicate=4"
|
||||
uses = 3
|
||||
|
||||
/obj/item/weapon/implant/adrenalin/get_data()
|
||||
/obj/item/implant/adrenalin/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Cybersun Industries Adrenaline Implant<BR>
|
||||
<b>Life:</b> Five days.<BR>
|
||||
@@ -32,7 +32,7 @@
|
||||
<b>Integrity:</b> Implant can only be used three times before reserves are depleted."}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/adrenalin/activate()
|
||||
/obj/item/implant/adrenalin/activate()
|
||||
uses--
|
||||
to_chat(imp_in, "<span class='notice'>You feel a sudden surge of energy!</span>")
|
||||
imp_in.SetStunned(0)
|
||||
@@ -49,20 +49,20 @@
|
||||
qdel(src)
|
||||
|
||||
|
||||
/obj/item/weapon/implant/emp
|
||||
/obj/item/implant/emp
|
||||
name = "emp implant"
|
||||
desc = "Triggers an EMP."
|
||||
icon_state = "emp"
|
||||
origin_tech = "biotech=3;magnets=4;syndicate=1"
|
||||
uses = 2
|
||||
|
||||
/obj/item/weapon/implant/emp/activate()
|
||||
/obj/item/implant/emp/activate()
|
||||
uses--
|
||||
empulse(imp_in, 3, 5)
|
||||
if(!uses)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/implant/cortical
|
||||
/obj/item/implant/cortical
|
||||
name = "cortical stack"
|
||||
desc = "A fist-sized mass of biocircuits and chips."
|
||||
icon_state = "implant_evil"
|
||||
|
||||
@@ -1,29 +1,29 @@
|
||||
/obj/item/weapon/storage/hidden/implant
|
||||
/obj/item/storage/hidden/implant
|
||||
name = "bluespace pocket"
|
||||
storage_slots = 2
|
||||
max_w_class = WEIGHT_CLASS_NORMAL
|
||||
max_combined_w_class = WEIGHT_CLASS_GIGANTIC
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
cant_hold = list(/obj/item/weapon/disk/nuclear)
|
||||
cant_hold = list(/obj/item/disk/nuclear)
|
||||
silent = 1
|
||||
|
||||
|
||||
/obj/item/weapon/implant/storage
|
||||
/obj/item/implant/storage
|
||||
name = "storage implant"
|
||||
desc = "Stores up to two big items in a bluespace pocket."
|
||||
icon_state = "storage"
|
||||
origin_tech = "materials=2;magnets=4;bluespace=5;syndicate=4"
|
||||
item_color = "r"
|
||||
var/obj/item/weapon/storage/hidden/implant/storage
|
||||
var/obj/item/storage/hidden/implant/storage
|
||||
|
||||
/obj/item/weapon/implant/storage/New()
|
||||
/obj/item/implant/storage/New()
|
||||
..()
|
||||
storage = new /obj/item/weapon/storage/hidden/implant(src)
|
||||
storage = new /obj/item/storage/hidden/implant(src)
|
||||
|
||||
/obj/item/weapon/implant/storage/activate()
|
||||
/obj/item/implant/storage/activate()
|
||||
storage.MouseDrop(imp_in)
|
||||
|
||||
/obj/item/weapon/implant/storage/removed(source)
|
||||
/obj/item/implant/storage/removed(source)
|
||||
if(..())
|
||||
for(var/mob/M in range(1))
|
||||
if(M.s_active == storage)
|
||||
@@ -32,8 +32,8 @@
|
||||
storage.remove_from_storage(I, get_turf(source))
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/implant/storage/implant(mob/source)
|
||||
var/obj/item/weapon/implant/storage/imp_e = locate(src.type) in source
|
||||
/obj/item/implant/storage/implant(mob/source)
|
||||
var/obj/item/implant/storage/imp_e = locate(src.type) in source
|
||||
if(imp_e)
|
||||
imp_e.storage.storage_slots += storage.storage_slots
|
||||
imp_e.storage.max_combined_w_class += storage.max_combined_w_class
|
||||
@@ -49,13 +49,13 @@
|
||||
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/implant/storage/proc/get_contents() //Used for swiftly returning a list of the implant's contents i.e. for checking a theft objective's completion.
|
||||
/obj/item/implant/storage/proc/get_contents() //Used for swiftly returning a list of the implant's contents i.e. for checking a theft objective's completion.
|
||||
if(storage && storage.contents)
|
||||
return storage.contents
|
||||
|
||||
/obj/item/weapon/implanter/storage
|
||||
/obj/item/implanter/storage
|
||||
name = "implanter (storage)"
|
||||
|
||||
/obj/item/weapon/implanter/storage/New()
|
||||
imp = new /obj/item/weapon/implant/storage(src)
|
||||
/obj/item/implanter/storage/New()
|
||||
imp = new /obj/item/implant/storage(src)
|
||||
..()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implant/tracking
|
||||
/obj/item/implant/tracking
|
||||
name = "tracking implant"
|
||||
desc = "Track with this."
|
||||
activated = 0
|
||||
@@ -6,15 +6,15 @@
|
||||
var/id = 1
|
||||
|
||||
|
||||
/obj/item/weapon/implant/tracking/New()
|
||||
/obj/item/implant/tracking/New()
|
||||
..()
|
||||
tracked_implants += src
|
||||
|
||||
/obj/item/weapon/implant/tracking/Destroy()
|
||||
/obj/item/implant/tracking/Destroy()
|
||||
tracked_implants -= src
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/implant/tracking/get_data()
|
||||
/obj/item/implant/tracking/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Tracking Beacon<BR>
|
||||
<b>Life:</b> 10 minutes after death of host<BR>
|
||||
@@ -31,10 +31,10 @@
|
||||
Implant Specifics:<BR>"}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implantcase/track
|
||||
/obj/item/implantcase/track
|
||||
name = "implant case - 'Tracking'"
|
||||
desc = "A glass case containing a tracking implant."
|
||||
|
||||
/obj/item/weapon/implantcase/track/New()
|
||||
imp = new /obj/item/weapon/implant/tracking(src)
|
||||
/obj/item/implantcase/track/New()
|
||||
imp = new /obj/item/implant/tracking(src)
|
||||
..()
|
||||
@@ -1,10 +1,10 @@
|
||||
/obj/item/weapon/implant/traitor
|
||||
/obj/item/implant/traitor
|
||||
name = "Mindslave Implant"
|
||||
desc = "Divide and Conquer"
|
||||
origin_tech = "programming=5;biotech=5;syndicate=8"
|
||||
activated = 0
|
||||
|
||||
/obj/item/weapon/implant/traitor/get_data()
|
||||
/obj/item/implant/traitor/get_data()
|
||||
var/dat = {"<b>Implant Specifications:</b><BR>
|
||||
<b>Name:</b> Mind-Slave Implant<BR>
|
||||
<b>Life:</b> ??? <BR>
|
||||
@@ -16,7 +16,7 @@
|
||||
<b>Integrity:</b> Implant will last so long as the nanobots are inside the bloodstream."}
|
||||
return dat
|
||||
|
||||
/obj/item/weapon/implant/traitor/implant(mob/M, mob/user)
|
||||
/obj/item/implant/traitor/implant(mob/M, mob/user)
|
||||
if(!activated) //So you can't just keep taking it out and putting it back into other people.
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(ismindslave(H))
|
||||
@@ -81,7 +81,7 @@
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/implant/traitor/removed(mob/target)
|
||||
/obj/item/implant/traitor/removed(mob/target)
|
||||
if(..())
|
||||
ticker.mode.remove_traitor_mind(target.mind)
|
||||
return 1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implantcase
|
||||
/obj/item/implantcase
|
||||
name = "implant case"
|
||||
desc = "A glass case containing an implant."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
@@ -9,10 +9,10 @@
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
origin_tech = "materials=1;biotech=2"
|
||||
materials = list(MAT_GLASS=500)
|
||||
var/obj/item/weapon/implant/imp = null
|
||||
var/obj/item/implant/imp = null
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/update_icon()
|
||||
/obj/item/implantcase/update_icon()
|
||||
if(imp)
|
||||
icon_state = "implantcase-[imp.item_color]"
|
||||
origin_tech = imp.origin_tech
|
||||
@@ -25,9 +25,9 @@
|
||||
reagents = null
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/attackby(obj/item/weapon/W, mob/user, params)
|
||||
/obj/item/implantcase/attackby(obj/item/W, mob/user, params)
|
||||
..()
|
||||
if(istype(W, /obj/item/weapon/pen))
|
||||
if(istype(W, /obj/item/pen))
|
||||
var/t = stripped_input(user, "What would you like the label to be?", name, null)
|
||||
if(user.get_active_hand() != W)
|
||||
return
|
||||
@@ -37,8 +37,8 @@
|
||||
name = "implant case - '[t]'"
|
||||
else
|
||||
name = "implant case"
|
||||
else if(istype(W, /obj/item/weapon/implanter))
|
||||
var/obj/item/weapon/implanter/I = W
|
||||
else if(istype(W, /obj/item/implanter))
|
||||
var/obj/item/implanter/I = W
|
||||
if(I.imp)
|
||||
if(imp || I.imp.implanted)
|
||||
return
|
||||
@@ -62,40 +62,40 @@
|
||||
if(I.implanter)
|
||||
src.attackby(I.implanter, user, params) */ // COMING SOON -- c0
|
||||
|
||||
/obj/item/weapon/implantcase/New()
|
||||
/obj/item/implantcase/New()
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/tracking
|
||||
/obj/item/implantcase/tracking
|
||||
name = "implant case - 'Tracking'"
|
||||
desc = "A glass case containing a tracking implant."
|
||||
|
||||
/obj/item/weapon/implantcase/tracking/New()
|
||||
imp = new /obj/item/weapon/implant/tracking(src)
|
||||
/obj/item/implantcase/tracking/New()
|
||||
imp = new /obj/item/implant/tracking(src)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/implantcase/weapons_auth
|
||||
/obj/item/implantcase/weapons_auth
|
||||
name = "implant case - 'Firearms Authentication'"
|
||||
desc = "A glass case containing a firearms authentication implant."
|
||||
|
||||
/obj/item/weapon/implantcase/weapons_auth/New()
|
||||
imp = new /obj/item/weapon/implant/weapons_auth(src)
|
||||
/obj/item/implantcase/weapons_auth/New()
|
||||
imp = new /obj/item/implant/weapons_auth(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/implantcase/adrenaline
|
||||
/obj/item/implantcase/adrenaline
|
||||
name = "implant case - 'Adrenaline'"
|
||||
desc = "A glass case containing an adrenaline implant."
|
||||
|
||||
/obj/item/weapon/implantcase/adrenaline/New()
|
||||
imp = new /obj/item/weapon/implant/adrenalin(src)
|
||||
/obj/item/implantcase/adrenaline/New()
|
||||
imp = new /obj/item/implant/adrenalin(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/implantcase/death_alarm
|
||||
/obj/item/implantcase/death_alarm
|
||||
name = "Glass Case- 'Death Alarm'"
|
||||
desc = "A case containing a death alarm implant."
|
||||
|
||||
/obj/item/weapon/implantcase/death_alarm/New()
|
||||
imp = new /obj/item/weapon/implant/death_alarm(src)
|
||||
/obj/item/implantcase/death_alarm/New()
|
||||
imp = new /obj/item/implant/death_alarm(src)
|
||||
..()
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
var/ready = 1
|
||||
var/malfunction = 0
|
||||
var/list/obj/item/weapon/implant/mindshield/implant_list = list()
|
||||
var/list/obj/item/implant/mindshield/implant_list = list()
|
||||
var/max_implants = 5
|
||||
var/injection_cooldown = 600
|
||||
var/replenish_cooldown = 6000
|
||||
@@ -72,9 +72,9 @@
|
||||
return
|
||||
|
||||
|
||||
/obj/machinery/implantchair/attackby(obj/item/weapon/W, mob/user, params)
|
||||
if(istype(W, /obj/item/weapon/grab))
|
||||
var/obj/item/weapon/grab/G = W
|
||||
/obj/machinery/implantchair/attackby(obj/item/W, mob/user, params)
|
||||
if(istype(W, /obj/item/grab))
|
||||
var/obj/item/grab/G = W
|
||||
if(!ismob(G.affecting))
|
||||
return
|
||||
var/mob/M = G.affecting
|
||||
@@ -120,9 +120,9 @@
|
||||
if(!istype(M, /mob/living/carbon))
|
||||
return
|
||||
if(!implant_list.len) return
|
||||
for(var/obj/item/weapon/implant/mindshield/imp in implant_list)
|
||||
for(var/obj/item/implant/mindshield/imp in implant_list)
|
||||
if(!imp) continue
|
||||
if(istype(imp, /obj/item/weapon/implant/mindshield))
|
||||
if(istype(imp, /obj/item/implant/mindshield))
|
||||
M.visible_message("<span class='warning'>[M] has been implanted by the [src.name].</span>")
|
||||
|
||||
if(imp.implant(M))
|
||||
@@ -133,7 +133,7 @@
|
||||
|
||||
/obj/machinery/implantchair/add_implants()
|
||||
for(var/i=0, i<src.max_implants, i++)
|
||||
var/obj/item/weapon/implant/mindshield/I = new /obj/item/weapon/implant/mindshield(src)
|
||||
var/obj/item/implant/mindshield/I = new /obj/item/implant/mindshield(src)
|
||||
implant_list += I
|
||||
return
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implanter
|
||||
/obj/item/implanter
|
||||
name = "implanter"
|
||||
desc = "A sterile automatic implant injector."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
@@ -10,10 +10,10 @@
|
||||
origin_tech = "materials=2;biotech=3"
|
||||
materials = list(MAT_METAL=600, MAT_GLASS=200)
|
||||
toolspeed = 1
|
||||
var/obj/item/weapon/implant/imp = null
|
||||
var/obj/item/implant/imp = null
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/update_icon()
|
||||
/obj/item/implanter/update_icon()
|
||||
if(imp)
|
||||
icon_state = "implanter1"
|
||||
origin_tech = imp.origin_tech
|
||||
@@ -22,7 +22,7 @@
|
||||
origin_tech = initial(origin_tech)
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/attack(mob/living/carbon/M, mob/user)
|
||||
/obj/item/implanter/attack(mob/living/carbon/M, mob/user)
|
||||
if(!iscarbon(M))
|
||||
return
|
||||
if(user && imp)
|
||||
@@ -40,9 +40,9 @@
|
||||
imp = null
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/implanter/attackby(obj/item/weapon/W, mob/user, params)
|
||||
/obj/item/implanter/attackby(obj/item/W, mob/user, params)
|
||||
..()
|
||||
if(istype(W, /obj/item/weapon/pen))
|
||||
if(istype(W, /obj/item/pen))
|
||||
var/t = stripped_input(user, "What would you like the label to be?", name, null)
|
||||
if(user.get_active_hand() != W)
|
||||
return
|
||||
@@ -53,37 +53,37 @@
|
||||
else
|
||||
name = "implanter"
|
||||
|
||||
/obj/item/weapon/implanter/New()
|
||||
/obj/item/implanter/New()
|
||||
..()
|
||||
spawn(1)
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/adrenalin
|
||||
/obj/item/implanter/adrenalin
|
||||
name = "implanter (adrenalin)"
|
||||
|
||||
/obj/item/weapon/implanter/adrenalin/New()
|
||||
imp = new /obj/item/weapon/implant/adrenalin(src)
|
||||
/obj/item/implanter/adrenalin/New()
|
||||
imp = new /obj/item/implant/adrenalin(src)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/emp
|
||||
/obj/item/implanter/emp
|
||||
name = "implanter (EMP)"
|
||||
|
||||
/obj/item/weapon/implanter/emp/New()
|
||||
imp = new /obj/item/weapon/implant/emp(src)
|
||||
/obj/item/implanter/emp/New()
|
||||
imp = new /obj/item/implant/emp(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/implanter/traitor
|
||||
/obj/item/implanter/traitor
|
||||
name = "implanter (Mindslave)"
|
||||
|
||||
/obj/item/weapon/implanter/traitor/New()
|
||||
imp = new /obj/item/weapon/implant/traitor(src)
|
||||
/obj/item/implanter/traitor/New()
|
||||
imp = new /obj/item/implant/traitor(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/implanter/death_alarm
|
||||
/obj/item/implanter/death_alarm
|
||||
name = "implanter (Death Alarm)"
|
||||
|
||||
/obj/item/weapon/implanter/death_alarm/New()
|
||||
imp = new /obj/item/weapon/implant/death_alarm(src)
|
||||
/obj/item/implanter/death_alarm/New()
|
||||
imp = new /obj/item/implant/death_alarm(src)
|
||||
..()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/item/weapon/implantpad
|
||||
/obj/item/implantpad
|
||||
name = "implantpad"
|
||||
desc = "Used to modify implants."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
@@ -7,21 +7,21 @@
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
var/obj/item/weapon/implantcase/case = null
|
||||
var/obj/item/implantcase/case = null
|
||||
|
||||
/obj/item/weapon/implantpad/Destroy()
|
||||
/obj/item/implantpad/Destroy()
|
||||
if(case)
|
||||
dropcase()
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/implantpad/update_icon()
|
||||
/obj/item/implantpad/update_icon()
|
||||
if(case)
|
||||
src.icon_state = "implantpad-1"
|
||||
else
|
||||
src.icon_state = "implantpad-0"
|
||||
return
|
||||
|
||||
/obj/item/weapon/implantpad/proc/addcase(mob/user as mob, obj/item/weapon/implantcase/C as obj)
|
||||
/obj/item/implantpad/proc/addcase(mob/user as mob, obj/item/implantcase/C as obj)
|
||||
if(!user || !C)
|
||||
return
|
||||
if(case)
|
||||
@@ -32,7 +32,7 @@
|
||||
case = C
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/implantpad/proc/dropcase(mob/user as mob)
|
||||
/obj/item/implantpad/proc/dropcase(mob/user as mob)
|
||||
if(!case)
|
||||
to_chat(user, "<span class='warning'>There's no implant in the pad!</span>")
|
||||
return
|
||||
@@ -48,7 +48,7 @@
|
||||
case = null
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/implantpad/verb/remove_implant()
|
||||
/obj/item/implantpad/verb/remove_implant()
|
||||
set category = "Object"
|
||||
set name = "Remove Implant"
|
||||
set src in usr
|
||||
@@ -58,23 +58,23 @@
|
||||
|
||||
dropcase(usr)
|
||||
|
||||
/obj/item/weapon/implantpad/attackby(obj/item/weapon/implantcase/C as obj, mob/user as mob, params)
|
||||
if(istype(C, /obj/item/weapon/implantcase))
|
||||
/obj/item/implantpad/attackby(obj/item/implantcase/C as obj, mob/user as mob, params)
|
||||
if(istype(C, /obj/item/implantcase))
|
||||
addcase(user, C)
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/implantpad/attack_self(mob/user as mob)
|
||||
/obj/item/implantpad/attack_self(mob/user as mob)
|
||||
add_fingerprint(user)
|
||||
user.set_machine(src)
|
||||
var/dat = "<B>Implant Mini-Computer:</B><HR>"
|
||||
if(case)
|
||||
if(case.imp)
|
||||
if(istype(case.imp, /obj/item/weapon/implant))
|
||||
if(istype(case.imp, /obj/item/implant))
|
||||
dat += "<A href='byond://?src=[UID()];removecase=1'>Remove Case</A><HR>"
|
||||
dat += case.imp.get_data()
|
||||
if(istype(case.imp, /obj/item/weapon/implant/tracking))
|
||||
var/obj/item/weapon/implant/tracking/T = case.imp
|
||||
if(istype(case.imp, /obj/item/implant/tracking))
|
||||
var/obj/item/implant/tracking/T = case.imp
|
||||
dat += {"ID (1-100):
|
||||
<A href='byond://?src=[UID()];tracking_id=-10'>-</A>
|
||||
<A href='byond://?src=[UID()];tracking_id=-1'>-</A> [T.id]
|
||||
@@ -89,14 +89,14 @@
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/implantpad/Topic(href, href_list)
|
||||
/obj/item/implantpad/Topic(href, href_list)
|
||||
if(..())
|
||||
return 1
|
||||
|
||||
var/mob/living/user = usr
|
||||
if(href_list["tracking_id"])
|
||||
if(case && case.imp)
|
||||
var/obj/item/weapon/implant/tracking/T = case.imp
|
||||
var/obj/item/implant/tracking/T = case.imp
|
||||
T.id += text2num(href_list["tracking_id"])
|
||||
T.id = min(100, T.id)
|
||||
T.id = max(1, T.id)
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
/obj/item/weapon/implant/uplink
|
||||
/obj/item/implant/uplink
|
||||
name = "uplink implant"
|
||||
desc = "Summon things."
|
||||
icon = 'icons/obj/radio.dmi'
|
||||
icon_state = "radio"
|
||||
origin_tech = "materials=4;magnets=4;programming=4;biotech=4;syndicate=5;bluespace=5"
|
||||
|
||||
/obj/item/weapon/implant/uplink/New()
|
||||
/obj/item/implant/uplink/New()
|
||||
hidden_uplink = new(src)
|
||||
hidden_uplink.uses = 10
|
||||
..()
|
||||
|
||||
/obj/item/weapon/implant/uplink/implant(mob/source)
|
||||
var/obj/item/weapon/implant/imp_e = locate(src.type) in source
|
||||
/obj/item/implant/uplink/implant(mob/source)
|
||||
var/obj/item/implant/imp_e = locate(src.type) in source
|
||||
if(imp_e && imp_e != src)
|
||||
imp_e.hidden_uplink.uses += hidden_uplink.uses
|
||||
qdel(src)
|
||||
@@ -22,14 +22,14 @@
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/implant/uplink/activate()
|
||||
/obj/item/implant/uplink/activate()
|
||||
if(hidden_uplink)
|
||||
hidden_uplink.check_trigger(imp_in)
|
||||
|
||||
|
||||
/obj/item/weapon/implanter/uplink
|
||||
/obj/item/implanter/uplink
|
||||
name = "implanter (uplink)"
|
||||
|
||||
/obj/item/weapon/implanter/uplink/New()
|
||||
imp = new /obj/item/weapon/implant/uplink(src)
|
||||
/obj/item/implanter/uplink/New()
|
||||
imp = new /obj/item/implant/uplink(src)
|
||||
..()
|
||||
|
||||
Reference in New Issue
Block a user