mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-11 15:15:32 +01:00
d8c1932cb9
* Laser Eyes * Update dna.dm * Mecha * Update positive_genes.dm * These * These 2 * yeh * Rest of these * Update turf.dm * Update food.dm * Some moar * mooove * Update vorestation.dme * Update burning.dm * firesuit * flags * HYPNOCOLOR * xd * no filter * dc * Update ore_bag.dm * Update misc.dm * Update misc.dm
140 lines
4.4 KiB
Plaintext
140 lines
4.4 KiB
Plaintext
/obj/item/proc/describe_power()
|
|
switch(force)
|
|
if(0)
|
|
return "a negligable amount of"
|
|
if(1 to 2)
|
|
return "a very small amount of"
|
|
if(3 to 5)
|
|
return "a small amount of"
|
|
if(6 to 10)
|
|
return "a modest amount of"
|
|
if(11 to 15)
|
|
return "a moderate amount of"
|
|
if(16 to 20)
|
|
return "a respectable amount of"
|
|
if(21 to 35)
|
|
return "a serious amount of"
|
|
if(36 to 50)
|
|
return "a very serious amount of"
|
|
if(51 to 100)
|
|
return "a very lethal amount of"
|
|
if(101 to 2000)
|
|
return "a truly ruinous amount of"
|
|
|
|
/obj/item/proc/describe_throwpower()
|
|
switch(throwforce)
|
|
if(0)
|
|
return "a negligable amount of"
|
|
if(1 to 2)
|
|
return "a very small amount of"
|
|
if(3 to 5)
|
|
return "a small amount of"
|
|
if(6 to 10)
|
|
return "a modest amount of"
|
|
if(11 to 15)
|
|
return "a moderate amount of"
|
|
if(16 to 20)
|
|
return "a respectable amount of"
|
|
if(21 to 35)
|
|
return "a serious amount of"
|
|
if(36 to 50)
|
|
return "a very serious amount of"
|
|
if(51 to 100)
|
|
return "a very lethal amount of"
|
|
if(101 to 2000)
|
|
return "a truly ruinous amount of"
|
|
|
|
/obj/item/proc/describe_penetration()
|
|
switch(armor_penetration)
|
|
if(0)
|
|
return "cannot pierce armor"
|
|
if(1 to 20)
|
|
return "barely pierces armor"
|
|
if(21 to 30)
|
|
return "slightly pierces armor"
|
|
if(31 to 40)
|
|
return "reliably pierces lighter armors"
|
|
if(41 to 50)
|
|
return "pierces standard-issue armor reliably"
|
|
if(51 to 60)
|
|
return "pierces most armor reliably"
|
|
if(61 to 70)
|
|
return "pierces a great deal of armor"
|
|
if(71 to 80)
|
|
return "pierces the vast majority of armor"
|
|
if(81 to 99)
|
|
return "almost completely pierces all armor"
|
|
if(100 to 1000)
|
|
return "completely and utterly pierces all armor"
|
|
|
|
/obj/item/proc/describe_speed()
|
|
if(attackspeed > DEFAULT_ATTACK_COOLDOWN)
|
|
return "a slow attack speed"
|
|
else if(attackspeed < DEFAULT_ATTACK_COOLDOWN)
|
|
return "a high attack speed"
|
|
else
|
|
return "an average attack speed"
|
|
|
|
/atom/proc/examine_tags()
|
|
var/list/info_stats = list()
|
|
if(abstract_type == type)
|
|
info_stats += span_hypnophrase("This is an abstract concept, you should report this to a strange entity called GITHUB!")
|
|
|
|
if(resistance_flags & INDESTRUCTIBLE)
|
|
info_stats += "It is extremely robust! It'll probably withstand anything that could happen to it!"
|
|
else
|
|
if(resistance_flags & LAVA_PROOF)
|
|
info_stats += span_info("It is made of an extremely heat-resistant material, it'd probably be able to withstand lava!<br>")
|
|
if(resistance_flags & (ACID_PROOF | UNACIDABLE))
|
|
info_stats += span_info("It looks pretty robust! It'd probably be able to withstand acid!<br>")
|
|
if(resistance_flags & FREEZE_PROOF)
|
|
info_stats += span_info("It is made of cold-resistant materials.<br>")
|
|
if(resistance_flags & FIRE_PROOF)
|
|
info_stats += span_info("It is made of fire-retardant materials.<br>")
|
|
if(resistance_flags & SHUTTLE_CRUSH_PROOF)
|
|
info_stats += span_info("It is extremely solid. It should be able to withstand being run over by a shuttle!<br>")
|
|
if(resistance_flags & BOMB_PROOF)
|
|
info_stats += span_info("It looks like it could survive an explosion!<br>")
|
|
if(resistance_flags & FLAMMABLE)
|
|
info_stats += span_info("It looks like it could easily catch on fire.")
|
|
return info_stats
|
|
|
|
// if(flags_1 & HOLOGRAM_1)
|
|
// .["holographic"] = "It looks like a hologram."
|
|
|
|
//SEND_SIGNAL(src, COMSIG_ATOM_EXAMINE_TAGS, user, .)
|
|
|
|
/obj/item/get_description_info(list/additional_information)
|
|
var/list/weapon_stats = list()
|
|
|
|
if(LAZYLEN(additional_information))
|
|
weapon_stats += additional_information
|
|
|
|
if(description_info)
|
|
weapon_stats += description_info
|
|
|
|
if(force)
|
|
weapon_stats += "If used in melee, it deals [describe_power()] [sharp ? "sharp" : "blunt"] damage, [describe_penetration()], and has [describe_speed()]."
|
|
if(throwforce)
|
|
weapon_stats += "If thrown, it would deal [describe_throwpower()] [sharp ? "sharp" : "blunt"] damage."
|
|
if(can_cleave)
|
|
weapon_stats += "It is capable of hitting multiple targets with a single swing."
|
|
if(reach > 1)
|
|
weapon_stats += "It can attack targets up to [reach] tiles away, and can attack over certain objects."
|
|
|
|
weapon_stats += examine_tags()
|
|
|
|
if(weapon_stats.len < 1)
|
|
return ""
|
|
|
|
var/assembled_string = ""
|
|
for(var/index in 1 to weapon_stats.len)
|
|
var/msg = weapon_stats[index]
|
|
if(index != weapon_stats.len)
|
|
msg += "\n"
|
|
assembled_string += msg
|
|
if(msg == description_info) //keeping the formatting as identical as I can
|
|
assembled_string += "<br>"
|
|
|
|
return assembled_string
|