Merge pull request #15836 from Runa-Dacino/colormateportchomp

ports matrix recolouring, Ports Colourmate update, ports simple mob/robot recolouring  from CHOMP
This commit is contained in:
Casey
2024-03-17 14:34:52 -04:00
committed by GitHub
25 changed files with 2682 additions and 226 deletions
@@ -113,6 +113,8 @@
/mob/living/proc/lend_prey_control
)
var/has_recoloured = FALSE
/mob/living/silicon/robot/New(loc, var/unfinished = 0)
spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, src)
@@ -174,6 +176,8 @@
hud_list[IMPTRACK_HUD] = gen_hud_image('icons/mob/hud.dmi', src, "hudblank", plane = PLANE_CH_IMPTRACK)
hud_list[SPECIALROLE_HUD] = gen_hud_image('icons/mob/hud.dmi', src, "hudblank", plane = PLANE_CH_SPECIAL)
/mob/living/silicon/robot/LateInitialize()
. = ..()
update_icon()
@@ -818,6 +822,18 @@
module.Destroy()
module = null
updatename("Default")
has_recoloured = FALSE
/mob/living/silicon/robot/proc/ColorMate()
set name = "Recolour Module"
set category = "Robot Commands"
set desc = "Allows to recolour once."
if(!has_recoloured)
var/datum/ColorMate/recolour = new /datum/ColorMate(usr)
recolour.tgui_interact(usr)
return
to_chat(usr, "You've already recoloured yourself once. Ask for a module reset for another.")
/mob/living/silicon/robot/attack_hand(mob/user)
@@ -1253,10 +1269,14 @@
/mob/living/silicon/robot/proc/add_robot_verbs()
src.verbs |= robot_verbs_default
src.verbs |= silicon_subsystems
if(config.allow_robot_recolor)
src.verbs |= /mob/living/silicon/robot/proc/ColorMate
/mob/living/silicon/robot/proc/remove_robot_verbs()
src.verbs -= robot_verbs_default
src.verbs -= silicon_subsystems
if(config.allow_robot_recolor)
src.verbs |= /mob/living/silicon/robot/proc/ColorMate
// Uses power from cyborg's cell. Returns 1 on success or 0 on failure.
// Properly converts using CELLRATE now! Amount is in Joules.
@@ -174,6 +174,8 @@
var/injury_enrages = FALSE // Do injuries enrage (aka strengthen) our mob? If yes, we'll interpret how hurt we are differently.
// VOREStation Add End
var/has_recoloured = FALSE
/mob/living/simple_mob/Initialize()
verbs -= /mob/verb/observe
health = maxHealth
@@ -193,6 +195,10 @@
if(organ_names)
organ_names = GET_DECL(organ_names)
if(config.allow_simple_mob_recolor)
verbs |= /mob/living/simple_mob/proc/ColorMate
return ..()
/mob/living/simple_mob/Destroy()
@@ -337,3 +343,14 @@
. = ..() // Calling parent here, actually updating our mob on how hurt we are.
// VOREStation Add End
/mob/living/simple_mob/proc/ColorMate()
set name = "Recolour"
set category = "Abilities"
set desc = "Allows to recolour once."
if(!has_recoloured)
var/datum/ColorMate/recolour = new /datum/ColorMate(usr)
recolour.tgui_interact(usr)
return
to_chat(usr, "You've already recoloured yourself once. You are only allowed to recolour yourself once during a around.")
+4 -2
View File
@@ -85,10 +85,12 @@
/proc/is_admin(var/mob/user)
return check_rights(R_ADMIN|R_EVENT, 0, user) != 0
/**
* Moved into its own file as part of port from CHOMP.
*
/proc/hsl2rgb(h, s, l)
return //TODO: Implement
*/
/*
Miss Chance
*/