mirror of
https://github.com/Skyrat-SS13/Skyrat-tg.git
synced 2026-08-27 14:58:01 +01:00
* Targeting Datums Renamed (and global) (#79513)
## About The Pull Request
[Implements the backend required to make targeting datums
global](https://github.com/tgstation/tgstation/commit/6901ead12e419530b7f646ea21094d4432d7385e)
It's inconsistent with the rest of basic ai for these to have a high
degree of state, plus like, such a waste yaknow?
[Implements
GET_TARGETING_STRATEGY](https://github.com/tgstation/tgstation/commit/d79c29134d03424a9f8bacd64c08cb41775fe8c0)
Regexes used:
new.*(/datum/targetting_datum[^,(]*)\(*\)* -> GET_TARGETING_STRATEGY($1)
Renamed all instances of targetting to targeting (also targetting datum
-> targeting strategy)
I've used GET_TARGETING_STRATEGY at the source where the keys are
actually used, rather then in the listing. This works out just fine.
## Why It's Good For The Game
Not a misspelled name through the whole codebase, very slightly less
memory load for basically no downside (slight cpu cost maybe but not a
significant one.
---------
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
* Targeting Datums Renamed (and global)
* Update dogs.dm
* Modular
* Modular
* Modular
* Merge skew?
* Revert "Merge skew?"
This reverts commit 0889389ab5.
---------
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
60 lines
2.1 KiB
Plaintext
60 lines
2.1 KiB
Plaintext
/mob/living/basic/ant
|
|
name = "giant ant"
|
|
desc = "A writhing mass of ants, glued together to make an adorable pet!"
|
|
icon = 'icons/mob/simple/pets.dmi'
|
|
icon_state = "ant"
|
|
icon_living = "ant"
|
|
icon_dead = "ant_dead"
|
|
speak_emote = list("buzzes", "chitters")
|
|
gender = PLURAL // We are Ven-ant
|
|
pass_flags = PASSTABLE
|
|
mob_size = MOB_SIZE_SMALL
|
|
mob_biotypes = MOB_ORGANIC|MOB_BUG
|
|
obj_damage = 5
|
|
melee_damage_lower = 5
|
|
melee_damage_upper = 10
|
|
attack_verb_continuous = "bites"
|
|
attack_verb_simple = "bite"
|
|
attack_sound = 'sound/weapons/bite.ogg'
|
|
attack_vis_effect = ATTACK_EFFECT_BITE
|
|
butcher_results = list(/obj/effect/decal/cleanable/ants = 3) //It's just a bunch of ants glued together into a larger ant
|
|
response_help_continuous = "pets"
|
|
response_help_simple = "pet"
|
|
response_disarm_continuous = "gently pushes aside"
|
|
response_disarm_simple = "gently push aside"
|
|
response_harm_continuous = "kicks"
|
|
response_harm_simple = "kick"
|
|
gold_core_spawnable = FRIENDLY_SPAWN
|
|
faction = list(FACTION_NEUTRAL)
|
|
can_be_held = FALSE
|
|
health = 100
|
|
maxHealth = 100
|
|
light_range = 1.5 // Bioluminescence!
|
|
minimum_survivable_temperature = T20C - 100
|
|
maximum_survivable_temperature = T20C + 120
|
|
light_color = "#d43229" // The ants that comprise the giant ant still glow red despite the sludge.
|
|
|
|
ai_controller = /datum/ai_controller/basic_controller/ant
|
|
|
|
/mob/living/basic/ant/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_VENTCRAWLER_ALWAYS, INNATE_TRAIT)
|
|
AddElement(/datum/element/pet_bonus, "clacks happily!")
|
|
AddElement(/datum/element/ai_retaliate)
|
|
AddElement(/datum/element/footstep, FOOTSTEP_MOB_CLAW)
|
|
|
|
/datum/ai_controller/basic_controller/ant
|
|
blackboard = list(
|
|
BB_TARGETING_STRATEGY = /datum/targeting_strategy/basic,
|
|
)
|
|
|
|
ai_movement = /datum/ai_movement/basic_avoidance
|
|
idle_behavior = /datum/idle_behavior/idle_random_walk
|
|
planning_subtrees = list(
|
|
/datum/ai_planning_subtree/find_nearest_thing_which_attacked_me_to_flee,
|
|
/datum/ai_planning_subtree/flee_target,
|
|
/datum/ai_planning_subtree/target_retaliate,
|
|
/datum/ai_planning_subtree/basic_melee_attack_subtree,
|
|
/datum/ai_planning_subtree/random_speech/ant,
|
|
)
|