/
Lachklen
/
MYtgstation
Обзор
Документация
Войти
/
Lachklen
/
MYtgstation
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
code/modules/unit_tests/combat_blocking.dm
35 строк
2 KB
MrMelbert
Adds a bunch of interaction related unit tests (#88210)
27 ноя 2024, 21:38
Не верифицирован
27 ноя 2024, 21:38
34d35c6
Код
Авторство
О чём код?
/// Test that items can block unarmed attacks /datum/unit_test/unarmed_blocking /datum/unit_test/unarmed_blocking/Run() var/mob/living/carbon/human/consistent/attacker = EASY_ALLOCATE() var/mob/living/carbon/human/consistent/victim = EASY_ALLOCATE() var/obj/item/chair/chair = EASY_ALLOCATE() chair.hit_reaction_chance = 100 victim.put_in_active_hand(chair, forced = TRUE) attacker.set_combat_mode(TRUE) ADD_TRAIT(attacker, TRAIT_PERFECT_ATTACKER, TRAIT_SOURCE_UNIT_TESTS) click_wrapper(attacker, victim) TEST_ASSERT_EQUAL(victim.getBruteLoss(), 0, "Victim took damage from being punched despite having a 100% block chance chair in their hands.") /// Test that items can block weapon attacks /datum/unit_test/armed_blocking /datum/unit_test/armed_blocking/Run() var/mob/living/carbon/human/consistent/attacker = EASY_ALLOCATE() var/mob/living/carbon/human/consistent/victim = EASY_ALLOCATE() var/obj/item/shield/riot/shield = EASY_ALLOCATE() shield.block_chance = INFINITY victim.put_in_active_hand(shield, forced = TRUE) attacker.set_combat_mode(TRUE) ADD_TRAIT(attacker, TRAIT_PERFECT_ATTACKER, TRAIT_SOURCE_UNIT_TESTS) click_wrapper(attacker, victim) TEST_ASSERT_EQUAL(victim.getBruteLoss(), 0, "Victim took damage from being punched despite having a 100% block chance shield in their hands.") var/obj/item/storage/toolbox/weapon = EASY_ALLOCATE() attacker.put_in_active_hand(weapon, forced = TRUE) click_wrapper(attacker, victim) TEST_ASSERT_EQUAL(victim.getBruteLoss(), 0, "Victim took damage from being hit with a weapon despite having a 100% block chance shield in their hands.")