Beispiel #1
0
 /// <summary>
 /// Moves a member of the raid group into another subgroup.
 /// </summary>
 /// <param name="member">the member to move</param>
 /// <param name="group">the target subgroup</param>
 /// <returns>Whether the move was successful or false if the target group was full</returns>
 public bool MoveMember(GroupMember member, SubGroup group)
 {
     if (group.IsFull)
     {
         return(false);
     }
     member.SubGroup.m_members.Remove(member);
     group.AddMember(member);
     return(true);
 }
Beispiel #2
0
 public bool CheckFull(GroupMember member, SubGroup group)
 {
     if (group.IsFull)
     {
         var chr = member.Character;
         if (chr != null)
         {
             GroupHandler.SendResult(chr.Client, GroupResultType.Invite, GroupResult.GroupIsFull);
         }
         return(false);
     }
     return(true);
 }
Beispiel #3
0
        public bool CheckFull(GroupMember member, SubGroup group)
        {
            if (!group.IsFull)
            {
                return(true);
            }
            Character character = member.Character;

            if (character != null)
            {
                GroupHandler.SendResult(character.Client, GroupResult.GroupIsFull);
            }
            return(false);
        }
Beispiel #4
0
 protected Group(Character leader, byte maxGroupUnits)
 {
     syncLock    = new ReaderWriterLockWrapper();
     m_subGroups = new SubGroup[maxGroupUnits];
     for (byte groupUnitId = 0; (int)groupUnitId < (int)maxGroupUnits; ++groupUnitId)
     {
         m_subGroups[groupUnitId] = new SubGroup(this, groupUnitId);
     }
     m_targetIcons = new EntityId[8];
     for (int index = 0; index < m_targetIcons.Length; ++index)
     {
         m_targetIcons[index] = EntityId.Zero;
     }
     m_lootMethod        = LootMethod.GroupLoot;
     m_lootThreshold     = ItemQuality.Uncommon;
     m_DungeonDifficulty = 0U;
     Leader         = AddMember(leader, false);
     m_masterLooter = null;
 }