[8098] Support uint32 spell ids in code.

* Propertly work with uint32 spell ids in player action bar
* Fix in same time bug with not save equipment set button with id==0
* Merge misc field in character_action and playercreateinfo_action to action field as 3 byte
* Propertly load uint32 spell ids from character_spell
* Fixed types for some pet/creature related structure for spell id storing.
This commit is contained in:
VladimirMangos 2009-06-30 07:37:36 +04:00 committed by tomrus88
parent f1284882a9
commit c9fbd99579
21 changed files with 638 additions and 565 deletions

View file

@ -0,0 +1,10 @@
ALTER TABLE character_db_version CHANGE COLUMN required_8072_02_characters_characters required_8098_01_characters_character_action bit;
ALTER TABLE character_action
CHANGE COLUMN action action int(11) unsigned NOT NULL default '0';
UPDATE character_action
SET action = action | ( misc < 16 );
ALTER TABLE character_action
DROP COLUMN misc;

View file

@ -0,0 +1,10 @@
ALTER TABLE db_version CHANGE COLUMN required_8071_01_mangos_command required_8098_02_mangos_playercreateinfo_action bit;
ALTER TABLE playercreateinfo_action
CHANGE COLUMN action action int(11) unsigned NOT NULL default '0';
UPDATE playercreateinfo_action
SET action = action | ( misc < 16 );
ALTER TABLE playercreateinfo_action
DROP COLUMN misc;

View file

@ -0,0 +1,13 @@
ALTER TABLE character_db_version CHANGE COLUMN required_8098_01_characters_character_action required_8098_03_characters_character_pet bit;
UPDATE character_pet
SET abdata = CONCAT(
(SUBSTRING(abdata, 1, length(SUBSTRING_INDEX(abdata, ' ', 1))) >> 8),' ',
SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 1))+2, length(SUBSTRING_INDEX(abdata, ' ', 2))-length(SUBSTRING_INDEX(abdata, ' ', 1))-1),' ',
(SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 2))+2, length(SUBSTRING_INDEX(abdata, ' ', 3))-length(SUBSTRING_INDEX(abdata, ' ', 2))-1) >> 8),' ',
SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 3))+2, length(SUBSTRING_INDEX(abdata, ' ', 4))-length(SUBSTRING_INDEX(abdata, ' ', 3))-1),' ',
(SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 4))+2, length(SUBSTRING_INDEX(abdata, ' ', 5))-length(SUBSTRING_INDEX(abdata, ' ', 4))-1) >> 8),' ',
SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 5))+2, length(SUBSTRING_INDEX(abdata, ' ', 6))-length(SUBSTRING_INDEX(abdata, ' ', 5))-1),' ',
(SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 6))+2, length(SUBSTRING_INDEX(abdata, ' ', 7))-length(SUBSTRING_INDEX(abdata, ' ', 6))-1) >> 8),' ',
SUBSTRING(abdata, length(SUBSTRING_INDEX(abdata, ' ', 7))+2, length(SUBSTRING_INDEX(abdata, ' ', 8))-length(SUBSTRING_INDEX(abdata, ' ', 7))-1),' '
);

View file

@ -0,0 +1,4 @@
ALTER TABLE character_db_version CHANGE COLUMN required_8098_03_characters_character_pet required_8098_04_characters_pet_spell bit;
UPDATE pet_spell
SET active = ( active >> 8);

View file

@ -235,6 +235,10 @@ pkgdata_DATA = \
8071_01_mangos_command.sql \
8072_01_characters_characters.sql \
8072_02_characters_characters.sql \
8098_01_characters_character_action.sql \
8098_02_mangos_playercreateinfo_action.sql \
8098_03_characters_character_pet.sql \
8098_04_characters_pet_spell.sql \
README
## Additional files to include when running 'make dist'
@ -450,4 +454,8 @@ EXTRA_DIST = \
8071_01_mangos_command.sql \
8072_01_characters_characters.sql \
8072_02_characters_characters.sql \
8098_01_characters_character_action.sql \
8098_02_mangos_playercreateinfo_action.sql \
8098_03_characters_character_pet.sql \
8098_04_characters_pet_spell.sql \
README