diff --git a/code/modules/antagonists/ninja/energy_net_nets.dm b/code/modules/antagonists/ninja/energy_net_nets.dm index 33b57f60a9b..111d1f26515 100644 --- a/code/modules/antagonists/ninja/energy_net_nets.dm +++ b/code/modules/antagonists/ninja/energy_net_nets.dm @@ -12,17 +12,22 @@ desc = "It's a net made of green energy." icon = 'icons/effects/effects.dmi' icon_state = "energynet" - density = TRUE//Can't pass through. - opacity = FALSE //Can see through. - mouse_opacity = MOUSE_OPACITY_ICON//So you can hit it with stuff. - anchored = TRUE//Can't drag/grab the net. + density = TRUE //Can't pass through. + anchored = TRUE //Can't drag/grab the net. layer = ABOVE_ALL_MOB_LAYER plane = ABOVE_GAME_PLANE max_integrity = 60 //How much health it has. - can_buckle = 1 + can_buckle = TRUE buckle_lying = 0 buckle_prevents_pull = TRUE +/obj/structure/energy_net/Initialize(mapload) + . = ..() + var/image/underlay = image(icon, "energynet_underlay") + underlay.layer = BELOW_MOB_LAYER + SET_PLANE_EXPLICIT(underlay, GAME_PLANE, src) + add_overlay(underlay) + /obj/structure/energy_net/play_attack_sound(damage, damage_type = BRUTE, damage_flag = 0) if(damage_type == BRUTE || damage_type == BURN) playsound(src, 'sound/weapons/slash.ogg', 80, TRUE) diff --git a/code/modules/antagonists/ninja/ninjaDrainAct.dm b/code/modules/antagonists/ninja/ninjaDrainAct.dm index 0abd2473a89..6d682482380 100644 --- a/code/modules/antagonists/ninja/ninjaDrainAct.dm +++ b/code/modules/antagonists/ninja/ninjaDrainAct.dm @@ -318,11 +318,15 @@ //Got that electric touch var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, loc) - playsound(src, SFX_SPARKS, 50, TRUE, SHORT_RANGE_SOUND_EXTRARANGE) + spark_system.start() visible_message(span_danger("[ninja] electrocutes [src] with [ninja.p_their()] touch!"), span_userdanger("[ninja] electrocutes you with [ninja.p_their()] touch!")) - Knockdown(3 SECONDS) + addtimer(CALLBACK(src, PROC_REF(ninja_knockdown)), 0.3 SECONDS) return NONE +/mob/living/carbon/proc/ninja_knockdown() + Knockdown(3 SECONDS) + set_jitter_if_lower(3 SECONDS) + //CAMERAS// /obj/machinery/camera/ninjadrain_act(mob/living/carbon/human/ninja, obj/item/mod/module/hacker/hacking_module) if(isEmpProof(TRUE)) diff --git a/code/modules/antagonists/space_ninja/space_ninja.dm b/code/modules/antagonists/space_ninja/space_ninja.dm index 130741ab930..eaa117464e7 100644 --- a/code/modules/antagonists/space_ninja/space_ninja.dm +++ b/code/modules/antagonists/space_ninja/space_ninja.dm @@ -11,8 +11,6 @@ preview_outfit = /datum/outfit/ninja_preview ///Whether or not this ninja will obtain objectives var/give_objectives = TRUE - ///Whether or not this ninja receives the standard equipment - var/give_equipment = TRUE /** * Proc that equips the space ninja outfit on a given individual. By default this is the owner of the antagonist datum. @@ -110,9 +108,9 @@ if(give_objectives) addObjectives() addMemories() - if(give_equipment) - equip_space_ninja(owner.current) - + equip_space_ninja(owner.current) + owner.current.add_quirk(/datum/quirk/freerunning) + owner.current.add_quirk(/datum/quirk/light_step) owner.current.mind.set_assigned_role(SSjob.GetJobType(/datum/job/space_ninja)) owner.current.mind.special_role = ROLE_NINJA return ..() diff --git a/code/modules/mod/modules/modules_ninja.dm b/code/modules/mod/modules/modules_ninja.dm index b15e785c18d..90c731a7c36 100644 --- a/code/modules/mod/modules/modules_ninja.dm +++ b/code/modules/mod/modules/modules_ninja.dm @@ -76,6 +76,18 @@ use_power_cost = DEFAULT_CHARGE_DRAIN * 5 cooldown_time = 3 SECONDS +/obj/item/mod/module/stealth/ninja/on_activation() + . = ..() + if(!.) + return + ADD_TRAIT(mod.wearer, TRAIT_SILENT_FOOTSTEPS, MOD_TRAIT) + +/obj/item/mod/module/stealth/ninja/on_deactivation(display_message = TRUE, deleting = FALSE) + . = ..() + if(!.) + return + REMOVE_TRAIT(mod.wearer, TRAIT_SILENT_FOOTSTEPS, MOD_TRAIT) + ///Camera Vision - Prevents flashes, blocks tracking. /obj/item/mod/module/welding/camera_vision name = "MOD camera vision module" diff --git a/icons/effects/effects.dmi b/icons/effects/effects.dmi index 17292014aeb..f7615fc045b 100644 Binary files a/icons/effects/effects.dmi and b/icons/effects/effects.dmi differ