mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 16:47:13 +01:00
simple animals now have specific do_attack_animation visual effects. (#57520)
This commit is contained in:
@@ -28,6 +28,7 @@
|
||||
attack_verb_continuous = "glomps"
|
||||
attack_verb_simple = "glomp"
|
||||
attack_sound = 'sound/effects/blobattack.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE //nom nom nom
|
||||
butcher_results = list(/obj/item/food/meat/slab = 2)
|
||||
|
||||
var/morphed = FALSE
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
stop_automated_movement = TRUE
|
||||
status_flags = CANPUSH
|
||||
attack_sound = 'sound/magic/demon_attack1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
minbodytemp = 250 //Weak to cold
|
||||
maxbodytemp = INFINITY
|
||||
@@ -210,6 +211,7 @@
|
||||
attack_verb_simple = "wildly tickle"
|
||||
|
||||
attack_sound = 'sound/items/bikehorn.ogg'
|
||||
attack_vis_effect = null
|
||||
feast_sound = 'sound/spookoween/scary_horn2.ogg'
|
||||
deathsound = 'sound/misc/sadtrombone.ogg'
|
||||
|
||||
|
||||
@@ -146,7 +146,8 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
||||
|
||||
///Punch-specific attack verb.
|
||||
var/attack_verb = "punch"
|
||||
///
|
||||
/// The visual effect of the attack.
|
||||
var/attack_effect = ATTACK_EFFECT_PUNCH
|
||||
var/sound/attack_sound = 'sound/weapons/punch1.ogg'
|
||||
var/sound/miss_sound = 'sound/weapons/punchmiss.ogg'
|
||||
|
||||
@@ -1347,23 +1348,16 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
||||
else
|
||||
|
||||
var/atk_verb = user.dna.species.attack_verb
|
||||
var/atk_effect = user.dna.species.attack_effect
|
||||
if(target.body_position == LYING_DOWN)
|
||||
atk_verb = ATTACK_EFFECT_KICK
|
||||
atk_verb = "kick"
|
||||
atk_effect = ATTACK_EFFECT_KICK
|
||||
|
||||
switch(atk_verb)//this code is really stupid but some genius apparently made "claw" and "slash" two attack types but also the same one so it's needed i guess
|
||||
if(ATTACK_EFFECT_KICK)
|
||||
user.do_attack_animation(target, ATTACK_EFFECT_KICK)
|
||||
if(ATTACK_EFFECT_SLASH || ATTACK_EFFECT_CLAW)//smh
|
||||
user.do_attack_animation(target, ATTACK_EFFECT_CLAW)
|
||||
if(ATTACK_EFFECT_SMASH)
|
||||
user.do_attack_animation(target, ATTACK_EFFECT_SMASH)
|
||||
if(ATTACK_EFFECT_BITE)
|
||||
if(user.is_mouth_covered(FALSE, TRUE))
|
||||
to_chat(user, "<span class='warning'>You can't bite with your mouth covered!</span>")
|
||||
return FALSE
|
||||
user.do_attack_animation(target, ATTACK_EFFECT_BITE)
|
||||
else
|
||||
user.do_attack_animation(target, ATTACK_EFFECT_PUNCH)
|
||||
if(atk_effect == ATTACK_EFFECT_BITE)
|
||||
if(user.is_mouth_covered(mask_only = TRUE))
|
||||
to_chat(user, "<span class='warning'>You can't [atk_verb] with your mouth covered!</span>")
|
||||
return FALSE
|
||||
user.do_attack_animation(target, atk_effect)
|
||||
|
||||
var/damage = rand(user.dna.species.punchdamagelow, user.dna.species.punchdamagehigh)
|
||||
|
||||
@@ -1371,7 +1365,7 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
||||
|
||||
var/miss_chance = 100//calculate the odds that a punch misses entirely. considers stamina and brute damage of the puncher. punches miss by default to prevent weird cases
|
||||
if(user.dna.species.punchdamagelow)
|
||||
if(atk_verb == ATTACK_EFFECT_KICK || HAS_TRAIT(user, TRAIT_PERFECT_ATTACKER)) //kicks never miss (provided your species deals more than 0 damage)
|
||||
if(atk_effect == ATTACK_EFFECT_KICK || HAS_TRAIT(user, TRAIT_PERFECT_ATTACKER)) //kicks never miss (provided your species deals more than 0 damage)
|
||||
miss_chance = 0
|
||||
else
|
||||
miss_chance = min((user.dna.species.punchdamagehigh/user.dna.species.punchdamagelow) + user.getStaminaLoss() + (user.getBruteLoss()*0.5), 100) //old base chance for a miss + various damage. capped at 100 to prevent weirdness in prob()
|
||||
@@ -1399,7 +1393,7 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
||||
if(user.limb_destroyer)
|
||||
target.dismembering_strike(user, affecting.body_zone)
|
||||
|
||||
if(atk_verb == ATTACK_EFFECT_KICK)//kicks deal 1.5x raw damage
|
||||
if(atk_effect == ATTACK_EFFECT_KICK)//kicks deal 1.5x raw damage
|
||||
target.apply_damage(damage*1.5, user.dna.species.attack_type, affecting, armor_block)
|
||||
log_combat(user, target, "kicked")
|
||||
else//other attacks deal full raw damage + 1.5x in stamina damage
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
meat = /obj/item/stack/ore/iron
|
||||
info_text = "As a <span class='danger'>Plasteel Golem</span>, you are slower, but harder to stun, and hit very hard when punching. You also magnetically attach to surfaces and so don't float without gravity and cannot have positions swapped with other beings."
|
||||
attack_verb = "smash"
|
||||
attack_effect = ATTACK_EFFECT_SMASH
|
||||
attack_sound = 'sound/effects/meteorimpact.ogg' //hits pretty hard
|
||||
prefix = "Plasteel"
|
||||
special_names = null
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
payday_modifier = 0.75
|
||||
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC | RACE_SWAP | ERT_SPAWN | SLIME_EXTRACT
|
||||
attack_verb = "slash"
|
||||
attack_effect = ATTACK_EFFECT_CLAW
|
||||
attack_sound = 'sound/weapons/slash.ogg'
|
||||
miss_sound = 'sound/weapons/slashmiss.ogg'
|
||||
meat = /obj/item/food/meat/slab/human/mutant/lizard
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
id = "monkey"
|
||||
say_mod = "chimpers"
|
||||
attack_verb = "bite"
|
||||
attack_effect = ATTACK_EFFECT_BITE
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
miss_sound = 'sound/weapons/bite.ogg'
|
||||
mutant_organs = list(/obj/item/organ/tail/monkey)
|
||||
@@ -91,8 +92,8 @@
|
||||
|
||||
/datum/species/monkey/handle_mutations_and_radiation(mob/living/carbon/human/H)
|
||||
. = ..()
|
||||
if(H.radiation > RAD_MOB_MUTATE * 2 && prob(50))
|
||||
H.gorillize()
|
||||
if(H.radiation > RAD_MOB_MUTATE * 2 && prob(50))
|
||||
H.gorillize()
|
||||
return
|
||||
|
||||
/datum/species/monkey/check_roundstart_eligible()
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID|MOB_BUG
|
||||
mutant_bodyparts = list("moth_wings" = "Plain", "moth_antennae" = "Plain", "moth_markings" = "None")
|
||||
attack_verb = "slash"
|
||||
attack_effect = ATTACK_EFFECT_CLAW
|
||||
attack_sound = 'sound/weapons/slash.ogg'
|
||||
miss_sound = 'sound/weapons/slashmiss.ogg'
|
||||
meat = /obj/item/food/meat/slab/human/mutant/moth
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
species_traits = list(MUTCOLORS,EYECOLOR, HAS_FLESH, HAS_BONE)
|
||||
inherent_factions = list("plants", "vines")
|
||||
attack_verb = "slash"
|
||||
attack_effect = ATTACK_EFFECT_CLAW
|
||||
attack_sound = 'sound/weapons/slice.ogg'
|
||||
miss_sound = 'sound/weapons/slashmiss.ogg'
|
||||
burnmod = 1.25
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
species_traits = list(MUTCOLORS, NO_UNDERWEAR, HAS_FLESH, HAS_BONE)
|
||||
inherent_traits = list(TRAIT_ADVANCEDTOOLUSER, TRAIT_NOSLIPALL)
|
||||
attack_verb = "slap"
|
||||
attack_effect = ATTACK_EFFECT_DISARM
|
||||
say_mod = "slurs"
|
||||
coldmod = 0.5 //snails only come out when its cold and wet
|
||||
burnmod = 2
|
||||
|
||||
@@ -60,6 +60,7 @@
|
||||
species_traits |= S.species_traits
|
||||
inherent_traits |= S.inherent_traits
|
||||
attack_verb = S.attack_verb
|
||||
attack_effect = S.attack_effect
|
||||
attack_sound = S.attack_sound
|
||||
miss_sound = S.miss_sound
|
||||
meat = S.meat
|
||||
@@ -78,6 +79,7 @@
|
||||
species_traits = initial_species_traits.Copy()
|
||||
inherent_traits = initial_inherent_traits.Copy()
|
||||
attack_verb = initial(attack_verb)
|
||||
attack_effect = initial(attack_verb)
|
||||
attack_sound = initial(attack_sound)
|
||||
miss_sound = initial(miss_sound)
|
||||
mutant_bodyparts = list()
|
||||
|
||||
@@ -172,7 +172,9 @@
|
||||
|
||||
/mob/living/simple_animal/do_attack_animation(atom/A, visual_effect_icon, used_item, no_effect)
|
||||
if(!no_effect && !visual_effect_icon && melee_damage_upper)
|
||||
if(melee_damage_upper < 10)
|
||||
if(attack_vis_effect && !iswallturf(A)) // override the standard visual effect.
|
||||
visual_effect_icon = attack_vis_effect
|
||||
else if(melee_damage_upper < 10)
|
||||
visual_effect_icon = ATTACK_EFFECT_PUNCH
|
||||
else
|
||||
visual_effect_icon = ATTACK_EFFECT_SMASH
|
||||
|
||||
@@ -204,6 +204,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
construct_spells = list(/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift)
|
||||
runetype = /datum/action/innate/cult/create_rune/tele
|
||||
playstyle_string = "<b>You are a Wraith. Though relatively fragile, you are fast, deadly, can phase through walls, and your attacks will lower the cooldown on phasing.</b>"
|
||||
@@ -378,6 +379,7 @@
|
||||
attack_verb_continuous = "butchers"
|
||||
attack_verb_simple = "butcher"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
construct_spells = list(/obj/effect/proc_holder/spell/aoe_turf/area_conversion,
|
||||
/obj/effect/proc_holder/spell/targeted/forcewall/cult)
|
||||
playstyle_string = "<B>You are a Harvester. You are incapable of directly killing humans, but your attacks will remove their limbs: \
|
||||
|
||||
@@ -41,6 +41,11 @@
|
||||
held_state = "cat2"
|
||||
pet_bonus = TRUE
|
||||
pet_bonus_emote = "purrs!"
|
||||
///In the case 'melee_damage_upper' is somehow raised above 0
|
||||
attack_verb_continuous = "claws"
|
||||
attack_verb_simple = "claw"
|
||||
attack_sound = 'sound/weapons/slash.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
|
||||
footstep_type = FOOTSTEP_MOB_CLAW
|
||||
|
||||
|
||||
@@ -23,6 +23,11 @@
|
||||
var/obj/item/inventory_head
|
||||
var/obj/item/inventory_mask
|
||||
gold_core_spawnable = FRIENDLY_SPAWN
|
||||
///In the case 'melee_damage_upper' is somehow raised above 0
|
||||
attack_verb_continuous = "snips"
|
||||
attack_verb_simple = "snip"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
|
||||
/mob/living/simple_animal/crab/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -21,6 +21,11 @@
|
||||
pet_bonus_emote = "woofs happily!"
|
||||
ai_controller = /datum/ai_controller/dog
|
||||
stop_automated_movement = TRUE
|
||||
///In the case 'melee_damage_upper' is somehow raised above 0
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
|
||||
footstep_type = FOOTSTEP_MOB_CLAW
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
attack_verb_continuous = "kicks"
|
||||
attack_verb_simple = "kick"
|
||||
attack_sound = 'sound/weapons/punch1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_KICK
|
||||
health = 40
|
||||
maxHealth = 40
|
||||
minbodytemp = 180
|
||||
@@ -138,6 +139,7 @@
|
||||
attack_verb_continuous = "kicks"
|
||||
attack_verb_simple = "kick"
|
||||
attack_sound = 'sound/weapons/punch1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_KICK
|
||||
health = 50
|
||||
maxHealth = 50
|
||||
var/obj/item/udder/udder = null
|
||||
|
||||
@@ -25,6 +25,11 @@
|
||||
held_state = "fox"
|
||||
pet_bonus = TRUE
|
||||
pet_bonus_emote = "pants and yaps happily!"
|
||||
///In the case 'melee_damage_upper' is somehow raised above 0
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
|
||||
footstep_type = FOOTSTEP_MOB_CLAW
|
||||
|
||||
|
||||
@@ -27,6 +27,11 @@
|
||||
held_state = "sloth"
|
||||
pet_bonus = TRUE
|
||||
pet_bonus_emote = "slowly smiles!"
|
||||
///In the case 'melee_damage_upper' is somehow raised above 0
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
|
||||
footstep_type = FOOTSTEP_MOB_CLAW
|
||||
|
||||
|
||||
@@ -21,6 +21,8 @@
|
||||
maxHealth = 20
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
melee_damage_lower = 5
|
||||
melee_damage_upper = 6
|
||||
response_help_continuous = "pets"
|
||||
|
||||
@@ -125,6 +125,7 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
recolorentiresprite = TRUE
|
||||
if(!recolorentiresprite) //we want this to proc before stand logs in, so the overlay isn't gone for some reason
|
||||
cooloverlay = mutable_appearance(icon, theme)
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1)
|
||||
playstyle_string = "<span class='holoparasite'>As an <b>assassin</b> type you do medium damage and have no damage resistance, but can enter stealth, massively increasing the damage of your next attack and causing it to ignore armor. Stealth is broken when you attack or take damage.</span>"
|
||||
magic_fluff_string = "<span class='holoparasite'>..And draw the Space Ninja, a lethal, invisible assassin.</span>"
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
bubble_icon = "alien"
|
||||
combat_mode = TRUE
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
faction = list(ROLE_ALIEN)
|
||||
status_flags = CANPUSH
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
attack_verb_continuous = "claws"
|
||||
attack_verb_simple = "claw"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
friendly_verb_continuous = "bear hugs"
|
||||
friendly_verb_simple = "bear hug"
|
||||
|
||||
@@ -142,6 +143,8 @@
|
||||
deathmessage = "loses its false life and collapses!"
|
||||
butcher_results = list(/obj/item/food/butter = 6, /obj/item/food/meat/slab = 3, /obj/item/organ/brain = 1, /obj/item/organ/heart = 1)
|
||||
attack_sound = 'sound/weapons/slap.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_DISARM
|
||||
attack_verb_simple = "slap"
|
||||
attack_verb_continuous = "slaps"
|
||||
|
||||
/mob/living/simple_animal/hostile/bear/butter/add_cell_sample()
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
speak_emote = list("gnashes")
|
||||
|
||||
//Space carp aren't affected by cold.
|
||||
|
||||
@@ -87,6 +87,7 @@
|
||||
obj_damage = 20
|
||||
gold_core_spawnable = HOSTILE_SPAWN
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
faction = list("hostile")
|
||||
sharpness = SHARP_POINTY
|
||||
squish_chance = 0 // manual squish if relevant
|
||||
|
||||
@@ -67,6 +67,7 @@
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
unique_name = 1
|
||||
gold_core_spawnable = HOSTILE_SPAWN
|
||||
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
attack_verb_continuous = "pecks"
|
||||
attack_verb_simple = "peck"
|
||||
attack_sound = "goose"
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
speak_emote = list("honks")
|
||||
faction = list("neutral")
|
||||
attack_same = TRUE
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
faction = list("creature")
|
||||
robust_searching = 1
|
||||
stat_attack = DEAD
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
attack_verb_continuous = "claws"
|
||||
attack_verb_simple = "claw"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
projectilesound = 'sound/weapons/gun/pistol/shot.ogg'
|
||||
projectiletype = /obj/projectile/hivebotbullet
|
||||
faction = list("hivebot")
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
aggro_vision_range = 9
|
||||
speak_emote = list("chitters")
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
ranged_cooldown_time = 60
|
||||
projectiletype = /obj/projectile/mega_arachnid
|
||||
projectilesound = 'sound/weapons/pierce.ogg'
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
robust_searching = TRUE
|
||||
stat_attack = HARD_CRIT
|
||||
attack_sound = 'sound/weapons/rapierhit.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
deathsound = 'sound/voice/mook_death.ogg'
|
||||
aggro_vision_range = 15 //A little more aggressive once in combat to balance out their really low HP
|
||||
var/attack_state = MOOK_ATTACK_NEUTRAL
|
||||
|
||||
@@ -17,6 +17,7 @@ I'd rather there be something than the clockwork ruin be entirely empty though s
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
weather_immunities = list("snow")
|
||||
speak_emote = list("roars")
|
||||
armour_penetration = 40
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/magic/demon_attack1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
icon = 'icons/mob/lavaland/64x64megafauna.dmi'
|
||||
icon_state = "dragon"
|
||||
icon_living = "dragon"
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/magic/demon_attack1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
speak_emote = list("echoes")
|
||||
armour_penetration = 50
|
||||
melee_damage_lower = 25
|
||||
|
||||
@@ -24,6 +24,7 @@ Difficulty: Hard
|
||||
attack_verb_continuous = "claws"
|
||||
attack_verb_simple = "claw"
|
||||
attack_sound = 'sound/magic/demon_attack1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
weather_immunities = list("snow")
|
||||
speak_emote = list("roars")
|
||||
armour_penetration = 40
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
attack_verb_simple = "bite into"
|
||||
speak_emote = list("chitters")
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
aggro_vision_range = 9
|
||||
turns_per_move = 5
|
||||
gold_core_spawnable = HOSTILE_SPAWN
|
||||
@@ -109,6 +110,7 @@
|
||||
combat_mode = TRUE
|
||||
speak_emote = list("telepathically cries")
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = null // doesn't bite unlike the parent type.
|
||||
stat_attack = HARD_CRIT
|
||||
is_flying_animal = TRUE
|
||||
robust_searching = 1
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/effects/curseattack.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
throw_message = "passes through the smokey body of"
|
||||
obj_damage = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
attack_verb_continuous = "slashes its arms at"
|
||||
attack_verb_simple = "slash your arms at"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
throw_message = "doesn't affect the sturdiness of"
|
||||
speed = 1
|
||||
move_to_delay = 3
|
||||
@@ -249,6 +250,7 @@
|
||||
attack_verb_continuous = "bites at"
|
||||
attack_verb_simple = "bite at"
|
||||
attack_sound = 'sound/effects/curse1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
throw_message = "simply misses"
|
||||
speed = 0
|
||||
move_to_delay = 2
|
||||
|
||||
@@ -81,6 +81,7 @@
|
||||
attack_verb_simple = "slash"
|
||||
speak_emote = list("telepathically cries")
|
||||
attack_sound = 'sound/weapons/pierce.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
throw_message = "falls right through the strange body of the"
|
||||
obj_damage = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
@@ -179,6 +180,7 @@
|
||||
melee_damage_upper = 12
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
speak_emote = list("echoes")
|
||||
attack_sound = 'sound/weapons/pierce.ogg'
|
||||
throw_message = "is shrugged off by"
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
attack_verb_continuous = "slices"
|
||||
attack_verb_simple = "slice"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
vision_range = 9
|
||||
aggro_vision_range = 9
|
||||
move_force = MOVE_FORCE_VERY_STRONG
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/magic/demon_attack1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
ranged_message = "breathes fire at"
|
||||
vision_range = 9
|
||||
aggro_vision_range = 9
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
attack_verb_continuous = "snips"
|
||||
attack_verb_simple = "snip"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE //the closest we have to a crustacean pinching attack effect rn.
|
||||
weather_immunities = list("snow")
|
||||
vision_range = 5
|
||||
aggro_vision_range = 7
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
attack_verb_continuous = "claws"
|
||||
attack_verb_simple = "claw"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
vision_range = 2 // don't aggro unless you basically antagonize it, though they will kill you worse than a goliath will
|
||||
aggro_vision_range = 9
|
||||
move_force = MOVE_FORCE_VERY_STRONG
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
vision_range = 7
|
||||
aggro_vision_range = 7
|
||||
move_force = MOVE_FORCE_WEAK
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
faction = list("mushroom")
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
stat_attack = DEAD
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH // I always thought they bit. Guess I was wrong.
|
||||
faction = list("nether")
|
||||
speak_emote = list("screams")
|
||||
gold_core_spawnable = HOSTILE_SPAWN
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/blade1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
var/obj/effect/light_emitter/red_energy_sword/sord
|
||||
|
||||
footstep_type = FOOTSTEP_MOB_SHOE
|
||||
|
||||
@@ -22,7 +22,8 @@
|
||||
melee_damage_upper = 15
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/punch1.ogg'
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
unique_name = TRUE
|
||||
faction = list("rat")
|
||||
///The spell that the rat uses to generate miasma
|
||||
@@ -96,7 +97,7 @@
|
||||
if (do_mob(src, target, 2 SECONDS, interaction_key = "regalrat"))
|
||||
target.reagents.add_reagent(/datum/reagent/rat_spit,rand(1,3),no_react = TRUE)
|
||||
to_chat(src, "<span class='notice'>You finish licking [target].</span>")
|
||||
else
|
||||
else
|
||||
SEND_SIGNAL(target, COMSIG_RAT_INTERACT, src)
|
||||
|
||||
/**
|
||||
@@ -320,7 +321,7 @@
|
||||
if(HAS_TRAIT(L, TRAIT_AGEUSIA))
|
||||
return
|
||||
to_chat(L, "<span class='notice'>This food has a funny taste!</span>")
|
||||
|
||||
|
||||
/datum/reagent/rat_spit/overdose_start(mob/living/M)
|
||||
..()
|
||||
var/mob/living/carbon/victim = M
|
||||
@@ -328,7 +329,7 @@
|
||||
to_chat(victim, "<span class='userdanger'>With this last sip, you feel your body convulsing horribly from the contents you've ingested. As you contemplate your actions, you sense an awakened kinship with rat-kind and their newly risen leader!</span>")
|
||||
victim.faction |= "rat"
|
||||
victim.vomit()
|
||||
metabolization_rate = 10 * REAGENTS_METABOLISM
|
||||
metabolization_rate = 10 * REAGENTS_METABOLISM
|
||||
|
||||
/datum/reagent/rat_spit/on_mob_life(mob/living/carbon/C)
|
||||
if(prob(15))
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
pass_flags = PASSTABLE
|
||||
faction = list("hostile")
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
obj_damage = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
mob_size = MOB_SIZE_TINY
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/hallucinations/growl1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
unsuitable_atmos_damage = 5
|
||||
robust_searching = 1
|
||||
@@ -98,9 +99,6 @@
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 20
|
||||
light_color = LIGHT_COLOR_PURPLE
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/hallucinations/growl1.ogg'
|
||||
deathmessage = "collapses into a pile of bones, their suit dissolving among the plasma!"
|
||||
loot = list(/obj/effect/decal/remains/plasma)
|
||||
|
||||
@@ -117,6 +115,7 @@
|
||||
attack_verb_continuous = "blasts"
|
||||
attack_verb_simple = "blast"
|
||||
attack_sound = 'sound/weapons/sonic_jackhammer.ogg'
|
||||
attack_vis_effect = null // jackhammer moment
|
||||
loot = list(/obj/effect/decal/remains/plasma, /obj/item/pickaxe/drill/jackhammer)
|
||||
|
||||
/mob/living/simple_animal/hostile/skeleton/plasmaminer/Initialize()
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/magic/demon_attack1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
deathsound = 'sound/magic/demon_dies.ogg'
|
||||
icon = 'icons/mob/spacedragon.dmi'
|
||||
icon_state = "spacedragon"
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
attack_verb_continuous = "claws"
|
||||
attack_verb_simple = "claw"
|
||||
attack_sound = 'sound/hallucinations/growl1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_CLAW
|
||||
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
minbodytemp = 0
|
||||
|
||||
@@ -81,6 +81,7 @@
|
||||
attack_verb_continuous = "slashes"
|
||||
attack_verb_simple = "slash"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
status_flags = 0
|
||||
var/projectile_deflect_chance = 0
|
||||
|
||||
@@ -302,6 +303,7 @@
|
||||
attack_verb_continuous = "cuts"
|
||||
attack_verb_simple = "cut"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_SLASH
|
||||
faction = list(ROLE_SYNDICATE)
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
minbodytemp = 0
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
speak_emote = list("pines")
|
||||
emote_taunt = list("growls")
|
||||
taunt_chance = 20
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_sound = 'sound/weapons/punch1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
throw_message = "is avoided by the"
|
||||
aggro_vision_range = 9
|
||||
mob_size = MOB_SIZE_SMALL
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
attack_verb_continuous = "bites"
|
||||
attack_verb_simple = "bite"
|
||||
attack_sound = 'sound/hallucinations/growl1.ogg'
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
combat_mode = TRUE
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
minbodytemp = 0
|
||||
|
||||
@@ -60,6 +60,7 @@
|
||||
combat_mode = TRUE //parrots now start "aggressive" since only player parrots will nuzzle.
|
||||
attack_verb_continuous = "chomps"
|
||||
attack_verb_simple = "chomp"
|
||||
attack_vis_effect = ATTACK_EFFECT_BITE
|
||||
friendly_verb_continuous = "grooms"
|
||||
friendly_verb_simple = "groom"
|
||||
mob_size = MOB_SIZE_SMALL
|
||||
|
||||
@@ -88,7 +88,10 @@
|
||||
var/attack_verb_continuous = "attacks"
|
||||
///Attacking verb in present simple tense.
|
||||
var/attack_verb_simple = "attack"
|
||||
var/attack_sound = null
|
||||
/// Sound played when the critter attacks.
|
||||
var/attack_sound
|
||||
/// Override for the visual attack effect shown on 'do_attack_animation()'.
|
||||
var/attack_vis_effect
|
||||
///Attacking, but without damage, verb in present continuous tense.
|
||||
var/friendly_verb_continuous = "nuzzles"
|
||||
///Attacking, but without damage, verb in present simple tense.
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 892 KiB After Width: | Height: | Size: 898 KiB |
Reference in New Issue
Block a user