Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/Huz2e/massmeta
Browse files Browse the repository at this point in the history
  • Loading branch information
Huz2e committed Feb 17, 2025
2 parents c8d81cb + 18523e0 commit 6cd076d
Showing 1 changed file with 12 additions and 15 deletions.
27 changes: 12 additions & 15 deletions modular_meta/features/venom_knife/code/knives.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
icon = 'modular_meta/features/venom_knife/icons/stabby.dmi'
icon_state = "buckknife"
worn_icon_state = "buckknife"
force = 13 // Если оставить 12 то урон будт как у тулбокса, пусть он будет чу-чуть сильнее.
throwforce = 15
force = 18
throwforce = 18
throw_speed = 5
throw_range = 7
var/amount_per_transfer_from_this = 10
Expand All @@ -13,8 +13,6 @@
desc = "An infamous knife of syndicate design, \
it has a tiny hole going through the blade to the handle which stores toxins."



/obj/item/knife/poison/Initialize(mapload)
. = ..()
create_reagents(40,OPENCONTAINER)
Expand All @@ -36,17 +34,16 @@

/obj/item/knife/poison/afterattack(mob/living/enemy, mob/user)
location = get_turf(src)
if(istype(enemy))
if(istype(enemy)) // Вызывает рантаймы, если удар пришёлся не на моба, а на какой-то другой объект.
if(enemy.can_inject() && prob(65)) // Проверяет на хардсуиты, модсуиты или еву, я бы ещё сделал чтобы он блокировался сековской бронёй, но увы такими знаниями не обладаю.
reagents.trans_to(enemy, amount_per_transfer_from_this)
else
to_chat(usr, span_warning("[enemy]'s armor is too thick to penetrate."))
if(reagents.has_reagent(/datum/reagent/toxin/initropidril))
to_chat(usr, span_warning("The knife violently explodes in your hand!"))
user.visible_message(span_warning("[user]'s knife violently explodes in their hand!"), ignored_mobs = user)
explosion(location, 0, 0, 1, 1, 0) // Придумайте лучше способ наказывать людей не умеющих читать маленький красный текст, такой взрыв к слову оторвёт руку в 100% случаев, но не введёт в крит при полном здоровье.
qdel(src)

if(enemy.can_inject() && prob(50)) // Проверяет на хардсуиты, модсуиты или еву, я бы ещё сделал чтобы он блокировался сековской бронёй, но увы такими знаниями не обладаю.
reagents.trans_to(enemy, amount_per_transfer_from_this)
else
to_chat(usr, span_warning("[enemy]'s armor is too thick to penetrate."))
return

/obj/item/knife/poison/click_alt(mob/user)
Expand All @@ -62,11 +59,11 @@
/obj/item/knife/poison/examine(mob/user)
. = ..()
. += span_notice("Use in-hand to to increase or decrease its transfer amount. \
Each hit has a 50% chance to transfer reagents from knife's internal storage to your victim, \
Each hit has a 65% chance to transfer reagents from knife's internal storage to your victim, \
however spaceproof armor, like a MOD-suit will prevent reagent transfer.")
. += span_warning("Warning! Adding initropidril will cause the knife to malfunction and cause serious trouble to the user") // Чеклист, 1.Придумать нож с основной идеей - трансфер реагентов в цель, фокусируя своё внимание на initropidril, 2.Понять что данная схема слишком имбалансная 3.Взрывать людей при атаке этим ножём с инитропидрилом 4.Профит?
. += span_warning("Warning! Adding initropidril will cause the knife to malfunction and cause serious trouble to the user")

/obj/item/knife/poison/suicide_act(mob/living/user) // Бтв ничего уникального в этих суисайд актах нет, просто почему бы и нет?
/obj/item/knife/poison/suicide_act(mob/living/user)
if (reagents.has_reagent(/datum/reagent/toxin/initropidril))
user.visible_message(span_suicide("[user] is trying to drink the initropidril from the knife!"))
playsound(src, 'sound/items/drink.ogg', 115, TRUE, -1)
Expand All @@ -75,7 +72,7 @@
explosion(src, 0, 1, 1, 1, 0) // Почему взрыв? — Описано выше.
qdel(src)
spawn(15)
user.gib(DROP_ALL_REMAINS) //Здесь бы ещё по хорошему гибспаунер выставить на тайле, нооо мне очень очень впадлу это делать :)
user.gib(DROP_ALL_REMAINS)
new /obj/effect/gibspawner(get_turf(user)) // gibs не разлетаются по разным тайлам, нужно использовать get_step, но а что если оно в стену улетит?
return BRUTELOSS

Expand All @@ -89,4 +86,4 @@
playsound(src, 'sound/effects/butcher.ogg', 25, TRUE, -1)
spawn(5)
playsound(src, 'sound/effects/wounds/blood3.ogg', 50, TRUE, -1)
return BRUTELOSS // Кто нибудь здесь знаёт как замедлить суисайд_акт? Сделав его не моментальным?
return BRUTELOSS

0 comments on commit 6cd076d

Please sign in to comment.