예제 #1
0
        public static void CheckTextFlags(Mobile m)
        {
            if (DateTime.UtcNow - _lastFlagCheck < TimeSpan.FromMilliseconds(250) && m.Serial == _lastFlagCheckSerial)
            {
                return;
            }

            if (IgnoreAgent.IsIgnored(m.Serial))
            {
                m.OverheadMessage(Config.GetInt("SysColor"), "[Ignored]");
            }

            if (IsSmartTargetingEnabled())
            {
                bool harm = m_LastHarmTarg != null && m_LastHarmTarg.Serial == m.Serial;
                bool bene = m_LastBeneTarg != null && m_LastBeneTarg.Serial == m.Serial;

                if (harm)
                {
                    m.OverheadMessage(0x90, $"[{Language.GetString(LocString.HarmfulTarget)}]");
                }
                if (bene)
                {
                    m.OverheadMessage(0x3F, $"[{Language.GetString(LocString.BeneficialTarget)}]");
                }
            }

            if (m_LastTarget != null && m_LastTarget.Serial == m.Serial)
            {
                m.OverheadMessage(0x3B2, $"[{Language.GetString(LocString.LastTarget)}]");
            }

            _lastFlagCheck       = DateTime.UtcNow;
            _lastFlagCheckSerial = m.Serial;
        }
예제 #2
0
        public static void CheckTextFlags(Mobile m)
        {
            if (IgnoreAgent.IsIgnored(m.Serial))
            {
                m.OverheadMessage(Config.GetInt("SysColor"), "[Ignored]");
            }

            if (Config.GetBool("SmartLastTarget") && Client.Instance.AllowBit(FeatureBit.SmartLT))
            {
                bool harm = m_LastHarmTarg != null && m_LastHarmTarg.Serial == m.Serial;
                bool bene = m_LastBeneTarg != null && m_LastBeneTarg.Serial == m.Serial;

                if (harm)
                {
                    m.OverheadMessage(0x90, $"[{Language.GetString(LocString.HarmfulTarget)}]");
                }
                if (bene)
                {
                    m.OverheadMessage(0x3F, $"[{Language.GetString(LocString.BeneficialTarget)}]");
                }
            }

            if (m_LastTarget != null && m_LastTarget.Serial == m.Serial)
            {
                m.OverheadMessage(0x3B2, $"[{Language.GetString(LocString.LastTarget)}]");
            }
        }
예제 #3
0
        internal static void CheckTextFlags(Mobile m)
        {
            if (Engine.MainWindow.SmartLastTarget.Checked)
            {
                bool harm = m_LastHarmTarg != null && m_LastHarmTarg.Serial == m.Serial;
                bool bene = m_LastBeneTarg != null && m_LastBeneTarg.Serial == m.Serial;
                if (harm)
                {
                    m.OverheadMessage(0x90, String.Format("[{0}]", Language.GetString(LocString.HarmfulTarget)));
                }
                if (bene)
                {
                    m.OverheadMessage(0x3F, String.Format("[{0}]", Language.GetString(LocString.BeneficialTarget)));
                }
            }

            if (m_LastTarget != null && m_LastTarget.Serial == m.Serial)
            {
                m.OverheadMessage(0x3B2, String.Format("[{0}]", Language.GetString(LocString.LastTarget)));
            }
        }
예제 #4
0
파일: Targeting.cs 프로젝트: jaedan/OrionUO
        public static void CheckTextFlags(Mobile m)
        {
            if (Config.GetBool("SmartLastTarget") && ClientCommunication.AllowBit(FeatureBit.SmartLT))
            {
                bool harm = m_LastHarmTarg != null && m_LastHarmTarg.Serial == m.Serial;
                bool bene = m_LastBeneTarg != null && m_LastBeneTarg.Serial == m.Serial;
                if (harm)
                {
                    m.OverheadMessage(0x90, String.Format("[{0}]", Language.GetString(LocString.HarmfulTarget)));
                }
                if (bene)
                {
                    m.OverheadMessage(0x3F, String.Format("[{0}]", Language.GetString(LocString.BeneficialTarget)));
                }
            }

            if (m_LastTarget != null && m_LastTarget.Serial == m.Serial)
            {
                m.OverheadMessage(0x3B2, String.Format("[{0}]", Language.GetString(LocString.LastTarget)));
            }
        }
예제 #5
0
파일: Targeting.cs 프로젝트: mozkandemir/RE
        internal static void CheckTextFlags(Mobile m)
        {
            if (RazorEnhanced.Settings.General.ReadBool("SmartLastTarget"))
            {
                bool harm = m_LastHarmTarg != null && m_LastHarmTarg.Serial == m.Serial;
                bool bene = m_LastBeneTarg != null && m_LastBeneTarg.Serial == m.Serial;
                if (harm)
                {
                    m.OverheadMessage(0x90, String.Format("[{0}]", Language.GetString(LocString.HarmfulTarget)));
                }
                if (bene)
                {
                    m.OverheadMessage(0x3F, String.Format("[{0}]", Language.GetString(LocString.BeneficialTarget)));
                }
            }

            if (m_LastTarget != null && m_LastTarget.Serial == m.Serial)
            {
                m.OverheadMessage(0x3B2, String.Format("[{0}]", Language.GetString(LocString.LastTarget)));
            }
        }
예제 #6
0
        public static void OverheadTargetMessage(TargetInfo info)
        {
            if (info == null)
            {
                return;
            }

            if (Config.GetBool("ShowAttackTargetNewOnly") && info.Serial == _lastOverheadMessageTarget.Serial)
            {
                return;
            }

            Mobile m = null;

            if (Config.GetBool("ShowAttackTargetOverhead") && info.Serial != 0 && info.Serial.IsMobile)
            {
                m = World.FindMobile(info.Serial);

                if (m == null)
                {
                    return;
                }

                World.Player.OverheadMessage(FriendsManager.IsFriend(m.Serial) ? 63 : m.GetNotorietyColorInt(),
                                             $"Target: {m.Name}");
            }

            if (Config.GetBool("ShowTextTargetIndicator") && info.Serial != 0 && info.Serial.IsMobile)
            {
                // lets not look it up again they had the previous feature enabled
                if (m == null)
                {
                    m = World.FindMobile(info.Serial);
                }

                if (m == null)
                {
                    return;
                }

                m.OverheadMessage(Config.GetInt("TargetIndicatorHue"),
                                  Config.GetString("TargetIndicatorFormat").Replace("{name}", m.Name));
            }

            _lastOverheadMessageTarget = info;
        }
예제 #7
0
        public static void CheckTextFlags( Mobile m )
        {
            if ( Config.GetBool( "SmartLastTarget" ) && ClientCommunication.AllowBit( FeatureBit.SmartLT ) )
            {
                bool harm = m_LastHarmTarg != null && m_LastHarmTarg.Serial == m.Serial;
                bool bene = m_LastBeneTarg != null && m_LastBeneTarg.Serial == m.Serial;
                if ( harm )
                    m.OverheadMessage( 0x90, String.Format( "[{0}]", Language.GetString( LocString.HarmfulTarget ) ) );
                if ( bene )
                    m.OverheadMessage( 0x3F, String.Format( "[{0}]", Language.GetString( LocString.BeneficialTarget ) ) );
            }

            if ( m_LastTarget != null && m_LastTarget.Serial == m.Serial )
                m.OverheadMessage( 0x3B2, String.Format( "[{0}]", Language.GetString( LocString.LastTarget ) ) );
        }