diff --git a/.travis.yml b/.travis.yml index 57533b850..58e985bd6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,6 @@ sudo: required -dist: trusty +dist: trusty # (14.04) +# xenial (16.04) is not supported yet language: cpp compiler: @@ -9,14 +10,14 @@ git: depth: 1 before_install: - - sudo apt-get -qq install build-essential libtool make cmake cmake-data openssl - - sudo apt-get -qq install libssl-dev libmysqlclient-dev libmysql++-dev libreadline6-dev zlib1g-dev libbz2-dev libace-dev - - sudo apt-get -qq install mysql-server + - sudo apt-get -y install build-essential libtool make cmake cmake-data openssl + - sudo apt-get -y install libssl-dev libmysqlclient-dev libmysql++-dev libreadline6-dev zlib1g-dev libbz2-dev libace-dev - git config user.email "travis@build.bot" && git config user.name "Travis CI" - git tag -a -m "Travis build" init install: - mysql -uroot -e 'create database test_mysql;' + # bin directory already exists in the repo and therefore is not created here - cd bin - cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=0 -DSCRIPTS=1 -DSERVERS=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=check_install - cd .. diff --git a/data/sql/updates/pending_db_world/rev_1482952611662394924.sql b/data/sql/updates/pending_db_world/rev_1482952611662394924.sql new file mode 100644 index 000000000..0bcb666f4 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1482952611662394924.sql @@ -0,0 +1,34 @@ +INSERT INTO version_db_world (`sql_rev`) VALUES ('1482952611662394924'); + +ALTER TABLE `quest_template` + CHANGE COLUMN `LimitTime` `TimeAllowed` INT(10) UNSIGNED NOT NULL DEFAULT '0' AFTER `PointOption`, + CHANGE COLUMN `RequiredRaces` `RequiredRaces` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `TimeAllowed`, + CHANGE COLUMN `NextQuestIdChain` `RewardNextQuest` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `RequiredFactionValue2`, + CHANGE COLUMN `RewardXPId` `RewardXPDifficulty` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardNextQuest`, + CHANGE COLUMN `RewardOrRequiredMoney` `RewardMoney` INT(11) NOT NULL DEFAULT '0' AFTER `RewardXPDifficulty`, + CHANGE COLUMN `RewardMoneyMaxLevel` `RewardBonusMoney` INT(10) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardMoney`, + CHANGE COLUMN `RewardSpell` `RewardDisplaySpell` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardBonusMoney`, + CHANGE COLUMN `RewardSpellCast` `RewardSpell` INT(11) NOT NULL DEFAULT '0' AFTER `RewardDisplaySpell`, + CHANGE COLUMN `RewardHonorMultiplier` `RewardKillHonor` FLOAT NOT NULL DEFAULT '0' AFTER `RewardHonor`, + CHANGE COLUMN `SourceItemId` `StartItem` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardKillHonor`, + CHANGE COLUMN `RewardTitle` `RewardTitle` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardChoiceItemQuantity6`, + CHANGE COLUMN `RewardTalents` `RewardTalents` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardTitle`, + CHANGE COLUMN `RewardArenaPoints` `RewardArenaPoints` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardTalents`; +-- split needed to avoid import errors +ALTER TABLE `quest_template` + CHANGE COLUMN `PointMapId` `POIContinent` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardChoiceItemQuantity6`, + CHANGE COLUMN `PointX` `POIx` FLOAT NOT NULL DEFAULT '0' AFTER `POIContinent`, + CHANGE COLUMN `PointY` `POIy` FLOAT NOT NULL DEFAULT '0' AFTER `POIx`, + CHANGE COLUMN `PointOption` `POIPriority` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `POIy`, + CHANGE COLUMN `EndText` `AreaDescription` TEXT NULL AFTER `QuestDescription`; + +ALTER TABLE `quest_template` + CHANGE COLUMN `RequiredRaces` `AllowableRaces` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `TimeAllowed`, + CHANGE COLUMN `RequiredSourceItemId1` `ItemDrop1` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `RewardAmount4`, + CHANGE COLUMN `RequiredSourceItemCount1` `ItemDropQuantity1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDrop1`, + CHANGE COLUMN `RequiredSourceItemId2` `ItemDrop2` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDropQuantity1`, + CHANGE COLUMN `RequiredSourceItemCount2` `ItemDropQuantity2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDrop2`, + CHANGE COLUMN `RequiredSourceItemId3` `ItemDrop3` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDropQuantity2`, + CHANGE COLUMN `RequiredSourceItemCount3` `ItemDropQuantity3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDrop3`, + CHANGE COLUMN `RequiredSourceItemId4` `ItemDrop4` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDropQuantity3`, + CHANGE COLUMN `RequiredSourceItemCount4` `ItemDropQuantity4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' AFTER `ItemDrop4`; diff --git a/src/game/Globals/ObjectMgr.cpp b/src/game/Globals/ObjectMgr.cpp index fa07d8110..2db578d08 100644 --- a/src/game/Globals/ObjectMgr.cpp +++ b/src/game/Globals/ObjectMgr.cpp @@ -3852,14 +3852,14 @@ void ObjectMgr::LoadQuests() mExclusiveQuestGroups.clear(); QueryResult result = WorldDatabase.Query("SELECT " - //0 1 2 3 4 5 6 7 8 9 10 11 12 - "ID, Method, QuestLevel, MinLevel, MaxLevel, QuestSortID, QuestType, SuggestedGroupNum, LimitTime, RequiredClasses, RequiredRaces, RequiredSkillId, RequiredSkillPoints, " + //0 1 2 3 4 5 6 7 8 9 10 11 12 + "ID, Method, QuestLevel, MinLevel, MaxLevel, QuestSortID, QuestType, SuggestedGroupNum, TimeAllowed, RequiredClasses, AllowableRaces, RequiredSkillId, RequiredSkillPoints, " // 13 14 15 16 17 18 19 20 "RequiredFactionId1, RequiredFactionId2, RequiredFactionValue1, RequiredFactionValue2, RequiredMinRepFaction, RequiredMaxRepFaction, RequiredMinRepValue, RequiredMaxRepValue, " - // 21 22 23 24 25 26 27 28 29 30 31 - "PrevQuestId, NextQuestId, ExclusiveGroup, NextQuestIdChain, RewardXPId, RewardOrRequiredMoney, RewardMoneyMaxLevel, RewardSpell, RewardSpellCast, RewardHonor, RewardHonorMultiplier, " - // 32 33 34 35 36 37 38 39 40 41 42 - "RewardMailTemplateId, RewardMailDelay, SourceItemId, SourceItemCount, SourceSpellId, Flags, SpecialFlags, RewardTitle, RequiredPlayerKills, RewardTalents, RewardArenaPoints, " + // 21 22 23 24 25 26 27 28 29 30 31 + "PrevQuestId, NextQuestId, ExclusiveGroup, RewardNextQuest, RewardXPDifficulty, RewardMoney, RewardBonusMoney, RewardDisplaySpell, RewardSpell, RewardHonor, RewardKillHonor, " + // 32 33 34 35 36 37 38 39 40 41 42 + "RewardMailTemplateId, RewardMailDelay, StartItem, SourceItemCount, SourceSpellId, Flags, SpecialFlags, RewardTitle, RequiredPlayerKills, RewardTalents, RewardArenaPoints, " // 43 44 45 46 47 48 49 50 "RewardItem1, RewardItem2, RewardItem3, RewardItem4, RewardAmount1, RewardAmount2, RewardAmount3, RewardAmount4, " // 51 52 53 54 55 56 57 58 59 60 61 62 @@ -3868,14 +3868,14 @@ void ObjectMgr::LoadQuests() "RewardFactionID1, RewardFactionID2, RewardFactionID3, RewardFactionID4, RewardFactionID5, RewardFactionValue1, RewardFactionValue2, RewardFactionValue3, RewardFactionValue4, RewardFactionValue5, " // 73 74 75 76 77 "RewardFactionOverride1, RewardFactionOverride2, RewardFactionOverride3, RewardFactionOverride4, RewardFactionOverride5, " - // 78 79 80 81 - "PointMapId, PointX, PointY, PointOption, " - // 82 83 84 85 86 87 88 - "LogTitle, LogDescription, QuestDescription, EndText, OfferRewardText, RequestItemsText, QuestCompletionLog, " + // 78 79 80 81 + "POIContinent, POIx, POIy, POIPriority, " + // 82 83 84 85 86 87 88 + "LogTitle, LogDescription, QuestDescription, AreaDescription, OfferRewardText, RequestItemsText, QuestCompletionLog, " // 89 90 91 92 93 94 95 96 "RequiredNpcOrGo1, RequiredNpcOrGo2, RequiredNpcOrGo3, RequiredNpcOrGo4, RequiredNpcOrGoCount1, RequiredNpcOrGoCount2, RequiredNpcOrGoCount3, RequiredNpcOrGoCount4, " - // 97 98 99 100 101 102 103 104 - "RequiredSourceItemId1, RequiredSourceItemId2, RequiredSourceItemId3, RequiredSourceItemId4, RequiredSourceItemCount1, RequiredSourceItemCount2, RequiredSourceItemCount3, RequiredSourceItemCount4, " + // 97 98 99 100 101 102 103 104 + "ItemDrop1, ItemDrop2, ItemDrop3, ItemDrop4, ItemDropQuantity1, ItemDropQuantity2, ItemDropQuantity3, ItemDropQuantity4, " // 105 106 107 108 109 110 111 112 113 114 115 116 "RequiredItemId1, RequiredItemId2, RequiredItemId3, RequiredItemId4, RequiredItemId5, RequiredItemId6, RequiredItemCount1, RequiredItemCount2, RequiredItemCount3, RequiredItemCount4, RequiredItemCount5, RequiredItemCount6, " // 117 118 119 120 121 122 123 124 125 126 127 128 129 @@ -4030,7 +4030,7 @@ void ObjectMgr::LoadQuests() qinfo->RequiredClasses = 0; } } - // RequiredRaces, can be 0/RACEMASK_ALL_PLAYABLE to allow any race + // AllowableRaces, can be 0/RACEMASK_ALL_PLAYABLE to allow any race if (qinfo->RequiredRaces) { if (!(qinfo->RequiredRaces & RACEMASK_ALL_PLAYABLE))