From 27ee01cee19949bd7d839d31698ff08917ae9b75 Mon Sep 17 00:00:00 2001 From: AnturK Date: Tue, 10 Dec 2019 05:59:18 +0100 Subject: [PATCH] Adds name and desc to achievement metadata (#48146) * Adds name and desc to achievement metadata * Name 64, Desc 512 --- SQL/database_changelog.txt | 15 ++++++++++++--- SQL/tgstation_schema.sql | 2 ++ SQL/tgstation_schema_prefixed.sql | 2 ++ code/__DEFINES/subsystems.dm | 2 +- code/datums/achievements/_awards.dm | 4 ++-- 5 files changed, 19 insertions(+), 6 deletions(-) diff --git a/SQL/database_changelog.txt b/SQL/database_changelog.txt index a78fd062b8f..680acb2ae08 100644 --- a/SQL/database_changelog.txt +++ b/SQL/database_changelog.txt @@ -1,13 +1,22 @@ Any time you make a change to the schema files, remember to increment the database schema version. Generally increment the minor number, major should be reserved for significant changes to the schema. Both values go up to 255. -The latest database version is 5.4; The query to update the schema revision table is: +The latest database version is 5.6; The query to update the schema revision table is: -INSERT INTO `schema_revision` (`major`, `minor`) VALUES (5, 5); +INSERT INTO `schema_revision` (`major`, `minor`) VALUES (5, 6); or -INSERT INTO `SS13_schema_revision` (`major`, `minor`) VALUES (5, 5); +INSERT INTO `SS13_schema_revision` (`major`, `minor`) VALUES (5, 6); In any query remember to add a prefix to the table names if you use one. + +----------------------------------------------------- + +Version 5.6, 6 December 2019 by Anturke +Added achievement_name and achievement_description columns to achievement_metadata table. + + +ALTER TABLE `achievement_metadata` ADD COLUMN (`achievement_name` VARCHAR(64) NULL DEFAULT NULL, `achievement_description` VARCHAR(512) NULL DEFAULT NULL); + ----------------------------------------------------- Version 5.5, 26 October 2019 by Anturke diff --git a/SQL/tgstation_schema.sql b/SQL/tgstation_schema.sql index e89a3a99528..7a5db181e84 100644 --- a/SQL/tgstation_schema.sql +++ b/SQL/tgstation_schema.sql @@ -532,6 +532,8 @@ CREATE TABLE `achievement_metadata` ( `achievement_key` VARCHAR(32) NOT NULL, `achievement_version` SMALLINT UNSIGNED NOT NULL DEFAULT 0, `achievement_type` enum('achievement','score','award') NULL DEFAULT NULL, + `achievement_name` VARCHAR(64) NULL DEFAULT NULL, + `achievement_description` VARCHAR(512) NULL DEFAULT NULL, PRIMARY KEY (`achievement_key`) ) ENGINE=InnoDB; diff --git a/SQL/tgstation_schema_prefixed.sql b/SQL/tgstation_schema_prefixed.sql index 4e21ab06fd0..3122bab69fb 100644 --- a/SQL/tgstation_schema_prefixed.sql +++ b/SQL/tgstation_schema_prefixed.sql @@ -532,6 +532,8 @@ CREATE TABLE `SS13_achievement_metadata` ( `achievement_key` VARCHAR(32) NOT NULL, `achievement_version` SMALLINT UNSIGNED NOT NULL DEFAULT 0, `achievement_type` enum('achievement','score','award') NULL DEFAULT NULL, + `achievement_name` VARCHAR(64) NULL DEFAULT NULL, + `achievement_description` VARCHAR(512) NULL DEFAULT NULL, PRIMARY KEY (`achievement_key`) ) ENGINE=InnoDB; diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 67014a47822..6907a153bd6 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -20,7 +20,7 @@ * * make sure you add an update to the schema_version stable in the db changelog */ -#define DB_MINOR_VERSION 5 +#define DB_MINOR_VERSION 6 //! ## Timing subsystem diff --git a/code/datums/achievements/_awards.dm b/code/datums/achievements/_awards.dm index db2added967..0edf24a922d 100644 --- a/code/datums/achievements/_awards.dm +++ b/code/datums/achievements/_awards.dm @@ -9,7 +9,7 @@ ///What ID do we use in db, limited to 32 characters var/database_id //Bump this up if you're changing outdated table identifier and/or achievement type - var/achievement_version = 1 + var/achievement_version = 2 //Value returned on db connection failure, in case we want to differ 0 and nonexistent later on var/default_value = FALSE @@ -30,7 +30,7 @@ return list("ckey" = "'[sanitizeSQL(key)]'","achievement_key" = "'[sanitizeSQL(database_id)]'", "value" = "'[sanitizeSQL(value)]'") /datum/award/proc/get_metadata_row() - return list("achievement_key" = "'[sanitizeSQL(database_id)]'", "achievement_version" = "'[sanitizeSQL(achievement_version)]'", "achievement_type" = "'award'") + return list("achievement_key" = "'[sanitizeSQL(database_id)]'", "achievement_version" = "'[sanitizeSQL(achievement_version)]'", "achievement_type" = "'award'", "achievement_name" = "'[sanitizeSQL(name)]'", "achievement_description" = "'[sanitizeSQL(desc)]'") ///Get raw numerical achievement value from the database /datum/award/proc/get_raw_value(key)