mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-09 16:05:07 +00:00
Removes Ninja EMP burst / Adds Ninja EMP shurikens (#92899)
## About The Pull Request - Ninja no longer has access to an EMP burst shield, now replaced with a normal EMP shield. - Ninja throwing stars are now emergy throwing stars. - On impact, they will release a heavy emp on the target it hit. This can be a mob, a door, a machine, etc. - On embed, in addition to the initial heavy emp, the target will be hit with a light emp every 6 seconds until removing it. - `DROPDEL`, meaning they're not reusable. - 75 armor penetration, up from 40. Making it more likely to embed into armored personnel (security) - 8 force, up from 2. Meaning they can work as a really bad emergency weapon. - 12 throwforce, up from 10. Mainly cause it's made of energy instead of steel - Can't be caught - See: #91855 . - Shurikens no longer "thud" on impact, now they make a stabbing sound. ## Why It's Good For The Game Ninja is a cool techno future ninja but they still generate infinite steel shurikens out of thin air Ninja is supposed to be a master of stealth but they have an ability which makes everyone in a twelve block radius know there's a problem So we can solve both of these at once, replacing their normal shurikens with more thematically appropriate ones, and replacing their massive EMP burst with a more directed, stealthy EMP (that also opens up some unique gameplay like targeting an APC with a shuriken for sabotage) ## Changelog 🆑 Melbert, Toriate del: Removed ninja's EMP burst add: Replaced ninja's throwing stars with energy throwing stars, which EMP on hit and embed, and can't be caught. sound: Throwing stars now make stab sounds instead of thud sounds /🆑
This commit is contained in:
@@ -416,6 +416,8 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301
|
||||
throw_speed = 4
|
||||
embed_type = /datum/embedding/throwing_star
|
||||
armour_penetration = 40
|
||||
mob_throw_hit_sound = 'sound/items/weapons/pierce.ogg'
|
||||
hitsound = 'sound/items/weapons/bladeslice.ogg'
|
||||
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
sharpness = SHARP_POINTY
|
||||
|
||||
@@ -1,18 +1,48 @@
|
||||
/**
|
||||
* # Ninja Throwing Star
|
||||
*
|
||||
* a throwing star which specifically makes sure you know it came from a real ninja.
|
||||
*
|
||||
* The most important item in the entire codebase, as without it we would all cease to exist.
|
||||
* Inherits everything that makes it interesting the stamina throwing star, but the most
|
||||
* important change made is that its name specifically has the prefix, 'ninja' in it.
|
||||
* This provides the detective role with information to play off of by ensuring that his
|
||||
* assumption that a space ninja is aboard the ship to be true when he find 20 of these in
|
||||
* the captain's back. Along with this, its throwforce is 10 instead of the 5 of the stamina
|
||||
* throwing star, meaning it'll do a little more damage than the stamina throwing star does as well.
|
||||
* Changes to this item need to be approved by all maintainers, so if you do change it, make sure
|
||||
* you go through the proper channels, lest you get permabanned. Do I make myself clear?
|
||||
*/
|
||||
/obj/item/throwing_star/stamina/ninja
|
||||
name = "ninja throwing star"
|
||||
throwforce = 10
|
||||
name = "energy throwing star"
|
||||
desc = "An evolution of the traditional steel shuriken, commonly used by Spider Clan initiates. \
|
||||
When thrown or embedded, its internal energy emitter releases an electromagnetic pulse."
|
||||
icon_state = "eshuriken"
|
||||
force = 8
|
||||
throwforce = 12
|
||||
armour_penetration = 75
|
||||
item_flags = DROPDEL
|
||||
embed_type = /datum/embedding/throwing_star/stamina/energy
|
||||
custom_materials = null
|
||||
resistance_flags = FIRE_PROOF | ACID_PROOF | UNACIDABLE
|
||||
|
||||
/obj/item/throwing_star/stamina/ninja/Initialize(mapload)
|
||||
. = ..()
|
||||
ADD_TRAIT(src, TRAIT_UNCATCHABLE, INNATE_TRAIT)
|
||||
|
||||
/obj/item/throwing_star/stamina/ninja/on_thrown(mob/living/carbon/user, atom/target)
|
||||
item_flags &= ~DROPDEL // Throwing = dropping = dropdel, not ideal. Remove it before that happens
|
||||
return ..()
|
||||
|
||||
/obj/item/throwing_star/stamina/ninja/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
|
||||
. = ..()
|
||||
item_flags |= DROPDEL // Just in case, re-apply drop del now
|
||||
hit_atom.emp_act(EMP_HEAVY)
|
||||
new /obj/effect/temp_visual/emp/pulse(get_turf(src))
|
||||
new /obj/effect/temp_visual/emp(get_turf(hit_atom))
|
||||
playsound(src, 'sound/effects/empulse.ogg', 60, TRUE, MEDIUM_RANGE_SOUND_EXTRARANGE)
|
||||
visible_message("[src] emits an electromagnetic pulse upon impact!")
|
||||
if(isturf(loc)) // if we didn't embed in anything, go away
|
||||
qdel(src)
|
||||
|
||||
/datum/embedding/throwing_star/stamina/energy
|
||||
COOLDOWN_DECLARE(emp_cd)
|
||||
|
||||
/datum/embedding/throwing_star/stamina/energy/on_successful_embed(mob/living/carbon/victim, obj/item/bodypart/target_limb)
|
||||
COOLDOWN_START(src, emp_cd, 6 SECONDS)
|
||||
parent.item_flags |= DROPDEL // Just in case again, re-apply drop del now
|
||||
|
||||
/datum/embedding/throwing_star/stamina/energy/process_effect(seconds_per_tick)
|
||||
if(!COOLDOWN_FINISHED(src, emp_cd))
|
||||
return
|
||||
|
||||
owner.emp_act(EMP_LIGHT)
|
||||
COOLDOWN_START(src, emp_cd, 6 SECONDS)
|
||||
playsound(owner, 'sound/effects/empulse.ogg', 30, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
|
||||
owner.show_message("[parent] flares brightly, releasing an electromagnetic pulse!", MSG_VISUAL)
|
||||
new /obj/effect/temp_visual/emp(get_turf(owner))
|
||||
|
||||
@@ -409,13 +409,12 @@
|
||||
/obj/item/mod/module/stealth/ninja,
|
||||
/obj/item/mod/module/dispenser/ninja,
|
||||
/obj/item/mod/module/dna_lock/reinforced,
|
||||
/obj/item/mod/module/emp_shield/pulse,
|
||||
/obj/item/mod/module/emp_shield,
|
||||
/obj/item/mod/module/quick_cuff,
|
||||
)
|
||||
default_pins = list(
|
||||
/obj/item/mod/module/stealth/ninja,
|
||||
/obj/item/mod/module/dispenser/ninja,
|
||||
/obj/item/mod/module/emp_shield/pulse,
|
||||
/obj/item/mod/module/weapon_recall,
|
||||
/obj/item/mod/module/adrenaline_boost,
|
||||
/obj/item/mod/module/energy_net,
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 16 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 3.8 KiB |
Reference in New Issue
Block a user