mirror of
https://github.com/araxiaonline/TrinityCore.git
synced 2026-06-15 20:52:22 -04:00
Backed out changeset: ad4f100c0a9d
--HG-- branch : trunk
This commit is contained in:
@@ -299,15 +299,6 @@ bool ChatHandler::HandleReloadLootTemplatesItemCommand(const char*)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadLootTemplatesMillingCommand(const char*)
|
||||
{
|
||||
sLog.outString( "Re-Loading Loot Tables... (`milling_loot_template`)" );
|
||||
LoadLootTemplates_Milling();
|
||||
LootTemplates_Milling.CheckLootRefs();
|
||||
SendGlobalSysMessage("DB table `milling_loot_template` reloaded.");
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadLootTemplatesPickpocketingCommand(const char*)
|
||||
{
|
||||
sLog.outString( "Re-Loading Loot Tables... (`pickpocketing_loot_template`)" );
|
||||
@@ -1750,10 +1741,6 @@ bool ChatHandler::HandleLearnAllMySpellsCommand(const char* /*args*/)
|
||||
if(!spellInfo)
|
||||
continue;
|
||||
|
||||
// skip server-side/triggered spells
|
||||
if(spellInfo->spellLevel==0)
|
||||
continue;
|
||||
|
||||
// skip wrong class/race skills
|
||||
if(!m_session->GetPlayer()->IsSpellFitByClassAndRace(spellInfo->Id))
|
||||
continue;
|
||||
@@ -1762,6 +1749,8 @@ bool ChatHandler::HandleLearnAllMySpellsCommand(const char* /*args*/)
|
||||
if( spellInfo->SpellFamilyName != family)
|
||||
continue;
|
||||
|
||||
//TODO: skip triggered spells
|
||||
|
||||
// skip spells with first rank learned as talent (and all talents then also)
|
||||
uint32 first_rank = spellmgr.GetFirstSpellInChain(spellInfo->Id);
|
||||
if(GetTalentSpellCost(first_rank) > 0 )
|
||||
@@ -3824,6 +3813,36 @@ bool ChatHandler::HandleHoverCommand(const char* args)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleWaterwalkCommand(const char* args)
|
||||
{
|
||||
if(!args)
|
||||
return false;
|
||||
|
||||
Player *player = getSelectedPlayer();
|
||||
if(!player)
|
||||
{
|
||||
PSendSysMessage(LANG_NO_CHAR_SELECTED);
|
||||
SetSentErrorMessage(true);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (strncmp(args, "on", 3) == 0)
|
||||
player->SetMovement(MOVE_WATER_WALK); // ON
|
||||
else if (strncmp(args, "off", 4) == 0)
|
||||
player->SetMovement(MOVE_LAND_WALK); // OFF
|
||||
else
|
||||
{
|
||||
SendSysMessage(LANG_USE_BOL);
|
||||
return false;
|
||||
}
|
||||
|
||||
PSendSysMessage(LANG_YOU_SET_WATERWALK, args, player->GetName());
|
||||
if(needReportToTarget(player))
|
||||
ChatHandler(player).PSendSysMessage(LANG_YOUR_WATERWALK_SET, args, GetName());
|
||||
return true;
|
||||
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleLevelUpCommand(const char* args)
|
||||
{
|
||||
char* px = strtok((char*)args, " ");
|
||||
@@ -4439,7 +4458,7 @@ static bool HandleResetStatsOrLevelHelper(Player* player)
|
||||
|
||||
// set UNIT_FIELD_BYTES_1 to init state but preserve m_form value
|
||||
player->SetUInt32Value(UNIT_FIELD_BYTES_1, unitfield);
|
||||
player->SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_PVP );
|
||||
player->SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_UNK3 | UNIT_BYTE2_FLAG_UNK5 );
|
||||
player->SetByteValue(UNIT_FIELD_BYTES_2, 3, player->m_form);
|
||||
|
||||
player->SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_PVP_ATTACKABLE);
|
||||
@@ -4484,7 +4503,6 @@ bool ChatHandler::HandleResetLevelCommand(const char * args)
|
||||
player->SetLevel(1);
|
||||
player->InitStatsForLevel(true);
|
||||
player->InitTaxiNodesForLevel();
|
||||
player->InitGlyphsForLevel();
|
||||
player->InitTalentForLevel();
|
||||
player->SetUInt32Value(PLAYER_XP,0);
|
||||
|
||||
@@ -4528,7 +4546,6 @@ bool ChatHandler::HandleResetStatsCommand(const char * args)
|
||||
|
||||
player->InitStatsForLevel(true);
|
||||
player->InitTaxiNodesForLevel();
|
||||
player->InitGlyphsForLevel();
|
||||
player->InitTalentForLevel();
|
||||
|
||||
return true;
|
||||
@@ -6591,27 +6608,30 @@ bool ChatHandler::HandleModifyGenderCommand(const char *args)
|
||||
return false;
|
||||
}
|
||||
|
||||
PlayerInfo const* info = objmgr.GetPlayerInfo(player->getRace(), player->getClass());
|
||||
if(!info)
|
||||
return false;
|
||||
|
||||
char const* gender_str = (char*)args;
|
||||
int gender_len = strlen(gender_str);
|
||||
|
||||
uint32 displayId = player->GetNativeDisplayId();
|
||||
char const* gender_full = NULL;
|
||||
uint32 new_displayId = displayId;
|
||||
Gender gender;
|
||||
|
||||
if(!strncmp(gender_str, "male", gender_len)) // MALE
|
||||
if(!strncmp(gender_str,"male",gender_len)) // MALE
|
||||
{
|
||||
if(player->getGender() == GENDER_MALE)
|
||||
return true;
|
||||
|
||||
gender_full = "male";
|
||||
new_displayId = player->getRace() == RACE_BLOODELF ? displayId+1 : displayId-1;
|
||||
gender = GENDER_MALE;
|
||||
}
|
||||
else if (!strncmp(gender_str, "female", gender_len)) // FEMALE
|
||||
else if (!strncmp(gender_str,"female",gender_len)) // FEMALE
|
||||
{
|
||||
if(player->getGender() == GENDER_FEMALE)
|
||||
return true;
|
||||
|
||||
gender_full = "female";
|
||||
new_displayId = player->getRace() == RACE_BLOODELF ? displayId-1 : displayId+1;
|
||||
gender = GENDER_FEMALE;
|
||||
}
|
||||
else
|
||||
@@ -6623,19 +6643,14 @@ bool ChatHandler::HandleModifyGenderCommand(const char *args)
|
||||
|
||||
// Set gender
|
||||
player->SetByteValue(UNIT_FIELD_BYTES_0, 2, gender);
|
||||
player->SetByteValue(PLAYER_BYTES_3, 0, gender);
|
||||
|
||||
// Change display ID
|
||||
player->SetDisplayId(gender ? info->displayId_f : info->displayId_m);
|
||||
player->SetNativeDisplayId(gender ? info->displayId_f : info->displayId_m);
|
||||
|
||||
char const* gender_full = gender ? "female" : "male";
|
||||
|
||||
PSendSysMessage(LANG_YOU_CHANGE_GENDER, player->GetName(), gender_full);
|
||||
player->SetDisplayId(new_displayId);
|
||||
player->SetNativeDisplayId(new_displayId);
|
||||
|
||||
PSendSysMessage(LANG_YOU_CHANGE_GENDER, player->GetName(),gender_full);
|
||||
if (needReportToTarget(player))
|
||||
ChatHandler(player).PSendSysMessage(LANG_YOUR_GENDER_CHANGED, gender_full, GetName());
|
||||
|
||||
ChatHandler(player).PSendSysMessage(LANG_YOUR_GENDER_CHANGED, gender_full,GetName());
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user