Core/RaF: Remove level granting (new RaF doesn't support this)

Port From (https://github.com/TrinityCore/TrinityCore/commit/9ea577da136f970e327029480cbe9928c18033dc)
This commit is contained in:
hondacrx
2019-11-03 16:55:24 -05:00
parent 8b3c04bc15
commit 191e2c7a67
8 changed files with 13 additions and 130 deletions
-58
View File
@@ -24,63 +24,5 @@ namespace Game
{
public partial class WorldSession
{
//[WorldPacketHandler(ClientOpcodes.GrantLevel)]
void HandleGrantLevel(GrantLevel grantLevel)
{
Player target = Global.ObjAccessor.GetPlayer(GetPlayer(), grantLevel.Target);
// check cheating
byte levels = GetPlayer().GetGrantableLevels();
ReferAFriendError error = 0;
if (!target)
error = ReferAFriendError.NoTarget;
if (levels == 0)
error = ReferAFriendError.InsufficientGrantableLevels;
else if (GetRecruiterId() != target.GetSession().GetAccountId())
error = ReferAFriendError.NotReferredBy;
else if (target.GetTeamId() != GetPlayer().GetTeamId())
error = ReferAFriendError.DifferentFaction;
else if (target.GetLevel() >= GetPlayer().GetLevel())
error = ReferAFriendError.TargetTooHigh;
else if (target.GetLevel() >= WorldConfig.GetIntValue(WorldCfg.MaxRecruitAFriendBonusPlayerLevel))
error = ReferAFriendError.GrantLevelMaxI;
else if (target.GetGroup() != GetPlayer().GetGroup())
error = ReferAFriendError.NotInGroup;
else if (target.GetLevel() >= Global.ObjectMgr.GetMaxLevelForExpansion(target.GetSession().GetExpansion()))
error = ReferAFriendError.InsufExpanLvl;
if (error != 0)
{
ReferAFriendFailure failure = new ReferAFriendFailure();
failure.Reason = error;
if (error == ReferAFriendError.NotInGroup)
failure.Str = target.GetName();
SendPacket(failure);
return;
}
//ProposeLevelGrant proposeLevelGrant = new ProposeLevelGrant();
//proposeLevelGrant.Sender = GetPlayer().GetGUID();
//target.SendPacket(proposeLevelGrant);
}
//[WorldPacketHandler(ClientOpcodes.AcceptLevelGrant)]
void HandleAcceptGrantLevel(AcceptLevelGrant acceptLevelGrant)
{
Player other = Global.ObjAccessor.GetPlayer(GetPlayer(), acceptLevelGrant.Granter);
if (!(other && other.GetSession() != null))
return;
if (GetAccountId() != other.GetSession().GetRecruiterId())
return;
if (other.GetGrantableLevels() != 0)
other.SetGrantableLevels(other.GetGrantableLevels() - 1);
else
return;
GetPlayer().GiveLevel(GetPlayer().GetLevel() + 1);
}
}
}