Fix mecha mouse pointer issues (#38213)
* Fix mecha mouse pointer issues * Migrate ranged ability mouse pointers to new system
This commit is contained in:
@@ -68,27 +68,19 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) //needed for th
|
||||
return
|
||||
user.ranged_ability = src
|
||||
user.click_intercept = src
|
||||
add_mousepointer(user.client)
|
||||
user.update_mouse_pointer()
|
||||
ranged_ability_user = user
|
||||
if(msg)
|
||||
to_chat(ranged_ability_user, msg)
|
||||
active = TRUE
|
||||
update_icon()
|
||||
|
||||
/obj/effect/proc_holder/proc/add_mousepointer(client/C)
|
||||
if(C && ranged_mousepointer && C.mouse_pointer_icon == initial(C.mouse_pointer_icon))
|
||||
C.mouse_pointer_icon = ranged_mousepointer
|
||||
|
||||
/obj/effect/proc_holder/proc/remove_mousepointer(client/C)
|
||||
if(C && ranged_mousepointer && C.mouse_pointer_icon == ranged_mousepointer)
|
||||
C.mouse_pointer_icon = initial(C.mouse_pointer_icon)
|
||||
|
||||
/obj/effect/proc_holder/proc/remove_ranged_ability(msg)
|
||||
if(!ranged_ability_user || !ranged_ability_user.client || (ranged_ability_user.ranged_ability && ranged_ability_user.ranged_ability != src)) //To avoid removing the wrong ability
|
||||
return
|
||||
ranged_ability_user.ranged_ability = null
|
||||
ranged_ability_user.click_intercept = null
|
||||
remove_mousepointer(ranged_ability_user.client)
|
||||
ranged_ability_user.update_mouse_pointer()
|
||||
if(msg)
|
||||
to_chat(ranged_ability_user, msg)
|
||||
ranged_ability_user = null
|
||||
|
||||
Reference in New Issue
Block a user