mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-29 15:08:02 +01:00
Admin secondary goals will now unregister when deleted/completed. (#25171)
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
This commit is contained in:
co-authored by
FunnyMan3595
parent
bf356eaadb
commit
4949f0b71e
@@ -98,10 +98,12 @@
|
||||
SSticker.mode.secondary_goals -= src
|
||||
message_admins("[key_name_admin(usr)] removed secondary goal [src] ([admin_desc])")
|
||||
log_admin("[key_name_admin(usr)] removed secondary goal [src] ([admin_desc])")
|
||||
tracker.unregister(SSshuttle.supply)
|
||||
qdel(src)
|
||||
usr.client.modify_goals()
|
||||
else if(href_list["mark_complete"])
|
||||
completed = 1
|
||||
tracker.unregister(SSshuttle.supply)
|
||||
usr.client.modify_goals()
|
||||
message_admins("[key_name_admin(usr)] marked secondary goal [src] ([admin_desc]) as complete")
|
||||
log_admin("[key_name_admin(usr)] marked secondary goal [src] ([admin_desc]) as complete")
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
var/datum/secondary_goal_progress/real_progress
|
||||
var/datum/secondary_goal_progress/temporary_progress
|
||||
var/datum/station_goal/secondary/goal
|
||||
var/registered = FALSE
|
||||
|
||||
/datum/secondary_goal_tracker/New(datum/station_goal/secondary/goal_in, datum/secondary_goal_progress/progress)
|
||||
goal = goal_in
|
||||
@@ -11,6 +12,8 @@
|
||||
/datum/secondary_goal_tracker/proc/reset()
|
||||
real_progress = new real_progress.type(goal)
|
||||
temporary_progress = real_progress.Copy()
|
||||
if(!registered)
|
||||
register(SSshuttle.supply)
|
||||
|
||||
/datum/secondary_goal_tracker/proc/register(shuttle)
|
||||
RegisterSignal(shuttle, COMSIG_CARGO_BEGIN_SCAN, PROC_REF(reset_tempporary_progress))
|
||||
@@ -19,6 +22,7 @@
|
||||
RegisterSignal(shuttle, COMSIG_CARGO_DO_PRIORITY_SELL, PROC_REF(update_progress))
|
||||
RegisterSignal(shuttle, COMSIG_CARGO_SEND_ERROR, PROC_REF(update_progress))
|
||||
RegisterSignal(shuttle, COMSIG_CARGO_END_SELL, PROC_REF(check_for_completion))
|
||||
registered = TRUE
|
||||
|
||||
/datum/secondary_goal_tracker/proc/unregister(shuttle)
|
||||
UnregisterSignal(shuttle, COMSIG_CARGO_BEGIN_SCAN)
|
||||
@@ -27,6 +31,7 @@
|
||||
UnregisterSignal(shuttle, COMSIG_CARGO_DO_PRIORITY_SELL)
|
||||
UnregisterSignal(shuttle, COMSIG_CARGO_SEND_ERROR)
|
||||
UnregisterSignal(shuttle, COMSIG_CARGO_END_SELL)
|
||||
registered = FALSE
|
||||
|
||||
// Resets the temporary porgress to match the real progress.
|
||||
/datum/secondary_goal_tracker/proc/reset_tempporary_progress(obj/docking_port/mobile/supply/shuttle)
|
||||
|
||||
Reference in New Issue
Block a user