Adds achievement datums (#47058)

* First step

* achievements part 1

* epic

* done

* epic

* removes test datums

* adds minecraft achievement

* asss

* ass 2

* ass

* fix

* UPGRADE

* back-end partially

* back-end

* woops

* epic

* linted

* Achievements (#19)

* initialize SSachievements lists

* achievement ui actually tries to load

* witty commit description

* menu

* done

* done

* jesus christ

* ok linter

* Update code/datums/achievements/_achievement_data.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* Update _achievement_data.dm

* Update misc_achievements.dm

* Update achievements.dm

* Update

* And a space, goddamit!

* Rebuild tgui

* woops

* bruh moemnet

* ok conflicts

* finally
This commit is contained in:
Qustinnus
2019-10-26 05:57:42 -07:00
committed by Rob Bailey
co-authored by Emmett Gaines
parent 6468553911
commit 8a01398814
37 changed files with 584 additions and 166 deletions
+6
View File
@@ -587,6 +587,12 @@ GLOBAL_LIST_EMPTY(asset_datums)
"none_button.png" = 'html/none_button.png',
)
/datum/asset/spritesheet/simple/achievements
name ="achievements"
assets = list(
"default" = 'icons/UI_Icons/Achievements/default.png'
)
/datum/asset/spritesheet/simple/pills
name ="pills"
assets = list(
+7 -1
View File
@@ -272,7 +272,7 @@ GLOBAL_LIST_EMPTY(external_rsc_urls)
player_details = GLOB.player_details[ckey]
player_details.byond_version = full_version
else
player_details = new
player_details = new(ckey)
player_details.byond_version = full_version
GLOB.player_details[ckey] = player_details
@@ -465,6 +465,8 @@ GLOBAL_LIST_EMPTY(external_rsc_urls)
send2irc("Server", "[cheesy_message] (No admins online)")
player_details.achievements.save()
GLOB.ahelp_tickets.ClientLogout(src)
GLOB.directory -= ckey
GLOB.clients -= src
@@ -914,3 +916,7 @@ GLOBAL_LIST_EMPTY(external_rsc_urls)
screen -= S
qdel(S)
char_render_holders = null
/client/proc/give_award(achievement_type, mob/user)
return player_details.achievements.unlock(achievement_type, mob/user)
+4
View File
@@ -5,6 +5,10 @@
var/list/post_logout_callbacks = list()
var/list/played_names = list() //List of names this key played under this round
var/byond_version = "Unknown"
var/datum/achievement_data/achievements
/datum/player_details/New(key)
achievements = new(key)
/proc/log_played_names(ckey, ...)
if(!ckey)