Add support for character race and faction transfers.

Based (loosely) on patch by Ner'zhul, DarkXuan, and [email protected].
Fixes issue #3429.

--HG--
branch : trunk
This commit is contained in:
silinoron
2010-09-05 13:12:24 -07:00
parent de59ac3bc3
commit be7d94f24e
21 changed files with 760 additions and 15 deletions
+12
View File
@@ -390,6 +390,8 @@ class ObjectMgr
typedef std::vector<std::string> ScriptNameMap;
typedef std::map<uint32, uint32> CharacterConversionMap;
Player* GetPlayer(const char* name) const { return sObjectAccessor.FindPlayerByName(name);}
Player* GetPlayer(uint64 guid) const { return ObjectAccessor::FindPlayer(guid); }
@@ -961,6 +963,16 @@ class ObjectMgr
value = data[loc_idx];
}
CharacterConversionMap factionchange_achievements;
CharacterConversionMap factionchange_items;
CharacterConversionMap factionchange_spells;
CharacterConversionMap factionchange_reputations;
void LoadFactionChangeAchievements();
void LoadFactionChangeItems();
void LoadFactionChangeSpells();
void LoadFactionChangeReputations();
protected:
// first free id for selected id type