Files
CHOMPStation2/code/modules/tools/tool_quality.dm
Casey 5acdc79e6a Merge pull request #12493 from VOREStation/upstream-merge-8443
[MIRROR] Drill quality now affects mining speed
2022-03-20 22:31:15 +00:00

40 lines
1.1 KiB
Plaintext

/obj/item
var/list/tool_qualities = list()
/obj/item/examine(mob/user)
. = ..()
for(var/qual in tool_qualities)
var/msg
switch(tool_qualities[qual])
if(TOOL_QUALITY_WORST)
msg += "very poor "
if(TOOL_QUALITY_POOR)
msg += "poor "
if(TOOL_QUALITY_MEDIOCRE)
msg += "mediocre "
if(TOOL_QUALITY_STANDARD)
msg += ""
if(TOOL_QUALITY_DECENT)
msg += "decent "
if(TOOL_QUALITY_GOOD)
msg += "pretty good "
if(TOOL_QUALITY_BEST)
msg += "very good "
. += "It looks like it can be used as a [msg][qual]."
/atom/proc/get_tool_quality(tool_quality)
return TOOL_QUALITY_NONE
/// Used to check for a specific tool quality on an item.
/// Returns the value of `tool_quality` if it is found, else 0.
/obj/item/get_tool_quality(quality)
return LAZYACCESS(tool_qualities, quality)
/obj/item/proc/set_tool_quality(tool, quality)
tool_qualities[tool] = quality
/obj/item/proc/get_tool_speed(quality)
return LAZYACCESS(tool_qualities, quality)
/obj/item/proc/get_use_time(quality, base_time)
return LAZYACCESS(tool_qualities, quality) ? base_time / tool_qualities[quality] : -1