icons should exist
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
#define JOB_REPORT_MENU_FAIL_REASON_TRACKING_DISABLED 1
|
||||
#define JOB_REPORT_MENU_FAIL_REASON_NO_RECORDS 2
|
||||
|
||||
/datum/job_report_menu
|
||||
var/client/owner
|
||||
|
||||
/datum/job_report_menu/New(client/owner, mob/viewer)
|
||||
src.owner = owner
|
||||
ui_interact(viewer)
|
||||
|
||||
/datum/job_report_menu/ui_state()
|
||||
return GLOB.always_state
|
||||
|
||||
/datum/job_report_menu/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if (!ui)
|
||||
ui = new(user, src, "TrackedPlaytime")
|
||||
ui.open()
|
||||
|
||||
/datum/job_report_menu/ui_static_data()
|
||||
if (!CONFIG_GET(flag/use_exp_tracking))
|
||||
return list("failReason" = JOB_REPORT_MENU_FAIL_REASON_TRACKING_DISABLED)
|
||||
|
||||
var/list/play_records = owner.prefs.exp
|
||||
if (!play_records.len)
|
||||
owner.set_exp_from_db()
|
||||
play_records = owner.prefs.exp
|
||||
if (!play_records.len)
|
||||
return list("failReason" = JOB_REPORT_MENU_FAIL_REASON_NO_RECORDS)
|
||||
|
||||
var/list/data = list()
|
||||
data["jobPlaytimes"] = list()
|
||||
data["specialPlaytimes"] = list()
|
||||
|
||||
for (var/job_name in SSjob.name_occupations)
|
||||
var/playtime = play_records[job_name] ? text2num(play_records[job_name]) : 0
|
||||
data["jobPlaytimes"][job_name] = playtime
|
||||
|
||||
for (var/special_name in GLOB.exp_specialmap[EXP_TYPE_SPECIAL])
|
||||
var/playtime = play_records[special_name] ? text2num(play_records[special_name]) : 0
|
||||
data["specialPlaytimes"][special_name] = playtime
|
||||
|
||||
data["livingTime"] = play_records[EXP_TYPE_LIVING]
|
||||
data["ghostTime"] = play_records[EXP_TYPE_GHOST]
|
||||
|
||||
return data
|
||||
|
||||
#undef JOB_REPORT_MENU_FAIL_REASON_TRACKING_DISABLED
|
||||
#undef JOB_REPORT_MENU_FAIL_REASON_NO_RECORDS
|
||||
Reference in New Issue
Block a user