mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 04:37:00 +00:00
Fixed pvp flag (once again), crash fix
This commit is contained in:
parent
5a26f822ce
commit
cf3bbb5920
4 changed files with 7 additions and 4 deletions
|
|
@ -1,3 +1,5 @@
|
||||||
|
TRUNCATE creature_equip_template;
|
||||||
|
|
||||||
alter table `creature_equip_template`
|
alter table `creature_equip_template`
|
||||||
drop column `equipinfo1`,
|
drop column `equipinfo1`,
|
||||||
drop column `equipinfo2`,
|
drop column `equipinfo2`,
|
||||||
|
|
|
||||||
|
|
@ -4339,7 +4339,7 @@ static bool HandleResetStatsOrLevelHelper(Player* player)
|
||||||
|
|
||||||
// set UNIT_FIELD_BYTES_1 to init state but preserve m_form value
|
// set UNIT_FIELD_BYTES_1 to init state but preserve m_form value
|
||||||
player->SetUInt32Value(UNIT_FIELD_BYTES_1, unitfield);
|
player->SetUInt32Value(UNIT_FIELD_BYTES_1, unitfield);
|
||||||
player->SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_UNK3 | UNIT_BYTE2_FLAG_UNK5 );
|
player->SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_PVP );
|
||||||
player->SetByteValue(UNIT_FIELD_BYTES_2, 3, player->m_form);
|
player->SetByteValue(UNIT_FIELD_BYTES_2, 3, player->m_form);
|
||||||
|
|
||||||
player->SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_PVP_ATTACKABLE);
|
player->SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_PVP_ATTACKABLE);
|
||||||
|
|
|
||||||
|
|
@ -545,7 +545,7 @@ void WorldSession::HandleTogglePvP( WorldPacket & recv_data )
|
||||||
bool newPvPStatus;
|
bool newPvPStatus;
|
||||||
recv_data >> newPvPStatus;
|
recv_data >> newPvPStatus;
|
||||||
GetPlayer()->ApplyModFlag(PLAYER_FLAGS, PLAYER_FLAGS_IN_PVP, newPvPStatus);
|
GetPlayer()->ApplyModFlag(PLAYER_FLAGS, PLAYER_FLAGS_IN_PVP, newPvPStatus);
|
||||||
GetPlayer()->ApplyModFlag(PLAYER_FLAGS, PLAYER_FLAGS_PVP, newPvPStatus);
|
GetPlayer()->ApplyModFlag(PLAYER_FLAGS, PLAYER_FLAGS_PVP, !newPvPStatus);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
@ -1135,7 +1135,8 @@ void WorldSession::HandleRequestAccountData(WorldPacket& recv_data)
|
||||||
|
|
||||||
uint32 size = adata->Data.size();
|
uint32 size = adata->Data.size();
|
||||||
|
|
||||||
ByteBuffer dest(size);
|
ByteBuffer dest;
|
||||||
|
dest.resize(size);
|
||||||
|
|
||||||
uLongf destSize = size;
|
uLongf destSize = size;
|
||||||
if(compress(const_cast<uint8*>(dest.contents()), &destSize, (uint8*)adata->Data.c_str(), size) != Z_OK)
|
if(compress(const_cast<uint8*>(dest.contents()), &destSize, (uint8*)adata->Data.c_str(), size) != Z_OK)
|
||||||
|
|
|
||||||
|
|
@ -557,7 +557,7 @@ bool Player::Create( uint32 guidlow, std::string name, uint8 race, uint8 class_,
|
||||||
|
|
||||||
SetUInt32Value(UNIT_FIELD_BYTES_0, ( ( race ) | ( class_ << 8 ) | ( gender << 16 ) | ( powertype << 24 ) ) );
|
SetUInt32Value(UNIT_FIELD_BYTES_0, ( ( race ) | ( class_ << 8 ) | ( gender << 16 ) | ( powertype << 24 ) ) );
|
||||||
SetUInt32Value(UNIT_FIELD_BYTES_1, unitfield);
|
SetUInt32Value(UNIT_FIELD_BYTES_1, unitfield);
|
||||||
SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_UNK3 | UNIT_BYTE2_FLAG_UNK5 );
|
SetByteValue(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_PVP );
|
||||||
SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_PVP_ATTACKABLE );
|
SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_PVP_ATTACKABLE );
|
||||||
SetFloatValue(UNIT_MOD_CAST_SPEED, 1.0f); // fix cast time showed in spell tooltip on client
|
SetFloatValue(UNIT_MOD_CAST_SPEED, 1.0f); // fix cast time showed in spell tooltip on client
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue