mirror of
https://github.com/mangosfour/server.git
synced 2026-01-27 04:37:08 +00:00
[10973] Implement game event mail sends at event start/stop.
Also implement save game event state to DB mostly for avoid send mails at resume game event after server downtime. Thanks to X-Savior for inspiring and original research.
This commit is contained in:
parent
da228b707d
commit
6b9de2c958
9 changed files with 241 additions and 26 deletions
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
DROP TABLE IF EXISTS `character_db_version`;
|
||||
CREATE TABLE `character_db_version` (
|
||||
`required_10862_01_characters_mail` bit(1) default NULL
|
||||
`required_10973_01_characters_game_event_status` bit(1) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Last applied sql update to DB';
|
||||
|
||||
--
|
||||
|
|
@ -1060,6 +1060,25 @@ LOCK TABLES `creature_respawn` WRITE;
|
|||
/*!40000 ALTER TABLE `creature_respawn` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `game_event_status`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `game_event_status`;
|
||||
CREATE TABLE `game_event_status` (
|
||||
`event` smallint(6) unsigned NOT NULL default '0',
|
||||
PRIMARY KEY (`event`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Game event system';
|
||||
|
||||
--
|
||||
-- Dumping data for table `game_event_status`
|
||||
--
|
||||
|
||||
LOCK TABLES `game_event_status` WRITE;
|
||||
/*!40000 ALTER TABLE `game_event_status` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `game_event_status` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `gameobject_respawn`
|
||||
--
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ CREATE TABLE `db_version` (
|
|||
`version` varchar(120) default NULL,
|
||||
`creature_ai_version` varchar(120) default NULL,
|
||||
`cache_id` int(10) default '0',
|
||||
`required_10972_01_mangos_command` bit(1) default NULL
|
||||
`required_10973_01_mangos_game_event_mail` bit(1) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
|
||||
|
||||
--
|
||||
|
|
@ -1697,6 +1697,29 @@ LOCK TABLES `game_event_gameobject` WRITE;
|
|||
/*!40000 ALTER TABLE `game_event_gameobject` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `game_event_mail`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `game_event_mail`;
|
||||
CREATE TABLE `game_event_mail` (
|
||||
`event` smallint(6) NOT NULL default '0' COMMENT 'Negatives value to send at event stop, positive value for send at event start.',
|
||||
`raceMask` mediumint(8) unsigned NOT NULL default '0',
|
||||
`quest` mediumint(8) unsigned NOT NULL default '0',
|
||||
`mailTemplateId` mediumint(8) unsigned NOT NULL default '0',
|
||||
`senderEntry` mediumint(8) unsigned NOT NULL default '0',
|
||||
PRIMARY KEY (`event`,`raceMask`,`quest`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Game event system';
|
||||
|
||||
--
|
||||
-- Dumping data for table `game_event_mail`
|
||||
--
|
||||
|
||||
LOCK TABLES `game_event_mail` WRITE;
|
||||
/*!40000 ALTER TABLE `game_event_mail` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `game_event_mail` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `game_event_quest`
|
||||
--
|
||||
|
|
|
|||
7
sql/updates/10973_01_characters_game_event_status.sql
Normal file
7
sql/updates/10973_01_characters_game_event_status.sql
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
ALTER TABLE character_db_version CHANGE COLUMN required_10862_01_characters_mail required_10973_01_characters_game_event_status bit;
|
||||
|
||||
DROP TABLE IF EXISTS `game_event_status`;
|
||||
CREATE TABLE `game_event_status` (
|
||||
`event` smallint(6) unsigned NOT NULL default '0',
|
||||
PRIMARY KEY (`event`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Game event system';
|
||||
11
sql/updates/10973_01_mangos_game_event_mail.sql
Normal file
11
sql/updates/10973_01_mangos_game_event_mail.sql
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
ALTER TABLE db_version CHANGE COLUMN required_10972_01_mangos_command required_10973_01_mangos_game_event_mail bit;
|
||||
|
||||
DROP TABLE IF EXISTS `game_event_mail`;
|
||||
CREATE TABLE `game_event_mail` (
|
||||
`event` smallint(6) NOT NULL default '0' COMMENT 'Negatives value to send at event stop, positive value for send at event start.',
|
||||
`raceMask` mediumint(8) unsigned NOT NULL default '0',
|
||||
`quest` mediumint(8) unsigned NOT NULL default '0',
|
||||
`mailTemplateId` mediumint(8) unsigned NOT NULL default '0',
|
||||
`senderEntry` mediumint(8) unsigned NOT NULL default '0',
|
||||
PRIMARY KEY (`event`,`raceMask`,`quest`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Game event system';
|
||||
|
|
@ -145,6 +145,8 @@ pkgdata_DATA = \
|
|||
10950_01_mangos_mangos_string.sql \
|
||||
10951_01_mangos_spell_proc_event.sql \
|
||||
10972_01_mangos_command.sql \
|
||||
10973_01_characters_game_event_status.sql \
|
||||
10973_01_mangos_game_event_mail.sql \
|
||||
README
|
||||
|
||||
## Additional files to include when running 'make dist'
|
||||
|
|
@ -270,4 +272,6 @@ EXTRA_DIST = \
|
|||
10950_01_mangos_mangos_string.sql \
|
||||
10951_01_mangos_spell_proc_event.sql \
|
||||
10972_01_mangos_command.sql \
|
||||
10973_01_characters_game_event_status.sql \
|
||||
10973_01_mangos_game_event_mail.sql \
|
||||
README
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue