Attacking drakes will piss them off more reliably.

This commit is contained in:
MistakeNot4892
2022-08-16 23:18:32 +10:00
parent 174a6f75a5
commit 1f0cf3c2cb
3 changed files with 27 additions and 12 deletions

View File

@@ -5,7 +5,8 @@
// if(!P.SA_vulnerability || P.SA_vulnerability == intelligence_level)
if(P.SA_vulnerability & mob_class)
P.damage += P.SA_bonus_damage
if(P.firer)
IWasAttackedBy(P.firer)
. = ..()
@@ -40,18 +41,16 @@
G.affecting = src
LAssailant = L
L.visible_message("<span class='warning'>\The [L] has grabbed [src] passively!</span>")
L.visible_message(SPAN_WARNING("\The [L] has grabbed [src] passively!"))
L.do_attack_animation(src)
if(I_HURT)
var/armor = run_armor_check(def_zone = null, attack_flag = "melee")
apply_damage(damage = harm_intent_damage, damagetype = BURN, def_zone = null, blocked = armor, blocked = resistance, used_weapon = null, sharp = FALSE, edge = FALSE)
L.visible_message("<span class='warning'>\The [L] [response_harm] \the [src]!</span>")
apply_damage(damage = harm_intent_damage, damagetype = BRUTE, def_zone = null, blocked = armor, blocked = resistance, used_weapon = null, sharp = FALSE, edge = FALSE)
L.visible_message(SPAN_WARNING("\The [L] [response_harm] \the [src]!"))
L.do_attack_animation(src)
IWasAttackedBy(L)
return
/mob/living/simple_mob/proc/IWasAttackedBy(var/mob/living/attacker)
return
@@ -121,8 +120,10 @@
if(supernatural && istype(O,/obj/item/nullrod))
effective_force *= 2
purge = 3
if(user)
IWasAttackedBy(user)
if(O.force <= resistance)
to_chat(user,"<span class='danger'>This weapon is ineffective, it does no damage.</span>")
to_chat(user, SPAN_WARNING("This weapon is ineffective, it does no damage."))
return 2 //???
. = ..()

View File

@@ -52,13 +52,13 @@
if(!length(damage_strings))
var/percent_health = health / getMaxHealth()
if(percent_health >= 1)
. += SPAN_NOTICE("uninjured")
damage_strings += SPAN_NOTICE("uninjured")
else if(percent_health >= 0.7)
. += "mildly injured"
damage_strings += "mildly injured"
else if(percent_health >= 0.4)
. += SPAN_WARNING("moderately injured")
damage_strings += SPAN_WARNING("moderately injured")
else
. += SPAN_DANGER("badly injured")
damage_strings += SPAN_DANGER("badly injured")
. += "[G.He] [G.is] [english_list(damage_strings)]."

View File

@@ -1,9 +1,23 @@
/mob/living/simple_mob/animal/sif/grafadreka/ICheckRangedAttack(atom/A)
// Some mobtypes are immune to stun, so trying to incapacitate them
// is pointless. Track them here so we don't endlessly run away from
// Beepsky until he beats us to death.
var/static/list/stun_immune_types = list(
/mob/living/bot,
/mob/living/simple_mob/humanoid/merc
)
. = ..() && isliving(A)
if(.)
var/mob/living/M = A
if(M.lying || M.incapacitated())
. = FALSE // They're already stunned, go bite their nipples off.
return FALSE // They're already stunned, go bite their nipples off.
for(var/mobtype in stun_immune_types)
if(istype(A, mobtype))
return FALSE // bots are immune to stuns
/mob/living/simple_mob/animal/sif/grafadreka/IIsAlly(mob/living/L)
. = ..()