コード例 #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);
        }
コード例 #2
0
        /// <summary>
        /// ペットIDを更新する
        /// </summary>
        public static void RefreshPetID()
        {
            // Combatantリストを取得する
            var combatant = FF14PluginHelper.GetCombatantList();

            if (combatant != null &&
                combatant.Count > 0)
            {
                var pet = (
                    from x in combatant
                    where
                    x.OwnerID == combatant[0].ID &&
                    (
                        x.Name.Contains("フェアリー・") ||
                        x.Name.Contains("・エギ") ||
                        x.Name.Contains("カーバンクル・")
                    )
                    select
                    x).FirstOrDefault();

                if (pet != null)
                {
                    petid     = Convert.ToString((long)((ulong)pet.ID), 16).ToUpper();
                    petidZone = ActGlobals.oFormActMain.CurrentZone;
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// ペットIDを更新する
        /// </summary>
        public static void RefreshPetID()
        {
            // Combatantリストを取得する
            var combatant = FF14PluginHelper.GetCombatantList();

            if (combatant != null &&
                combatant.Count > 0)
            {
                var pet = (
                    from x in combatant
                    where
                    x.OwnerID == combatant[0].ID &&
                    (
                        x.Name.Contains("フェアリー・") ||
                        x.Name.Contains("・エギ") ||
                        x.Name.Contains("カーバンクル・")
                    )
                    select
                    x).FirstOrDefault();

                if (pet != null)
                {
                    petid     = Convert.ToString((long)((ulong)pet.ID), 16).ToUpper();
                    petidZone = ActGlobals.oFormActMain.CurrentZone;

                    // 置換後のマッチングキーワードを消去する
                    SpellTimerTable.ClearReplacedKeywords();
                    OnePointTelopTable.Default.ClearReplacedKeywords();
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// プレイヤ情報をリフレッシュする
        /// </summary>
        public static void RefreshPlayer()
        {
            var list = FF14PluginHelper.GetCombatantList();

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