Files
Bubberstation/code/modules/ninja/suit/suit_attackby.dm
IndieanaJones 4f6190e289 [READY] Space Ninja Rework (#53492)
* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Revert "Automatic changelog compile [ci skip]"

This reverts commit 48a63defa644ec9826ee5eb1736e5158d2a636d4.

* Revert "Automatic changelog compile [ci skip]"

This reverts commit cb68f4988edd9d841c4203eecee2067a49ce75c5.

* Revert "Revert "Automatic changelog compile [ci skip]""

This reverts commit e6e1f1ef53ee6611c334efcae6ca7c102edaf351.

* Revert "Revert "Automatic changelog compile [ci skip]""

This reverts commit 1782210527b9819772c0781122bec35b7979bf7d.

* Update changelog.html

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Move suit_initialization into better location

* Clean up cost check

* Clean up net using

* Clean up Ninja Star

* Clean Up Ninja Stealth

* Clean Up Sword Recall

* Move the event file

* Re-Merge the Changes

* Get your ninja code out of my human.dm

* Move the event into events folder and clean it up

* Can the old space ninja antagonist file

* Roll in the shiny new bad boy

* Get rid of actions/ninja.dm and move its info into respective ability files

* Update one_click_antag with new ninja

* Move proc out of ninja code into proper location

* Update the dme properly this time

* Update code/modules/ninja/suit/ninja_equipment_actions/ninja_suit_initialisation.dm

Co-authored-by: Fikou <piotrbryla@onet.pl>

* Update code/modules/ninja/suit/gloves.dm

Co-authored-by: Fikou <piotrbryla@onet.pl>

* Update the antagonist file

* Update ninjaDrainAct

* Re-Add MGS Voice Lines

* Up the Katana Damage Back Up to 30

* Attempting a Risky Manuever

* Adjusting some numbers to fit the delta time PR

* Fix Var Names and do a return ..()

* Remove Unused Defines, Update qdels to QDEL_NULLs

* Update code/modules/antagonists/space_ninja/space_ninja.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/antagonists/space_ninja/space_ninja.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/events/space_ninja.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/ninja/energy_katana.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/ninja/ninja_explosive.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/ninja/suit/ninja_equipment_actions/energy_net_nets.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Remove Unnecessary Condition Checks

* I'll show you what A stands for!

* Turn some things into defines

* Remove is_ninja()

* Gives the SN roles on Antag Gain, not on event spawn

* Clean up mind/key code to be efficient and modern

* Have Deactivated Suit Gloves use default black sprite

* Add the new clothing sprites

* Add new inventory sprites for alternate sprites

* Get Rid of These Again

* Re-add suit changes

* Implement all the suggestions for the antag file

* And then everything else

* Updating the Weight for purpose of testmerge

* Balance Updates

* Update the Objective Definitions

* Remove Now Unreachable Cyborg Interaction Code

* Get That Shit Out of My Forest

* Re-Add Cowl Wearing Sprite

* Re-Add Cowl Inventory Sprite

* Adapt to the new thing?.thing changes

* Re-add New Katana Inhand Sprites

* Re-Add glove's shock but have it do knockdown instead

* Get rid of the these stupid changelog changes

* Update sounds

* Re-add New Mask Sprite

* Re-update katana inventory sprite

* Revert Event Weight

* Update code/modules/ninja/suit/ninja_equipment_actions/energy_net_nets.dm

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* Re-Add Dynamic Ninja

* Revert Changelog thing

* Update Mob Sprites

* Add files via upload

Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2020-11-07 01:51:30 -05:00

51 lines
2.3 KiB
Plaintext

/obj/item/clothing/suit/space/space_ninja/attackby(obj/item/I, mob/ninja, params)
if(ninja!=affecting)//Safety, in case you try doing this without wearing the suit/being the person with the suit.
return ..()
if(istype(I, /obj/item/reagent_containers/glass) && I.reagents.has_reagent(/datum/reagent/uranium/radium, a_transfer) && a_boost != TRUE)//If it's a glass beaker, and what we're transferring is radium.
I.reagents.remove_reagent(/datum/reagent/uranium/radium, a_transfer)
a_boost = TRUE;
to_chat(ninja, "<span class='notice'>The suit's adrenaline boost is now reloaded.</span>")
return
else if(istype(I, /obj/item/stock_parts/cell))
var/obj/item/stock_parts/cell/CELL = I
if(CELL.maxcharge > cell.maxcharge && n_gloves?.candrain)
to_chat(ninja, "<span class='notice'>Higher maximum capacity detected.\nUpgrading...</span>")
if (n_gloves?.candrain && do_after(ninja,s_delay, target = src))
ninja.transferItemToLoc(CELL, src)
CELL.charge = min(CELL.charge+cell.charge, CELL.maxcharge)
var/obj/item/stock_parts/cell/old_cell = cell
old_cell.charge = 0
ninja.put_in_hands(old_cell)
old_cell.add_fingerprint(ninja)
old_cell.corrupt()
old_cell.update_icon()
cell = CELL
to_chat(ninja, "<span class='notice'>Upgrade complete. Maximum capacity: <b>[round(cell.maxcharge/100)]</b>%</span>")
else
to_chat(ninja, "<span class='danger'>Procedure interrupted. Protocol terminated.</span>")
return
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/node in TD.stored_research.researched_nodes)
if(!stored_research.researched_nodes[node])
has_research = TRUE
break
if(has_research)//If it has something on it.
to_chat(ninja, "<span class='notice'>Research information detected, processing...</span>")
if(do_after(ninja,s_delay, target = src))
TD.stored_research.copy_research_to(stored_research)
qdel(TD.stored_research)
TD.stored_research = new
to_chat(ninja, "<span class='notice'>Data analyzed and updated. Disk erased.</span>")
else
to_chat(ninja, "<span class='userdanger'>ERROR</span>: Procedure interrupted. Process terminated.")
else
to_chat(ninja, "<span class='notice'>No new research information detected.</span>")
return
return ..()