mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-26 14:31:59 +01:00
Ports TG attack animations. (#22319)
https://github.com/user-attachments/assets/0af58b65-552e-48c2-ab97-56ebf0794127 To-do: - [x] Simple mobs - [ ] Icon angles for most icons - [x] Attack effects for kicking/biting/etc --------- Co-authored-by: Matt Atlas <liermattia@gmail.com>
This commit is contained in:
@@ -180,7 +180,7 @@
|
||||
|
||||
/obj/structure/foamedmetal/attack_hand(var/mob/user)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
user.do_attack_animation(src, FIST_ATTACK_ANIMATION)
|
||||
user.do_attack_animation(src)
|
||||
if ((user.mutations & HULK) || (prob(75 - metal * 25)))
|
||||
user.visible_message(SPAN_WARNING("[user] smashes through the foamed metal."), SPAN_NOTICE("You smash through the metal foam wall."))
|
||||
qdel(src)
|
||||
@@ -238,7 +238,7 @@
|
||||
qdel(src)
|
||||
return TRUE
|
||||
|
||||
user.do_attack_animation(src, attacking_item)
|
||||
user.do_attack_animation(src, used_item = attacking_item)
|
||||
if(prob(attacking_item.force * 20 - metal * 25))
|
||||
user.visible_message(SPAN_WARNING("[user] smashes through the foamed metal."), SPAN_NOTICE("You smash through the foamed metal with \the [attacking_item]."))
|
||||
qdel(src)
|
||||
|
||||
@@ -207,6 +207,13 @@
|
||||
/// Used to override hardcoded clothing dmis in human clothing pr
|
||||
var/icon_override
|
||||
|
||||
/// Angle of the icon, used for piercing and slashing attack animations, clockwise from *east-facing* sprites
|
||||
var/icon_angle = 0
|
||||
///icon file for an alternate attack icon
|
||||
var/attack_icon
|
||||
///icon state for an alternate attack icon
|
||||
var/attack_icon_state
|
||||
|
||||
var/charge_failure_message = " cannot be recharged."
|
||||
var/held_maptext
|
||||
|
||||
|
||||
@@ -200,11 +200,12 @@
|
||||
/obj/item/material/twohanded/fireaxe // DEM AXES MAN, marker -Agouri
|
||||
icon_state = "fireaxe0"
|
||||
base_icon = "fireaxe"
|
||||
icon_angle = -180
|
||||
name = "fire axe"
|
||||
desc = "Truly, the weapon of a madman. Who would think to fight fire with an axe?"
|
||||
unwielded_force_divisor = 0.25
|
||||
force_divisor = 0.7 // 10/42 with hardness 60 (steel) and 0.25 unwielded divisor
|
||||
sharp = 1
|
||||
sharp = FALSE
|
||||
edge = TRUE
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
slot_flags = SLOT_BACK
|
||||
@@ -243,6 +244,7 @@
|
||||
/obj/item/material/twohanded/spear
|
||||
icon_state = "spearglass0"
|
||||
base_icon = "spearglass"
|
||||
icon_angle = -45
|
||||
name = "spear"
|
||||
desc = "A haphazardly-constructed yet still deadly weapon of ancient design."
|
||||
force = 15
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
|
||||
/obj/effect/energy_net/attack_hand(var/mob/user)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
user.do_attack_animation(src, FIST_ATTACK_ANIMATION)
|
||||
user.do_attack_animation(src)
|
||||
if(user == affecting)
|
||||
to_chat(user, SPAN_WARNING("You can't claw at \the [src] while trapped inside it! You need to use a weapon."))
|
||||
return
|
||||
@@ -110,7 +110,7 @@
|
||||
|
||||
/obj/effect/energy_net/attackby(obj/item/attacking_item, mob/user)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
user.do_attack_animation(src, attacking_item)
|
||||
user.do_attack_animation(src, used_item = attacking_item)
|
||||
var/attack_force = attacking_item.force
|
||||
if(user == affecting)
|
||||
attack_force /= 2
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
/obj/structure/gore/resin/attack_hand(var/mob/user)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
user.do_attack_animation(src, FIST_ATTACK_ANIMATION)
|
||||
user.do_attack_animation(src)
|
||||
if((user.mutations & HULK))
|
||||
visible_message(SPAN_DANGER("\The [user] destroys \the [src]!"))
|
||||
add_damage(maxhealth)
|
||||
|
||||
@@ -441,7 +441,7 @@ update_flag
|
||||
if(attacking_item.item_flags & ITEM_FLAG_NO_BLUDGEON)
|
||||
return TRUE
|
||||
visible_message(SPAN_WARNING("\The [user] hits \the [src] with \the [attacking_item]!"), SPAN_NOTICE("You hit \the [src] with \the [attacking_item]."))
|
||||
user.do_attack_animation(src, attacking_item)
|
||||
user.do_attack_animation(src, used_item = attacking_item)
|
||||
playsound(src, 'sound/weapons/smash.ogg', 60, 1)
|
||||
add_damage(attacking_item.force)
|
||||
if(!istype(attacking_item, /obj/item/forensics))
|
||||
|
||||
@@ -1434,7 +1434,7 @@ About the new airlock wires panel:
|
||||
return
|
||||
if(H.default_attack?.attack_door && !(stat & (BROKEN|NOPOWER)))
|
||||
user.visible_message(SPAN_DANGER("\The [user] forcefully strikes \the [src] with their [H.default_attack.attack_name]!"))
|
||||
user.do_attack_animation(src, null)
|
||||
user.do_attack_animation(src, H.default_attack.attack_effect)
|
||||
playsound(loc, hitsound, 60, TRUE)
|
||||
add_damage(H.default_attack.attack_door)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
if(!istype(user, /mob/living/silicon))
|
||||
if(user.a_intent == I_HURT)
|
||||
user.visible_message(SPAN_DANGER("\The [user] strikes [src]!"))
|
||||
user.do_attack_animation(user, attacking_item)
|
||||
user.do_attack_animation(user, used_item = attacking_item)
|
||||
playsound(loc, hitsound, 60, TRUE)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
integrity = between(0, integrity - round(attacking_item.force / 3), initial(integrity))
|
||||
|
||||
Reference in New Issue
Block a user