Unapologetic Noobkiller Nerfs (#7003)

This commit is contained in:
OneOneThreeEight
2019-09-24 05:18:02 -04:00
committed by Werner
parent 506abfb5db
commit 617ea81020
3 changed files with 44 additions and 12 deletions

View File

@@ -1,20 +1,14 @@
/*
=== Item Click Call Sequences ===
These are the default click code call sequences used when clicking on stuff with an item.
Atoms:
mob/ClickOn() calls the item's resolve_attackby() proc.
item/resolve_attackby() calls the target atom's attackby() proc.
Mobs:
mob/living/attackby() after checking for surgery, calls the item's attack() proc.
item/attack() generates attack logs, sets click cooldown and calls the mob's attacked_with_item() proc. If you override this, consider whether you need to set a click cooldown, play attack animations, and generate logs yourself.
mob/attacked_with_item() should then do mob-type specific stuff (like determining hit/miss, handling shields, etc) and then possibly call the item's apply_hit_effect() proc to actually apply the effects of being hit.
Item Hit Effects:
item/apply_hit_effect() can be overriden to do whatever you want. However "standard" physical damage based weapons should make use of the target mob's hit_with_weapon() proc to
avoid code duplication. This includes items that may sometimes act as a standard weapon in addition to having other effects (e.g. stunbatons on harm intent).
*/
@@ -93,10 +87,6 @@ avoid code duplication. This includes items that may sometimes act as a standard
power *= 2
if(ishuman(user))
var/mob/living/carbon/human/X = user
if(X.gloves && istype(X.gloves,/obj/item/clothing/gloves/force))
var/obj/item/clothing/gloves/force/G = X.gloves
power *= G.amplification
if(ishuman(target))
if(X.martial_art && X.martial_art.weapon_affinity && istype(src, X.martial_art.weapon_affinity))
perform_technique(target, X, hit_zone)
@@ -104,4 +94,4 @@ avoid code duplication. This includes items that may sometimes act as a standard
return target.hit_with_weapon(src, user, power, hit_zone)
/obj/item/proc/perform_technique(var/mob/living/carbon/human/target, var/mob/living/carbon/human/user, var/target_zone) //used when weapons have special interactions with martial arts
return
return

View File

@@ -16,7 +16,7 @@
/datum/uplink_item/item/visible_weapons/forcegloves
name = "Force Gloves"
item_cost = 8
item_cost = 5
path = /obj/item/clothing/gloves/force/syndicate
/datum/uplink_item/item/visible_weapons/energy_sword

View File

@@ -0,0 +1,42 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
# balance
# admin
# backend
# security
# refactor
#################################
# Your name.
author: Scheveningen
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- balance: "Force gloves will no longer amplify their damage to melee weapons."
- balance: "Force gloves have their TC cost reduced to compensate."