From 6ae2001e91eaaeb8b72031e96f88820711bb1ca0 Mon Sep 17 00:00:00 2001 From: Yohann Ferreira Date: Fri, 9 Sep 2011 02:35:25 +0200 Subject: Add persistent items support based on seeseekey's work. Also made some random changes where useful, including: - Code formatting fixes, - Design fix about the fact that only the game config option should be checked. - Fixed the size of the values sent and receive to follow the rest of the development. - Fixed variables names to make them show what they are, and not why they are used. Resolves: Mana-Mantis #142. --- src/sql/sqlite/createTables.sql | 14 +++++++++++++- src/sql/sqlite/updates/update_16_to_17.sql | 16 ++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 src/sql/sqlite/updates/update_16_to_17.sql (limited to 'src/sql/sqlite') diff --git a/src/sql/sqlite/createTables.sql b/src/sql/sqlite/createTables.sql index f353b8e..2d7360d 100644 --- a/src/sql/sqlite/createTables.sql +++ b/src/sql/sqlite/createTables.sql @@ -173,6 +173,18 @@ CREATE INDEX mana_item_attributes_item ON mana_item_attributes ( item_id ); ----------------------------------------------------------------------------- +CREATE TABLE mana_floor_items +( + id INTEGER PRIMARY KEY, + map_id INTEGER NOT NULL, + item_id INTEGER NOT NULL, + amount INTEGER NOT NULL, + pos_x INTEGER NOT NULL, + pos_y INTEGER NOT NULL +); + +----------------------------------------------------------------------------- + CREATE TABLE mana_char_equips ( id INTEGER PRIMARY KEY, @@ -407,7 +419,7 @@ AS INSERT INTO mana_world_states VALUES('accountserver_startup',NULL,NULL, strftime('%s','now')); INSERT INTO mana_world_states VALUES('accountserver_version',NULL,NULL, strftime('%s','now')); -INSERT INTO mana_world_states VALUES('database_version', NULL,'16', strftime('%s','now')); +INSERT INTO mana_world_states VALUES('database_version', NULL,'17', strftime('%s','now')); -- all known transaction codes diff --git a/src/sql/sqlite/updates/update_16_to_17.sql b/src/sql/sqlite/updates/update_16_to_17.sql new file mode 100644 index 0000000..769c26d --- /dev/null +++ b/src/sql/sqlite/updates/update_16_to_17.sql @@ -0,0 +1,16 @@ +-- Create the new floor item table +CREATE TABLE mana_floor_items +( + id INTEGER PRIMARY KEY, + map_id INTEGER NOT NULL, + item_id INTEGER NOT NULL, + amount INTEGER NOT NULL, + pos_x INTEGER NOT NULL, + pos_y INTEGER NOT NULL +); + +-- Update the database version, and set date of update +UPDATE mana_world_states + SET value = '17', + moddate = strftime('%s','now') + WHERE state_name = 'database_version'; -- cgit