Group level up
Port From (https://github.com/TrinityCore/TrinityCore/commit/77d320b9fc881f196789bfb99ef539c95311ad55)
This commit is contained in:
@@ -119,6 +119,52 @@ namespace Game.Chat
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Command("level", RBACPermissions.CommandCharacterLevel, true)]
|
||||||
|
static bool HandleGroupLevelCommand(CommandHandler handler, string playerName, short level)
|
||||||
|
{
|
||||||
|
if (level < 1)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
var player = PlayerIdentifier.ParseFromString(playerName);
|
||||||
|
if (player == null)
|
||||||
|
player = PlayerIdentifier.FromTargetOrSelf(handler);
|
||||||
|
if (player == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
Player target = player.GetConnectedPlayer();
|
||||||
|
if (target == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
Group groupTarget = target.GetGroup();
|
||||||
|
if (groupTarget == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
for (GroupReference it = groupTarget.GetFirstMember(); it != null; it = it.Next())
|
||||||
|
{
|
||||||
|
target = it.GetSource();
|
||||||
|
if (target != null)
|
||||||
|
{
|
||||||
|
uint oldlevel = target.GetLevel();
|
||||||
|
|
||||||
|
if (level != oldlevel)
|
||||||
|
{
|
||||||
|
target.SetLevel((uint)level);
|
||||||
|
target.InitTalentForLevel();
|
||||||
|
target.SetXP(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (handler.NeedReportToTarget(target))
|
||||||
|
{
|
||||||
|
if (oldlevel < level)
|
||||||
|
target.SendSysMessage(CypherStrings.YoursLevelUp, handler.GetNameLink(), level);
|
||||||
|
else // if (oldlevel > newlevel)
|
||||||
|
target.SendSysMessage(CypherStrings.YoursLevelDown, handler.GetNameLink(), level);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
[Command("list", RBACPermissions.CommandGroupList)]
|
[Command("list", RBACPermissions.CommandGroupList)]
|
||||||
static bool HandleGroupListCommand(CommandHandler handler, StringArguments args)
|
static bool HandleGroupListCommand(CommandHandler handler, StringArguments args)
|
||||||
{
|
{
|
||||||
@@ -252,7 +298,7 @@ namespace Game.Chat
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
[Command("revive", RBACPermissions.CommandRevive)]
|
[Command("revive", RBACPermissions.CommandRevive, true)]
|
||||||
static bool HandleGroupReviveCommand(CommandHandler handler, StringArguments args)
|
static bool HandleGroupReviveCommand(CommandHandler handler, StringArguments args)
|
||||||
{
|
{
|
||||||
Player playerTarget;
|
Player playerTarget;
|
||||||
@@ -264,7 +310,7 @@ namespace Game.Chat
|
|||||||
if (groupTarget == null)
|
if (groupTarget == null)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
for (GroupReference it = groupTarget.GetFirstMember(); it != null; it = i.Next())
|
for (GroupReference it = groupTarget.GetFirstMember(); it != null; it = it.Next())
|
||||||
{
|
{
|
||||||
Player target = it.GetSource();
|
Player target = it.GetSource();
|
||||||
if (target)
|
if (target)
|
||||||
|
|||||||
Reference in New Issue
Block a user