mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-24 00:51:26 +00:00
a small addition
This commit is contained in:
@@ -1,23 +1,25 @@
|
||||
/obj/item/modular_computer/examine(var/mob/user)
|
||||
/obj/item/modular_computer/examine(mob/user)
|
||||
..()
|
||||
if(Adjacent(user))
|
||||
to_chat(user, FONT_SMALL(SPAN_NOTICE("It contains the following hardware:")))
|
||||
for(var/CH in get_all_components())
|
||||
to_chat(user, FONT_SMALL(SPAN_NOTICE(" - [capitalize_first_letters(CH)]")))
|
||||
if(damage > broken_damage)
|
||||
to_chat(user, "<span class='danger'>It is heavily damaged!</span>")
|
||||
to_chat(user, SPAN_DANGER("It is heavily damaged!"))
|
||||
else if(damage)
|
||||
to_chat(user, "It is damaged.")
|
||||
to_chat(user, SPAN_WARNING("It is damaged."))
|
||||
|
||||
/obj/item/modular_computer/proc/break_apart()
|
||||
visible_message("\The [src] breaks apart!")
|
||||
var/turf/newloc = get_turf(src)
|
||||
new /obj/item/stack/material/steel(newloc, round(steel_sheet_cost/2))
|
||||
visible_message(SPAN_WARNING("\The [src] breaks apart!"))
|
||||
new /obj/item/stack/material/steel(get_turf(src), round(steel_sheet_cost/2))
|
||||
for(var/obj/item/computer_hardware/H in get_all_components())
|
||||
uninstall_component(null, H)
|
||||
H.forceMove(newloc)
|
||||
H.forceMove(get_turf(src))
|
||||
if(prob(25))
|
||||
H.take_damage(rand(10,30))
|
||||
|
||||
H.take_damage(rand(10, 30))
|
||||
qdel(src)
|
||||
|
||||
/obj/item/modular_computer/proc/take_damage(var/amount, var/component_probability, var/damage_casing = 1, var/randomize = 1)
|
||||
/obj/item/modular_computer/proc/take_damage(var/amount, var/component_probability, var/damage_casing = TRUE, var/randomize = TRUE)
|
||||
if(randomize)
|
||||
// 75%-125%, rand() works with integers, apparently.
|
||||
amount *= (rand(75, 125) / 100.0)
|
||||
@@ -42,7 +44,7 @@
|
||||
|
||||
// EMPs are similar to explosions, but don't cause physical damage to the casing. Instead they screw up the components
|
||||
/obj/item/modular_computer/emp_act(var/severity)
|
||||
take_damage(rand(100, 200) / severity, 50 / severity, 0)
|
||||
take_damage(rand(100, 200) / severity, 50 / severity, FALSE)
|
||||
|
||||
// "Stun" weapons can cause minor damage to components (short-circuits?)
|
||||
// "Burn" damage is equally strong against internal components and exterior casing
|
||||
@@ -54,4 +56,4 @@
|
||||
if(PAIN)
|
||||
take_damage(Proj.damage, Proj.damage / 3, 0)
|
||||
if(BURN)
|
||||
take_damage(Proj.damage, Proj.damage / 1.5)
|
||||
take_damage(Proj.damage, Proj.damage / 1.5)
|
||||
Reference in New Issue
Block a user