diff --git a/src/UserInterface/InstanceBase.cpp b/src/UserInterface/InstanceBase.cpp index 7f1294e..ca9205d 100644 --- a/src/UserInterface/InstanceBase.cpp +++ b/src/UserInterface/InstanceBase.cpp @@ -15,7 +15,7 @@ BOOL HAIR_COLOR_ENABLE=FALSE; BOOL USE_ARMOR_SPECULAR=FALSE; BOOL RIDE_HORSE_ENABLE=TRUE; const float c_fDefaultRotationSpeed = 1200.0f; -const float c_fDefaultHorseRotationSpeed = 1800.0f; +const float c_fDefaultHorseRotationSpeed = 300.0f; bool IsWall(unsigned race) @@ -2116,6 +2116,7 @@ void CInstanceBase::SetStateFlags(DWORD dwStateFlags) // MR-4: Fix PK Mode Bug // Prevent killer mode for same-guild attacks in GUILD PK mode bool skipKiller = false; + if ((dwStateFlags & ADD_CHARACTER_STATE_KILLER) && PK_MODE_GUILD == GetPKMode()) { CPythonPlayer& rkPlayer = CPythonPlayer::Instance(); @@ -2224,7 +2225,6 @@ bool CInstanceBase::IsAttackableInstance(CInstanceBase& rkInstVictim) return false; } } - if (PK_MODE_GUILD == GetPKMode()) if (GetGuildID() == rkInstVictim.GetGuildID()) return false; @@ -2255,9 +2255,6 @@ bool CInstanceBase::IsAttackableInstance(CInstanceBase& rkInstVictim) if (IsPVPInstance(rkInstVictim)) return true; - if (rkInstVictim.GetPKMode() == PK_MODE_PROTECT) - return false; - // MR-4: Fix PK Mode Bug if (PK_MODE_REVENGE == GetPKMode()) { @@ -2265,13 +2262,12 @@ bool CInstanceBase::IsAttackableInstance(CInstanceBase& rkInstVictim) { if ( (GetGuildID() == 0 || GetGuildID() != rkInstVictim.GetGuildID()) && + IsConflictAlignmentInstance(rkInstVictim) && rkInstVictim.GetAlignment() < 0 ) return true; } } - - return false; // MR-4: -- END OF -- Fix PK Mode Bug } else