a bit more stuff
This commit is contained in:
@@ -1143,3 +1143,67 @@
|
||||
max_energy = 30
|
||||
recharge_rate = 1
|
||||
name = "Wrapping Paper Storage"
|
||||
|
||||
/obj/item/robot_module/syndicate/spider// used for space ninja and their cyborg hacking special objective
|
||||
basic_modules = list(
|
||||
/obj/item/assembly/flash/cyborg,
|
||||
/obj/item/extinguisher/mini,
|
||||
/obj/item/crowbar/cyborg,
|
||||
/obj/item/melee/transforming/energy/sword/cyborg,
|
||||
/obj/item/gun/energy/printer,
|
||||
/obj/item/crowbar/cyborg)
|
||||
|
||||
cyborg_base_icon = "spider_sec"
|
||||
|
||||
/obj/item/robot_module/syndicate_medical/spider// ditto
|
||||
basic_modules = list(
|
||||
/obj/item/assembly/flash/cyborg,
|
||||
/obj/item/extinguisher/mini,
|
||||
/obj/item/crowbar/cyborg,
|
||||
/obj/item/reagent_containers/borghypo/syndicate,
|
||||
/obj/item/shockpaddles/syndicate,
|
||||
/obj/item/healthanalyzer/advanced,
|
||||
/obj/item/surgical_drapes/advanced,
|
||||
/obj/item/retractor,
|
||||
/obj/item/hemostat,
|
||||
/obj/item/cautery,
|
||||
/obj/item/surgicaldrill,
|
||||
/obj/item/scalpel,
|
||||
/obj/item/bonesetter,
|
||||
/obj/item/stack/medical/bone_gel,
|
||||
/obj/item/melee/transforming/energy/sword/cyborg/saw,
|
||||
/obj/item/roller/robo,
|
||||
/obj/item/stack/medical/gauze/cyborg,
|
||||
/obj/item/gun/medbeam,
|
||||
/obj/item/organ_storage)
|
||||
|
||||
cyborg_base_icon = "spider_medical"
|
||||
|
||||
/obj/item/robot_module/saboteur/spider// ditto
|
||||
basic_modules = list(
|
||||
/obj/item/assembly/flash/cyborg,
|
||||
/obj/item/borg/sight/thermal,
|
||||
/obj/item/construction/rcd/borg/syndicate,
|
||||
/obj/item/pipe_dispenser,
|
||||
/obj/item/restraints/handcuffs/cable/zipties,
|
||||
/obj/item/extinguisher,
|
||||
/obj/item/weldingtool/largetank/cyborg,
|
||||
/obj/item/screwdriver/nuke,
|
||||
/obj/item/wrench/cyborg,
|
||||
/obj/item/crowbar/cyborg,
|
||||
/obj/item/wirecutters/cyborg,
|
||||
/obj/item/multitool/cyborg,
|
||||
/obj/item/storage/part_replacer/cyborg,
|
||||
/obj/item/holosign_creator/atmos,
|
||||
/obj/item/weapon/gripper,
|
||||
/obj/item/lightreplacer/cyborg,
|
||||
/obj/item/stack/sheet/metal/cyborg,
|
||||
/obj/item/stack/sheet/glass/cyborg,
|
||||
/obj/item/stack/sheet/rglass/cyborg,
|
||||
/obj/item/stack/rods/cyborg,
|
||||
/obj/item/stack/tile/plasteel/cyborg,
|
||||
/obj/item/destTagger/borg,
|
||||
/obj/item/stack/cable_coil/cyborg,
|
||||
/obj/item/borg_chameleon)
|
||||
|
||||
cyborg_base_icon = "spider_engi"
|
||||
|
||||
@@ -114,10 +114,8 @@
|
||||
if(msg)
|
||||
to_chat(user, "<span class='notice'>[msg]</span>")
|
||||
|
||||
|
||||
|
||||
/datum/action/innate/dash/ninja
|
||||
current_charges = 3
|
||||
max_charges = 3
|
||||
charge_rate = 100
|
||||
charge_rate = 200
|
||||
recharge_sound = null
|
||||
|
||||
@@ -31,9 +31,10 @@
|
||||
|
||||
/obj/item/grenade/plastic/c4/ninja/prime(mob/living/lanced_by)
|
||||
. = ..()
|
||||
anchored = TRUE
|
||||
//Since we already did the checks in afterattack, the denonator must be a ninja with the bomb objective.
|
||||
if(!detonator)
|
||||
return
|
||||
var/datum/antagonist/ninja/ninja_antag = detonator.mind.has_antag_datum(/datum/antagonist/ninja)
|
||||
var/datum/objective/plant_explosive/objective = locate() in ninja_antag.objectives
|
||||
objective.completed = TRUE
|
||||
objective.completed = TRUE
|
||||
@@ -29,10 +29,14 @@
|
||||
var/mindrain = 200
|
||||
///Maximum amount of power we can drain in a single drain action
|
||||
var/maxdrain = 400
|
||||
///Whether or not the security console hack was used to set everyone to arrest
|
||||
var/security_console_hack_success = FALSE
|
||||
///Whether or not the communication console hack was used to summon another antagonist
|
||||
var/communication_console_hack_success = FALSE
|
||||
///How many times the gloves have been used to force open doors.
|
||||
var/door_hack_counter = 0
|
||||
///Whether or not the cyborg hack was used to syndify a cyborg
|
||||
var/borg_hack_success = FALSE
|
||||
var/stunforce = 100
|
||||
|
||||
/obj/item/clothing/gloves/space_ninja/Touch(atom/A,proximity)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
name = "ninja hood"
|
||||
icon_state = "s-ninja"
|
||||
item_state = "s-ninja_mask"
|
||||
armor = list(MELEE = 40, BULLET = 30, LASER = 20,ENERGY = 15, BOMB = 30, BIO = 30, RAD = 25, FIRE = 100, ACID = 100)
|
||||
armor = list("melee" = 40, "bullet" = 30, "laser" = 20,"energy" = 30, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 100, "acid" = 100)
|
||||
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
||||
blockTracking = TRUE//Roughly the only unique thing about this helmet.
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
@@ -143,6 +143,8 @@
|
||||
/obj/machinery/computer/secure_data/ninjadrain_act(obj/item/clothing/suit/space/space_ninja/ninja_suit, mob/living/carbon/human/ninja, obj/item/clothing/gloves/space_ninja/ninja_gloves)
|
||||
if(!ninja_suit || !ninja || !ninja_gloves)
|
||||
return INVALID_DRAIN
|
||||
if(ninja_gloves.security_console_hack_success)
|
||||
return
|
||||
to_chat(ninja, "<span class='notice'>Hacking \the [src]...</span>")
|
||||
AI_notify_hack()
|
||||
if(do_after(ninja, 200))
|
||||
@@ -152,6 +154,7 @@
|
||||
var/datum/antagonist/ninja/ninja_antag = ninja.mind.has_antag_datum(/datum/antagonist/ninja)
|
||||
if(!ninja_antag)
|
||||
return
|
||||
ninja_gloves.security_console_hack_success = TRUE
|
||||
var/datum/objective/security_scramble/objective = locate() in ninja_antag.objectives
|
||||
if(objective)
|
||||
objective.completed = TRUE
|
||||
@@ -169,11 +172,11 @@
|
||||
var/announcement_pick = rand(0, 1)
|
||||
switch(announcement_pick)
|
||||
if(0)
|
||||
priority_announce("Attention crew, it appears that someone on your station has made unexpected communication with an alien device in nearby space.", "[command_name()] High-Priority Update")
|
||||
var/datum/round_event_control/spawn_swarmer/swarmer_event = new/datum/round_event_control/spawn_swarmer
|
||||
swarmer_event.runEvent()
|
||||
priority_announce("Attention crew, it appears that something on your station has caused an unexpected disruption with the station's airlock network.", "[command_name()] High-Priority Update")
|
||||
var/datum/round_event_control/grey_tide/greytide_event = new/datum/round_event_control/grey_tide
|
||||
greytide_event.runEvent()
|
||||
if(1)
|
||||
priority_announce("Attention crew, it appears that someone on your station has made unexpected communication with a syndicate ship in nearby space.", "[command_name()] High-Priority Update")
|
||||
priority_announce("Attention crew, it appears that something on your station has made unexpected communication with a syndicate ship in nearby space.", "[command_name()] High-Priority Update")
|
||||
var/datum/round_event_control/pirates/pirate_event = new/datum/round_event_control/pirates
|
||||
pirate_event.runEvent()
|
||||
ninja_gloves.communication_console_hack_success = TRUE
|
||||
@@ -272,7 +275,8 @@
|
||||
/mob/living/silicon/robot/ninjadrain_act(obj/item/clothing/suit/space/space_ninja/ninja_suit, mob/living/carbon/human/ninja, obj/item/clothing/gloves/space_ninja/ninja_gloves)
|
||||
if(!ninja_suit || !ninja || !ninja_gloves || (ROLE_NINJA in faction))
|
||||
return INVALID_DRAIN
|
||||
|
||||
if(ninja_gloves.borg_hack_success)
|
||||
return
|
||||
to_chat(src, "<span class='danger'>Warni-***BZZZZZZZZZRT*** UPLOADING SPYDERPATCHER VERSION 9.5.2...</span>")
|
||||
if (do_after(ninja, 60, target = src))
|
||||
spark_system.start()
|
||||
@@ -283,11 +287,12 @@
|
||||
UnlinkSelf()
|
||||
ionpulse = TRUE
|
||||
laws = new /datum/ai_laws/ninja_override()
|
||||
module.transform_to(pick(/obj/item/robot_module/syndicate, /obj/item/robot_module/syndicate_medical, /obj/item/robot_module/saboteur))
|
||||
module.transform_to(pick(/obj/item/robot_module/syndicate/spider, /obj/item/robot_module/syndicate_medical/spider, /obj/item/robot_module/saboteur/spider))
|
||||
|
||||
var/datum/antagonist/ninja/ninja_antag = ninja.mind.has_antag_datum(/datum/antagonist/ninja)
|
||||
if(!ninja_antag)
|
||||
return
|
||||
ninja_gloves.borg_hack_success = TRUE
|
||||
var/datum/objective/cyborg_hijack/objective = locate() in ninja_antag.objectives
|
||||
if(objective)
|
||||
objective.completed = TRUE
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
permeability_coefficient = 0.01
|
||||
clothing_flags = NOSLIP
|
||||
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
||||
armor = list(MELEE = 40, BULLET = 30, LASER = 20,ENERGY = 15, BOMB = 30, BIO = 30, RAD = 30, FIRE = 100, ACID = 100)
|
||||
armor = list("melee" = 40, "bullet" = 30, "laser" = 20,"energy" = 30, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 100, "acid" = 100)
|
||||
cold_protection = FEET
|
||||
min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT
|
||||
heat_protection = FEET
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/stock_parts/cell)
|
||||
slowdown = 1
|
||||
resistance_flags = LAVA_PROOF | ACID_PROOF
|
||||
armor = list(MELEE = 40, BULLET = 30, LASER = 20,ENERGY = 30, BOMB = 30, BIO = 30, RAD = 30, FIRE = 100, ACID = 100)
|
||||
armor = list("melee" = 40, "bullet" = 30, "laser" = 20,"energy" = 30, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 100, "acid" = 100)
|
||||
|
||||
actions_types = list(/datum/action/item_action/initialize_ninja_suit, /datum/action/item_action/ninjastatus, /datum/action/item_action/ninjaboost, /datum/action/item_action/ninjapulse, /datum/action/item_action/ninjastar, /datum/action/item_action/ninjanet, /datum/action/item_action/ninja_sword_recall, /datum/action/item_action/ninja_stealth)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user