diff options
author | Ibrahim Hossam <ibrahem.h.basyone@gmail.com> | 2015-07-06 21:38:11 +0200 |
---|---|---|
committer | Ibrahim Hossam <ibrahem.h.basyone@gmail.com> | 2015-07-08 03:26:34 +0200 |
commit | 856b6f1feb25ca74d716a4c22fff650e0ff065a0 (patch) | |
tree | c3035ea753ff2c79c1e969056a120998e4f2dd2c /sql-files | |
parent | 0177783215ae97d08109f7af91a20b78b6a0df90 (diff) | |
download | hercules-856b6f1feb25ca74d716a4c22fff650e0ff065a0.tar.gz hercules-856b6f1feb25ca74d716a4c22fff650e0ff065a0.tar.bz2 hercules-856b6f1feb25ca74d716a4c22fff650e0ff065a0.tar.xz hercules-856b6f1feb25ca74d716a4c22fff650e0ff065a0.zip |
Update Unique ID system to match official now it cover all cash items include stackable ones.
Implement ForceSerial option in Package Item Database to force serial for
any item.
Implement ForceSerial option in item database to force serial for any item.
Implement Merge Client interface to merge stackable items with serial numbers ( check npc/other/item_merge.txt ).
Diffstat (limited to 'sql-files')
-rw-r--r-- | sql-files/item_db.sql | 1 | ||||
-rw-r--r-- | sql-files/item_db2.sql | 1 | ||||
-rw-r--r-- | sql-files/item_db_re.sql | 1 | ||||
-rw-r--r-- | sql-files/main.sql | 1 | ||||
-rw-r--r-- | sql-files/upgrades/2015-07-02--18-14.sql | 56 | ||||
-rw-r--r-- | sql-files/upgrades/index.txt | 3 |
6 files changed, 62 insertions, 1 deletions
diff --git a/sql-files/item_db.sql b/sql-files/item_db.sql index c4f21d41a..8ffb0f51a 100644 --- a/sql-files/item_db.sql +++ b/sql-files/item_db.sql @@ -31,6 +31,7 @@ CREATE TABLE `item_db` ( `refineable` tinyint(1) UNSIGNED DEFAULT NULL, `view` smallint(3) UNSIGNED DEFAULT NULL, `bindonequip` tinyint(1) UNSIGNED DEFAULT NULL, + `forceserial` tinyint(1) unsigned DEFAULT NULL, `buyingstore` tinyint(1) UNSIGNED DEFAULT NULL, `delay` mediumint(9) UNSIGNED DEFAULT NULL, `trade_flag` smallint(4) UNSIGNED DEFAULT NULL, diff --git a/sql-files/item_db2.sql b/sql-files/item_db2.sql index 05a8121e6..b72c60a85 100644 --- a/sql-files/item_db2.sql +++ b/sql-files/item_db2.sql @@ -31,6 +31,7 @@ CREATE TABLE `item_db2` ( `refineable` tinyint(1) UNSIGNED DEFAULT NULL, `view` smallint(3) UNSIGNED DEFAULT NULL, `bindonequip` tinyint(1) UNSIGNED DEFAULT NULL, + `forceserial` tinyint(1) unsigned DEFAULT NULL, `buyingstore` tinyint(1) UNSIGNED DEFAULT NULL, `delay` mediumint(9) UNSIGNED DEFAULT NULL, `trade_flag` smallint(4) UNSIGNED DEFAULT NULL, diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql index 3e5a6c3c4..d06d06ddc 100644 --- a/sql-files/item_db_re.sql +++ b/sql-files/item_db_re.sql @@ -31,6 +31,7 @@ CREATE TABLE `item_db` ( `refineable` tinyint(1) UNSIGNED DEFAULT NULL, `view` smallint(3) UNSIGNED DEFAULT NULL, `bindonequip` tinyint(1) UNSIGNED DEFAULT NULL, + `forceserial` tinyint(1) unsigned DEFAULT NULL, `buyingstore` tinyint(1) UNSIGNED DEFAULT NULL, `delay` mediumint(9) UNSIGNED DEFAULT NULL, `trade_flag` smallint(4) UNSIGNED DEFAULT NULL, diff --git a/sql-files/main.sql b/sql-files/main.sql index a00a3319b..646805d1b 100644 --- a/sql-files/main.sql +++ b/sql-files/main.sql @@ -808,6 +808,7 @@ INSERT INTO `sql_updates` (`timestamp`) VALUES (1398477600); -- 2014-04-26--10-0 INSERT INTO `sql_updates` (`timestamp`) VALUES (1400256139); -- 2014-05-17--00-06.sql INSERT INTO `sql_updates` (`timestamp`) VALUES (1409590380); -- 2014-09-01--16-53.sql INSERT INTO `sql_updates` (`timestamp`) VALUES (1414975503); -- 2014-11-03--00-45.sql +INSERT INTO `sql_updates` (`timestamp`) VALUES (1435860840); -- 2015-07-02--18-14.sql -- -- Table structure for table `sstatus` diff --git a/sql-files/upgrades/2015-07-02--18-14.sql b/sql-files/upgrades/2015-07-02--18-14.sql new file mode 100644 index 000000000..49094a5df --- /dev/null +++ b/sql-files/upgrades/2015-07-02--18-14.sql @@ -0,0 +1,56 @@ +#1435860840 + +DELIMITER $$ + +DROP PROCEDURE IF EXISTS alter_if_not_exists $$ +DROP PROCEDURE IF EXISTS alter_if_exists $$ + +CREATE PROCEDURE alter_if_not_exists(my_table TINYTEXT, my_column TINYTEXT, my_command TINYTEXT, my_predicate TEXT) +BEGIN + set @dbname = DATABASE(); + IF EXISTS ( + SELECT * FROM information_schema.TABLES + WHERE TABLE_SCHEMA = @dbname + AND TABLE_NAME = my_table + ) AND NOT EXISTS ( + SELECT * FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = @dbname + AND TABLE_NAME = my_table + AND COLUMN_NAME = my_column + ) + THEN + SET @q = CONCAT('ALTER TABLE ', @dbname, '.', my_table, ' ', + my_command, ' `', my_column, '` ', my_predicate); + PREPARE STMT FROM @q; + EXECUTE STMT; + END IF; + +END $$ + +CREATE PROCEDURE alter_if_exists(my_table TINYTEXT, my_column TINYTEXT, my_command TINYTEXT, my_predicate TEXT) +BEGIN + set @dbname = DATABASE(); + IF EXISTS ( + SELECT * FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = @dbname + AND TABLE_NAME = my_table + AND COLUMN_NAME = my_column + ) + THEN + SET @q = CONCAT('ALTER TABLE ', @dbname, '.', my_table, ' ', + my_command, ' `', my_column, '` ', my_predicate); + PREPARE STMT FROM @q; + EXECUTE STMT; + END IF; + +END $$ + +CALL alter_if_not_exists('item_db', 'forceserial', 'ADD COLUMN', 'TINYINT(1) UNSIGNED DEFAULT NULL AFTER `bindonequip`') $$ +CALL alter_if_not_exists('item_db2', 'forceserial', 'ADD COLUMN', 'TINYINT(1) UNSIGNED DEFAULT NULL AFTER `bindonequip`') $$ + +DROP PROCEDURE IF EXISTS alter_if_not_exists $$ +DROP PROCEDURE IF EXISTS alter_if_exists $$ + +DELIMITER ';' + +INSERT INTO `sql_updates` (`timestamp`) VALUES (1435860840); diff --git a/sql-files/upgrades/index.txt b/sql-files/upgrades/index.txt index 13495c82d..0e6917f16 100644 --- a/sql-files/upgrades/index.txt +++ b/sql-files/upgrades/index.txt @@ -24,4 +24,5 @@ 2014-04-26--10-00.sql 2014-05-17--00-06.sql 2014-09-01--16-53.sql -2014-11-03--00-45.sql
\ No newline at end of file +2014-11-03--00-45.sql +2015-07-02--18-14.sql
\ No newline at end of file |