Esempio n. 1
0
        /// <summary>
        /// パーティの戦闘メンバリストを取得する
        /// </summary>
        /// <returns>パーティの戦闘メンバリスト</returns>
        public static List <Combatant> GetCombatantListParty()
        {
            // 総戦闘メンバリストを取得する(周囲のPC, NPC, MOB等すべて)
            var combatListAll = FF14PluginHelper.GetCombatantList();

            // パーティメンバのIDリストを取得する
            int partyCount;
            var partyListById = FF14PluginHelper.GetCurrentPartyList(out partyCount);

            var combatListParty = new List <Combatant>();

            foreach (var partyMemberId in partyListById)
            {
                if (partyMemberId == 0)
                {
                    continue;
                }

                var partyMember = (
                    from x in combatListAll
                    where
                    x.ID == partyMemberId
                    select
                    x).FirstOrDefault();

                if (partyMember != null)
                {
                    combatListParty.Add(partyMember);
                    Debug.WriteLine("<" + combatListParty.Count().ToString() + "> " + partyMember.Name);
                }
            }

            return(combatListParty);
        }
Esempio n. 2
0
        /// <summary>
        /// プレイヤ情報をリフレッシュする
        /// </summary>
        public static void RefreshPlayer()
        {
            var list = FF14PluginHelper.GetCombatantList();

            if (list.Count > 0)
            {
                player             = list[0];
                lastPlayerDateTime = DateTime.Now;
            }
        }