Manual merge of #376 for Erudite starting zones.

This commit is contained in:
JJ 2015-02-21 20:46:19 -05:00
parent a537981ad0
commit eff818ca42
2 changed files with 23 additions and 8 deletions

View File

@ -1,5 +1,8 @@
EQEMu Changelog (Started on Sept 24, 2003 15:50) EQEMu Changelog (Started on Sept 24, 2003 15:50)
------------------------------------------------------- -------------------------------------------------------
== 02/21/2015 ==
Noudess: Starting erudites that were supposed to start in paineel were landing in erudin on Titanium. Fixed to be paineel.
== 02/20/2015 == == 02/20/2015 ==
demonstar55: Implement claims for RoF/RoF2 (should no longer crash the client!) demonstar55: Implement claims for RoF/RoF2 (should no longer crash the client!)
- fixed bugs related to claims for the rest of the clients (woo infinite loops) - fixed bugs related to claims for the rest of the clients (woo infinite loops)

View File

@ -276,7 +276,8 @@ void WorldDatabase::GetCharSelectInfo(uint32 accountID, EQApplicationPacket **ou
} }
} }
int WorldDatabase::MoveCharacterToBind(int CharID, uint8 bindnum) { int WorldDatabase::MoveCharacterToBind(int CharID, uint8 bindnum)
{
/* if an invalid bind point is specified, use the primary bind */ /* if an invalid bind point is specified, use the primary bind */
if (bindnum > 4) if (bindnum > 4)
{ {
@ -359,6 +360,7 @@ bool WorldDatabase::GetStartZone(PlayerProfile_Struct* in_pp, CharCreate_Struct*
return true; return true;
} }
void WorldDatabase::SetSoFDefaultStartZone(PlayerProfile_Struct* in_pp, CharCreate_Struct* in_cc){ void WorldDatabase::SetSoFDefaultStartZone(PlayerProfile_Struct* in_pp, CharCreate_Struct* in_cc){
if (in_cc->start_zone == RuleI(World, TutorialZoneID)) { if (in_cc->start_zone == RuleI(World, TutorialZoneID)) {
in_pp->zone_id = in_cc->start_zone; in_pp->zone_id = in_cc->start_zone;
@ -376,9 +378,17 @@ void WorldDatabase::SetTitaniumDefaultStartZone(PlayerProfile_Struct* in_pp, Cha
switch (in_cc->start_zone) switch (in_cc->start_zone)
{ {
case 0: case 0:
{
if (in_cc->deity == 203) // Cazic-Thule Erudites go to Paineel
{
in_pp->zone_id = 75; // paineel
in_pp->binds[0].zoneId = 75;
}
else
{ {
in_pp->zone_id = 24; // erudnext in_pp->zone_id = 24; // erudnext
in_pp->binds[0].zoneId = 38; // tox in_pp->binds[0].zoneId = 38; // tox
}
break; break;
} }
case 1: case 1:
@ -461,6 +471,7 @@ void WorldDatabase::SetTitaniumDefaultStartZone(PlayerProfile_Struct* in_pp, Cha
} }
} }
} }
void WorldDatabase::GetLauncherList(std::vector<std::string> &rl) { void WorldDatabase::GetLauncherList(std::vector<std::string> &rl) {
rl.clear(); rl.clear();
@ -476,8 +487,8 @@ void WorldDatabase::GetLauncherList(std::vector<std::string> &rl) {
} }
void WorldDatabase::SetMailKey(int CharID, int IPAddress, int MailKey) { void WorldDatabase::SetMailKey(int CharID, int IPAddress, int MailKey)
{
char MailKeyString[17]; char MailKeyString[17];
if(RuleB(Chat, EnableMailKeyIPVerification) == true) if(RuleB(Chat, EnableMailKeyIPVerification) == true)
@ -511,7 +522,8 @@ bool WorldDatabase::GetCharacterLevel(const char *name, int &level)
return true; return true;
} }
bool WorldDatabase::LoadCharacterCreateAllocations() { bool WorldDatabase::LoadCharacterCreateAllocations()
{
character_create_allocations.clear(); character_create_allocations.clear();
std::string query = "SELECT * FROM char_create_point_allocations ORDER BY id"; std::string query = "SELECT * FROM char_create_point_allocations ORDER BY id";
@ -543,7 +555,8 @@ bool WorldDatabase::LoadCharacterCreateAllocations() {
return true; return true;
} }
bool WorldDatabase::LoadCharacterCreateCombos() { bool WorldDatabase::LoadCharacterCreateCombos()
{
character_create_race_class_combos.clear(); character_create_race_class_combos.clear();
std::string query = "SELECT * FROM char_create_combinations ORDER BY race, class, deity, start_zone"; std::string query = "SELECT * FROM char_create_combinations ORDER BY race, class, deity, start_zone";
@ -565,4 +578,3 @@ bool WorldDatabase::LoadCharacterCreateCombos() {
return true; return true;
} }