public static bool HandleDismiss(Models.Entities.Player player, Models.Packets.Team.TeamActionPacket packet) { if (player.Team == null) { return(true); } if (!player.Team.IsLeader(player)) { return(true); } if (!player.Alive) { return(true); } player.RemoveStatusFlag(Enums.StatusFlag.TeamLeader); var members = player.Team.Delete(); foreach (var member in members) { member.Team = null; member.ClientSocket.Send(packet); } return(true); }
/// <summary> /// Handles the mount skill. /// </summary> /// <param name="player">The player.</param> /// <param name="spellPacket">The spell packet.</param> /// <returns>True if the skill was handled correctly.</returns> public static bool Handle(Models.Entities.Player player, Models.Packets.Spells.SpellPacket spellPacket) { if (player.Equipments.Get(Enums.ItemPosition.Steed, false) == null) { return(false); } if (player.ContainsStatusFlag(Enums.StatusFlag.Riding)) { player.RemoveStatusFlag(Enums.StatusFlag.Riding); } else if (player.Stamina < 100) { return(false); } else { player.AddStatusFlag(Enums.StatusFlag.Riding); } player.ClientSocket.Send(new Models.Packets.Entities.SteedVigorPacket { Type = 2, Amount = 9001 }); TargetFinalization.SkillFinalize(player, null, spellPacket, 0); return(true); }
public static bool Handle(Models.Entities.Player player, Models.Packets.Client.DataExchangePacket packet) { player.RemoveStatusFlag(Enums.StatusFlag.Fly); return(true); }