diff options
-rw-r--r-- | sql/updates/world/2013_03_15_00_world_playercreateinfo_spell.sql | 184 | ||||
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 14 |
2 files changed, 193 insertions, 5 deletions
diff --git a/sql/updates/world/2013_03_15_00_world_playercreateinfo_spell.sql b/sql/updates/world/2013_03_15_00_world_playercreateinfo_spell.sql new file mode 100644 index 00000000000..b8d9b13bc52 --- /dev/null +++ b/sql/updates/world/2013_03_15_00_world_playercreateinfo_spell.sql @@ -0,0 +1,184 @@ +UPDATE `playercreateinfo_spell` SET `racemask`=1710, `classmask`=4 WHERE `Spell`=75; +UPDATE `playercreateinfo_spell` SET `racemask`=1279, `classmask`=1 WHERE `Spell`=78; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=81; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=67 WHERE `Spell`=107; +UPDATE `playercreateinfo_spell` SET `racemask`=1745, `classmask`=128 WHERE `Spell`=133; +UPDATE `playercreateinfo_spell` SET `racemask`=1745, `classmask`=128 WHERE `Spell`=168; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=37 WHERE `Spell`=196; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=37 WHERE `Spell`=197; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1107 WHERE `Spell`=198; +UPDATE `playercreateinfo_spell` SET `racemask`=1061, `classmask`=3 WHERE `Spell`=199; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=200; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=39 WHERE `Spell`=201; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=35 WHERE `Spell`=202; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=203; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=204; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1488 WHERE `Spell`=227; +UPDATE `playercreateinfo_spell` SET `racemask`=650, `classmask`=4 WHERE `Spell`=264; +UPDATE `playercreateinfo_spell` SET `racemask`=36, `classmask`=4 WHERE `Spell`=266; +UPDATE `playercreateinfo_spell` SET `racemask`=1186, `classmask`=64 WHERE `Spell`=331; +UPDATE `playercreateinfo_spell` SET `racemask`=1186, `classmask`=64 WHERE `Spell`=403; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=522; +UPDATE `playercreateinfo_spell` SET `racemask`=1693, `classmask`=16 WHERE `Spell`=585; +UPDATE `playercreateinfo_spell` SET `racemask`=1541, `classmask`=2 WHERE `Spell`=635; +UPDATE `playercreateinfo_spell` SET `racemask`=1101, `classmask`=1535 WHERE `Spell`=668; +UPDATE `playercreateinfo_spell` SET `racemask`=690, `classmask`=1535 WHERE `Spell`=669; +UPDATE `playercreateinfo_spell` SET `racemask`=32, `classmask`=1125 WHERE `Spell`=670; +UPDATE `playercreateinfo_spell` SET `racemask`=8, `classmask`=1085 WHERE `Spell`=671; +UPDATE `playercreateinfo_spell` SET `racemask`=4, `classmask`=63 WHERE `Spell`=672; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=40 WHERE `Spell`=674; +UPDATE `playercreateinfo_spell` SET `racemask`=595, `classmask`=256 WHERE `Spell`=686; +UPDATE `playercreateinfo_spell` SET `racemask`=595, `classmask`=256 WHERE `Spell`=687; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=750; +UPDATE `playercreateinfo_spell` SET `racemask`=512, `classmask`=446 WHERE `Spell`=813; +UPDATE `playercreateinfo_spell` SET `racemask`=512, `classmask`=446 WHERE `Spell`=822; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=1293 WHERE `Spell`=1180; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=8 WHERE `Spell`=1752; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=1843; +UPDATE `playercreateinfo_spell` SET `racemask`=1693, `classmask`=16 WHERE `Spell`=2050; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=8 WHERE `Spell`=2098; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=2382; +UPDATE `playercreateinfo_spell` SET `racemask`=1279, `classmask`=1 WHERE `Spell`=2457; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=2479; +UPDATE `playercreateinfo_spell` SET `racemask`=4, `classmask`=63 WHERE `Spell`=2481; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=9 WHERE `Spell`=2567; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=9 WHERE `Spell`=2764; +UPDATE `playercreateinfo_spell` SET `racemask`=1710, `classmask`=4 WHERE `Spell`=2973; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=3050; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=3127; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=3275; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=3276; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=3277; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=3278; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=3365; +UPDATE `playercreateinfo_spell` SET `racemask`=1759, `classmask`=400 WHERE `Spell`=5009; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=4 WHERE `Spell`=5011; +UPDATE `playercreateinfo_spell` SET `racemask`=1759, `classmask`=400 WHERE `Spell`=5019; +UPDATE `playercreateinfo_spell` SET `racemask`=40, `classmask`=1024 WHERE `Spell`=5176; +UPDATE `playercreateinfo_spell` SET `racemask`=40, `classmask`=1024 WHERE `Spell`=5185; +UPDATE `playercreateinfo_spell` SET `racemask`=16, `classmask`=441 WHERE `Spell`=5227; +UPDATE `playercreateinfo_spell` SET `racemask`=1279, `classmask`=1 WHERE `Spell`=5301; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=6233; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=6246; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=6247; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=6477; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=6478; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=39 WHERE `Spell`=6562; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=6603; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=7266; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=7267; +UPDATE `playercreateinfo_spell` SET `racemask`=64, `classmask`=425 WHERE `Spell`=7340; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=7341; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=7355; +UPDATE `playercreateinfo_spell` SET `racemask`=16, `classmask`=441 WHERE `Spell`=7744; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=7928; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=7929; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=7934; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=8386; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=35 WHERE `Spell`=8737; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1135 WHERE `Spell`=9077; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=9078; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=67 WHERE `Spell`=9116; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=9125; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=10840; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=10841; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=10846; +UPDATE `playercreateinfo_spell` SET `racemask`=1710, `classmask`=4 WHERE `Spell`=13358; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=8 WHERE `Spell`=16092; +UPDATE `playercreateinfo_spell` SET `racemask`=16, `classmask`=441 WHERE `Spell`=17737; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=18629; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=18630; +UPDATE `playercreateinfo_spell` SET `racemask`=32, `classmask`=1125 WHERE `Spell`=20549; +UPDATE `playercreateinfo_spell` SET `racemask`=32, `classmask`=1125 WHERE `Spell`=20550; +UPDATE `playercreateinfo_spell` SET `racemask`=32, `classmask`=1125 WHERE `Spell`=20551; +UPDATE `playercreateinfo_spell` SET `racemask`=32, `classmask`=1125 WHERE `Spell`=20552; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=20555; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=20557; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=20558; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=45 WHERE `Spell`=20572; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=365 WHERE `Spell`=20573; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=365 WHERE `Spell`=20574; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=256 WHERE `Spell`=20575; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=4 WHERE `Spell`=20576; +UPDATE `playercreateinfo_spell` SET `racemask`=16, `classmask`=441 WHERE `Spell`=20577; +UPDATE `playercreateinfo_spell` SET `racemask`=16, `classmask`=441 WHERE `Spell`=20579; +UPDATE `playercreateinfo_spell` SET `racemask`=8, `classmask`=1085 WHERE `Spell`=20582; +UPDATE `playercreateinfo_spell` SET `racemask`=8, `classmask`=1085 WHERE `Spell`=20583; +UPDATE `playercreateinfo_spell` SET `racemask`=8, `classmask`=1085 WHERE `Spell`=20585; +UPDATE `playercreateinfo_spell` SET `racemask`=64, `classmask`=425 WHERE `Spell`=20589; +UPDATE `playercreateinfo_spell` SET `racemask`=64, `classmask`=425 WHERE `Spell`=20591; +UPDATE `playercreateinfo_spell` SET `racemask`=64, `classmask`=425 WHERE `Spell`=20592; +UPDATE `playercreateinfo_spell` SET `racemask`=64, `classmask`=425 WHERE `Spell`=20593; +UPDATE `playercreateinfo_spell` SET `racemask`=4, `classmask`=63 WHERE `Spell`=20594; +UPDATE `playercreateinfo_spell` SET `racemask`=4, `classmask`=63 WHERE `Spell`=20595; +UPDATE `playercreateinfo_spell` SET `racemask`=4, `classmask`=63 WHERE `Spell`=20596; +UPDATE `playercreateinfo_spell` SET `racemask`=1, `classmask`=443 WHERE `Spell`=20597; +UPDATE `playercreateinfo_spell` SET `racemask`=1, `classmask`=443 WHERE `Spell`=20598; +UPDATE `playercreateinfo_spell` SET `racemask`=1, `classmask`=443 WHERE `Spell`=20599; +UPDATE `playercreateinfo_spell` SET `racemask`=1, `classmask`=443 WHERE `Spell`=20864; +UPDATE `playercreateinfo_spell` SET `racemask`=1541, `classmask`=2 WHERE `Spell`=21084; +UPDATE `playercreateinfo_spell` SET `racemask`=735, `classmask`=8 WHERE `Spell`=21184; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=73 WHERE `Spell`=21563; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=21651; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=21652; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=22027; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=22810; +UPDATE `playercreateinfo_spell` SET `racemask`=1710, `classmask`=4 WHERE `Spell`=24949; +UPDATE `playercreateinfo_spell` SET `racemask`=512, `classmask`=8 WHERE `Spell`=25046; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=26290; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=26297; +UPDATE `playercreateinfo_spell` SET `racemask`=1541, `classmask`=2 WHERE `Spell`=27762; +UPDATE `playercreateinfo_spell` SET `racemask`=1186, `classmask`=64 WHERE `Spell`=27763; +UPDATE `playercreateinfo_spell` SET `racemask`=40, `classmask`=1024 WHERE `Spell`=27764; +UPDATE `playercreateinfo_spell` SET `racemask`=512, `classmask`=406 WHERE `Spell`=28730; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=247 WHERE `Spell`=28875; +UPDATE `playercreateinfo_spell` SET `racemask`=512, `classmask`=446 WHERE `Spell`=28877; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=208 WHERE `Spell`=28878; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=1 WHERE `Spell`=28880; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=247 WHERE `Spell`=29932; +UPDATE `playercreateinfo_spell` SET `racemask`=1279, `classmask`=1 WHERE `Spell`=32215; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=33391; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=64 WHERE `Spell`=33697; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=256 WHERE `Spell`=33702; +UPDATE `playercreateinfo_spell` SET `racemask`=1710, `classmask`=4 WHERE `Spell`=34082; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=45462; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=45477; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=45902; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=45903; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=45927; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=47541; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=48266; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=49410; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=49576; +UPDATE `playercreateinfo_spell` SET `racemask`=512, `classmask`=32 WHERE `Spell`=50613; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=52665; +UPDATE `playercreateinfo_spell` SET `racemask`=2, `classmask`=32 WHERE `Spell`=54562; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=56816; +UPDATE `playercreateinfo_spell` SET `racemask`=595, `classmask`=256 WHERE `Spell`=58284; +UPDATE `playercreateinfo_spell` SET `racemask`=128, `classmask`=253 WHERE `Spell`=58943; +UPDATE `playercreateinfo_spell` SET `racemask`=8, `classmask`=1085 WHERE `Spell`=58984; +UPDATE `playercreateinfo_spell` SET `racemask`=1, `classmask`=443 WHERE `Spell`=58985; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=1 WHERE `Spell`=59221; +UPDATE `playercreateinfo_spell` SET `racemask`=4, `classmask`=63 WHERE `Spell`=59224; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=2 WHERE `Spell`=59535; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=4 WHERE `Spell`=59536; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=16 WHERE `Spell`=59538; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=32 WHERE `Spell`=59539; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=64 WHERE `Spell`=59540; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=128 WHERE `Spell`=59541; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=2 WHERE `Spell`=59542; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=4 WHERE `Spell`=59543; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=16 WHERE `Spell`=59544; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=32 WHERE `Spell`=59545; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=64 WHERE `Spell`=59547; +UPDATE `playercreateinfo_spell` SET `racemask`=1024, `classmask`=128 WHERE `Spell`=59548; +UPDATE `playercreateinfo_spell` SET `racemask`=1, `classmask`=443 WHERE `Spell`=59752; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=59879; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=59921; +UPDATE `playercreateinfo_spell` SET `racemask`=1541, `classmask`=2 WHERE `Spell`=60091; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=1535 WHERE `Spell`=61437; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=32 WHERE `Spell`=61455; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=256 WHERE `Spell`=75445; +UPDATE `playercreateinfo_spell` SET `racemask`=1791, `classmask`=64 WHERE `Spell`=75461; +UPDATE `playercreateinfo_spell` SET `racemask`=0 WHERE `racemask`=1791; -- All races +UPDATE `playercreateinfo_spell` SET `classmask`=0 WHERE `classmask`=1535; -- All classes diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 20317dd504f..effd2057c68 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -3256,6 +3256,7 @@ void ObjectMgr::LoadPlayerInfo() Field* fields = result->Fetch(); uint32 raceMask = fields[0].GetUInt32(); uint32 classMask = fields[1].GetUInt32(); + uint32 spellId = fields[2].GetUInt32(); if (raceMask != 0 && !(raceMask & RACEMASK_ALL_PLAYABLE)) { @@ -3278,15 +3279,18 @@ void ObjectMgr::LoadPlayerInfo() if (classMask == 0 || ((1 << (classIndex - 1)) & classMask)) { if (PlayerInfo* info = _playerInfo[raceIndex][classIndex]) - info->spell.push_back(fields[2].GetUInt32()); - else if (raceMask != 0 && classMask != 0) - sLog->outError(LOG_FILTER_SQL, "Racemask/classmask (%u/%u) combination was found containing an invalid race/class combination (%u/%u) in `playercreateinfo_spell` (Spell %u), ignoring.", raceMask, classMask, raceIndex, classIndex, fields[2].GetUInt32()); + { + info->spell.push_back(spellId); + ++count; + } + // We need something better here, the check is not accounting for spells used by multiple races/classes but not all of them. + // Either split the masks per class, or per race, which kind of kills the point yet. + // else if (raceMask != 0 && classMask != 0) + // sLog->outError(LOG_FILTER_SQL, "Racemask/classmask (%u/%u) combination was found containing an invalid race/class combination (%u/%u) in `playercreateinfo_spell` (Spell %u), ignoring.", raceMask, classMask, raceIndex, classIndex, spellId); } } } } - - ++count; } while (result->NextRow()); |