Exemple #1
0
        internal static void CancelOneTimeTarget()
        {
            m_ClientTarget = m_HasTarget = false;

            ClientCommunication.SendToClient(new CancelTarget(LocalTargID));
            EndIntercept();
        }
Exemple #2
0
        internal static void SetLastTarget(Mobile m, byte flagType)
        {
            TargetInfo targ = new TargetInfo();

            m_LastGroundTarg = m_LastTarget = targ;

            if ((m_HasTarget && m_CurFlags == 1) || flagType == 1)
            {
                m_LastHarmTarg = targ;
            }
            else if ((m_HasTarget && m_CurFlags == 2) || flagType == 2)
            {
                m_LastBeneTarg = targ;
            }
            else if (flagType == 0)
            {
                m_LastHarmTarg = m_LastBeneTarg = targ;
            }

            targ.Type  = 0;
            targ.Flags = m_HasTarget ? m_CurFlags : flagType;

            targ.Gfx    = m.Body;
            targ.Serial = m.Serial;
            targ.X      = m.Position.X;
            targ.Y      = m.Position.Y;
            targ.Z      = m.Position.Z;

            ClientCommunication.SendToClient(new ChangeCombatant(m));
            m_LastCombatant = m.Serial;
            World.Player.SendMessage(MsgLevel.Force, LocString.NewTargSet);

            LastTargetChanged();
        }
Exemple #3
0
        public static void SetSecondaryAbility()
        {
            Item right = World.Player.GetItemOnLayer(Layer.RightHand);
            Item left  = World.Player.GetItemOnLayer(Layer.LeftHand);

            AOSAbility a = AOSAbility.Invalid;

            if (right != null)
            {
                a = GetAbility(right.ItemID.Value, m_Secondary);
            }

            if (a == AOSAbility.Invalid && left != null)
            {
                a = GetAbility(left.ItemID.Value, m_Secondary);
            }

            if (a == AOSAbility.Invalid)
            {
                a = GetAbility(FistsID[0], m_Secondary);
            }

            if (a != AOSAbility.Invalid)
            {
                ClientCommunication.SendToServer(new UseAbility(a));
                ClientCommunication.SendToClient(ClearAbility.Instance);
                World.Player.SendMessage(LocString.SettingAOSAb, a);
            }
        }
Exemple #4
0
        private static void OnSetLastTarget(bool location, Serial serial, Point3D p, ushort gfxid)
        {
            if (serial == World.Player.Serial)
            {
                OnSLTCancel();
                return;
            }

            m_LastBeneTarg      = m_LastHarmTarg = m_LastGroundTarg = m_LastTarget = new TargetInfo();
            m_LastTarget.Flags  = 0;
            m_LastTarget.Gfx    = gfxid;
            m_LastTarget.Serial = serial;
            m_LastTarget.Type   = (byte)(location ? 1 : 0);
            m_LastTarget.X      = p.X;
            m_LastTarget.Y      = p.Y;
            m_LastTarget.Z      = p.Z;

            m_LTWasSet = true;

            World.Player.SendMessage(MsgLevel.Force, LocString.LTSet);
            if (serial.IsMobile)
            {
                LastTargetChanged();
                ClientCommunication.SendToClient(new ChangeCombatant(serial));
                m_LastCombatant = serial;
            }
        }
Exemple #5
0
        internal void SendMessage(MsgLevel lvl, string text)
        {
            if (lvl < (MsgLevel)RazorEnhanced.Settings.General.ReadInt("MessageLevel") || text.Length <= 0)
            {
                return;
            }

            int hue;

            switch (lvl)
            {
            case MsgLevel.Error:
            case MsgLevel.Warning:
                hue = RazorEnhanced.Settings.General.ReadInt("WarningColor");
                break;

            default:
                hue = RazorEnhanced.Settings.General.ReadInt("SysColor");
                break;
            }
            ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, hue, 3, Language.CliLocName, "System", text));

            PacketHandlers.SysMessages.Add(text.ToLower());

            if (PacketHandlers.SysMessages.Count >= 25)
            {
                PacketHandlers.SysMessages.RemoveRange(0, 10);
            }
        }
Exemple #6
0
 public bool Perform()
 {
     ClientCommunication.SendToClient(new CloseGump(World.Player.CurrentGumpI));
     ClientCommunication.SendToServer(new GumpResponse(World.Player.CurrentGumpS, World.Player.CurrentGumpI, m_ButtonID, m_Switches, m_TextEntries));
     World.Player.HasGump = false;
     return(true);
 }
Exemple #7
0
 internal static void ClearAbilities()
 {
     World.Player.HasSpecial = false;
     ClientCommunication.SendToServer(new UseAbility(AOSAbility.Clear));
     ClientCommunication.SendToClient(ClearAbility.Instance);
     World.Player.SendMessage(LocString.AOSAbCleared);
 }
Exemple #8
0
        internal static void OneTimeTarget(bool ground, TargetResponseCallback onTarget, CancelTargetCallback onCancel)
        {
            if (m_Intercept && m_OnCancel != null)
            {
                m_OnCancel();
                CancelOneTimeTarget();
            }

            if (m_HasTarget && m_CurrentID != 0 && m_CurrentID != LocalTargID)
            {
                m_PreviousID     = m_CurrentID;
                m_PreviousGround = m_AllowGround;
                m_PrevFlags      = m_CurFlags;

                m_FilterCancel.Add(m_PreviousID);
            }

            m_Intercept = true;
            m_CurrentID = LocalTargID;
            m_OnTarget  = onTarget;
            m_OnCancel  = onCancel;

            m_ClientTarget = m_HasTarget = true;
            ClientCommunication.SendToClient(new Target(LocalTargID, ground));
            ClearQueue();
        }
Exemple #9
0
        internal void SendMessage(MsgLevel lvl, string text)
        {
            if (lvl >= (MsgLevel)Config.GetInt("MessageLevel") && text.Length > 0)
            {
                int hue;
                switch (lvl)
                {
                case MsgLevel.Error:
                case MsgLevel.Warning:
                    hue = Config.GetInt("WarningColor");
                    break;

                default:
                    hue = Config.GetInt("SysColor");
                    break;
                }

                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, hue, 3, Language.CliLocName, "System", text));

                PacketHandlers.SysMessages.Add(text.ToLower());

                if (PacketHandlers.SysMessages.Count >= 25)
                {
                    PacketHandlers.SysMessages.RemoveRange(0, 10);
                }
            }
        }
Exemple #10
0
 public static void ResendTarget()
 {
     if (!m_ClientTarget || !m_HasTarget)
     {
         CancelClientTarget();
         m_ClientTarget = m_HasTarget = true;
         ClientCommunication.SendToClient(new Target(m_CurrentID, m_AllowGround, m_CurFlags));
     }
 }
Exemple #11
0
 private static void CancelClientTarget()
 {
     if (m_ClientTarget)
     {
         m_FilterCancel.Add((uint)m_CurrentID);
         ClientCommunication.SendToClient(new CancelTarget(m_CurrentID));
         m_ClientTarget = false;
     }
 }
Exemple #12
0
        private static void Echo(string[] param)
        {
            StringBuilder sb = new StringBuilder("Note To Self: ");

            for (int i = 0; i < param.Length; i++)
            {
                sb.Append(param[i]);
            }
            ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3, Language.CliLocName, "System", sb.ToString()));
        }
Exemple #13
0
        private static void ClearItems(string[] param)
        {
            ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                Language.CliLocName, "System", "Clearing all items from memory cache"));

            World.Items.Clear();
            Resync(param);

            ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                Language.CliLocName, "System", "All items in memory cache have been cleared"));
        }
Exemple #14
0
        internal static void CancelClientTarget()
        {
            if (!m_ClientTarget)
            {
                return;
            }

            m_FilterCancel.Add((uint)m_CurrentID);
            ClientCommunication.SendToClient(new CancelTarget(m_CurrentID));
            m_ClientTarget = false;
        }
Exemple #15
0
        private void inGame_Click(object sender, System.EventArgs e)
        {
            if (World.Player == null)
            {
                return;
            }

            Callback = new HueEntryCallback(HueResp);
            ClientCommunication.SendToClient(new HuePicker());
            World.Player.SendMessage(MsgLevel.Force, LocString.SelHue);
        }
Exemple #16
0
 internal void OverheadMessageFrom(int hue, string from, string text)
 {
     if (Config.GetInt("OverheadStyle") == 0)
     {
         ClientCommunication.SendToClient(new AsciiMessage(Serial, m_Body, MessageType.Regular, hue, 3, Language.CliLocName, text));
     }
     else
     {
         ClientCommunication.SendToClient(new UnicodeMessage(Serial, m_Body, MessageType.Regular, hue, 3, Language.CliLocName, from, text));
     }
 }
Exemple #17
0
        public static int Drag(Item i, int amount, bool fromClient, bool doLast)
        {
            LiftReq lr   = new LiftReq(i.Serial, amount, fromClient, doLast);
            LiftReq prev = null;

            if (Full)
            {
                World.Player.SendMessage(MsgLevel.Error, LocString.DragDropQueueFull);
                if (fromClient)
                {
                    ClientCommunication.SendToClient(new LiftRej());
                }
                return(0);
            }

            Log("Queuing Drag request {0}", lr);

            if (m_Back >= m_LiftReqs.Length)
            {
                m_Back = 0;
            }

            if (m_Back <= 0)
            {
                prev = m_LiftReqs[m_LiftReqs.Length - 1];
            }
            else if (m_Back <= m_LiftReqs.Length)
            {
                prev = m_LiftReqs[m_Back - 1];
            }

            // if the current last req must stay last, then insert this one in its place
            if (prev != null && prev.DoLast)
            {
                Log("Back-Queuing {0}", prev);
                if (m_Back <= 0)
                {
                    m_LiftReqs[m_LiftReqs.Length - 1] = lr;
                }
                else if (m_Back <= m_LiftReqs.Length)
                {
                    m_LiftReqs[m_Back - 1] = lr;
                }

                // and then re-insert it at the end
                lr = prev;
            }

            m_LiftReqs[m_Back++] = lr;

            ActionQueue.SignalLift(!fromClient);
            return(lr.Id);
        }
Exemple #18
0
        public static void SetLastTargetTo(Mobile m, byte flagType)
        {
            TargetInfo targ = new TargetInfo();

            m_LastGroundTarg = m_LastTarget = targ;

            if ((m_HasTarget && m_CurFlags == 1) || flagType == 1)
            {
                m_LastHarmTarg = targ;
            }
            else if ((m_HasTarget && m_CurFlags == 2) || flagType == 2)
            {
                m_LastBeneTarg = targ;
            }
            else if (flagType == 0)
            {
                m_LastHarmTarg = m_LastBeneTarg = targ;
            }

            targ.Type = 0;
            if (m_HasTarget)
            {
                targ.Flags = m_CurFlags;
            }
            else
            {
                targ.Flags = flagType;
            }

            targ.Gfx    = m.Body;
            targ.Serial = m.Serial;
            targ.X      = m.Position.X;
            targ.Y      = m.Position.Y;
            targ.Z      = m.Position.Z;

            ClientCommunication.SendToClient(new ChangeCombatant(m));
            m_LastCombatant = m.Serial;
            World.Player.SendMessage(MsgLevel.Force, LocString.NewTargSet);

            bool wasSmart = Config.GetBool("SmartLastTarget");

            if (wasSmart)
            {
                Config.SetProperty("SmartLastTarget", false);
            }
            LastTarget();
            if (wasSmart)
            {
                Config.SetProperty("SmartLastTarget", true);
            }
            LastTargetChanged();
        }
Exemple #19
0
        private static void OnGetMobileTarget(bool ground, Serial serial, Point3D pt, ushort gfx)
        {
            Mobile mobile = World.FindMobile(serial);

            if (mobile != null)
            {
                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                    Language.CliLocName, "System", $"Name: '{mobile.Name}' Hits: '{mobile.Hits}/{mobile.HitsMax}' Mana: '{mobile.Mana}/{mobile.ManaMax}' Stam: '{mobile.Stam}/{mobile.StamMax}'"));

                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                    Language.CliLocName, "System", $"Serial: '{mobile.Serial}' Hue: '{mobile.Hue}' IsAnimal: '{mobile.IsAnimal}' IsGhost: '{mobile.IsGhost}' IsHuman: '{mobile.IsHuman}' IsMonster: '{mobile.IsMonster}' IsSeaMonster: '{mobile.IsSeaMonster}'"));
            }
        }
Exemple #20
0
        private static void OnGetItemHueTarget(bool ground, Serial serial, Point3D pt, ushort gfx)
        {
            Item item = World.FindItem(serial);

            if (item != null)
            {
                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                    Language.CliLocName, "System", $"Item: '{item.Name}' '{item.ItemID.Value}'"));

                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                    Language.CliLocName, "System", $"Hue: '{item.Hue}'"));
            }
        }
Exemple #21
0
        private static void LastTargetChanged()
        {
            if (m_LastTarget == null)
            {
                return;
            }

            bool lth = RazorEnhanced.Settings.General.ReadInt("LTHilight") != 0;

            if (m_OldLT.IsItem)
            {
                RemoveTextFlags(World.FindItem(m_OldLT));
            }
            else
            {
                Mobile m = World.FindMobile(m_OldLT);
                if (m != null)
                {
                    if (lth)
                    {
                        ClientCommunication.SendToClient(new MobileIncoming(m));
                    }

                    RemoveTextFlags(m);
                }
            }

            if (m_LastTarget.Serial.IsItem)
            {
                AddTextFlags(World.FindItem(m_LastTarget.Serial));
            }
            else
            {
                Mobile m = World.FindMobile(m_LastTarget.Serial);
                if (m != null)
                {
                    if (IsLastTarget(m) && lth)
                    {
                        ClientCommunication.SendToClient(new MobileIncoming(m));
                    }

                    CheckLastTargetRange(m);

                    AddTextFlags(m);
                }
            }

            m_OldLT = m_LastTarget.Serial;
        }
Exemple #22
0
            protected override void OnTick()
            {
                if (m_Table.Count <= 0)
                {
                    return;
                }

                List <string> toremove = new List <string>();

                foreach (KeyValuePair <string, MsgInfo> de in m_Table)
                {
                    string  txt = de.Key;
                    MsgInfo msg = de.Value;

                    if (msg.NextSend <= DateTime.UtcNow)
                    {
                        if (msg.Count > 0)
                        {
                            if (msg.Lang == "A")
                            {
                                ClientCommunication.SendToClient(new AsciiMessage(msg.Serial, msg.Body, msg.Type,
                                                                                  msg.Hue, msg.Font, msg.Name,
                                                                                  msg.Count > 1 ? String.Format("{0} [{1}]", txt, msg.Count) : txt));
                            }
                            else
                            {
                                ClientCommunication.SendToClient(new UnicodeMessage(msg.Serial, msg.Body, msg.Type,
                                                                                    msg.Hue, msg.Font, msg.Lang, msg.Name,
                                                                                    msg.Count > 1 ? String.Format("{0} [{1}]", txt, msg.Count) : txt));
                            }
                            msg.Count    = 0;
                            msg.NextSend = DateTime.UtcNow + msg.Delay;
                        }
                        else
                        {
                            if (txt != null)
                            {
                                toremove.Add(txt);
                            }
                        }
                    }
                }

                for (int i = toremove.Count - 1; i >= 0; --i)
                {
                    m_Table.Remove(toremove[i]);
                }
            }
Exemple #23
0
        public static void VisRange(string[] args)
        {
            int range = 18;

            try
            {
                range = Convert.ToInt32(args[0]);
            }
            catch
            {
                range = 18;
            }

            World.Player.VisRange = range;
            ClientCommunication.SendToClient(new SetUpdateRange(range));
            World.Player.SendMessage("Set VisRange to {0}", range);
        }
Exemple #24
0
        private static void Resync(string[] param)
        {
            if (DateTime.UtcNow - m_LastSync > TimeSpan.FromSeconds(1.0))
            {
                m_LastSync = DateTime.UtcNow;

                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                    Language.CliLocName, "System", "Updating and resyncing with server"));

                ClientCommunication.SendToClient(new MobileUpdate(World.Player));
                ClientCommunication.SendToServer(new ResyncReq());
                World.Player.Resync();

                ClientCommunication.SendToClient(new UnicodeMessage(0xFFFFFFFF, -1, MessageType.Regular, 0x3B2, 3,
                                                                    Language.CliLocName, "System", "Done.."));
            }
        }
Exemple #25
0
        public static void Walk(string[] args)
        {
            Point3D loc = new Point3D(Point3D.Zero);

            try
            {
                loc.X = Utility.ToInt32(args[0], 0);
                loc.Y = Utility.ToInt32(args[1], 0);
                loc.Z = Utility.ToInt32(args[2], 0);

                ClientCommunication.SendToClient(new PathFindTo(loc));
                World.Player.SendMessage("Going... {0}", loc);
            }
            catch
            {
            }
        }
Exemple #26
0
        internal static void SetLastTargetTo(Mobile m, byte flagType)
        {
            TargetInfo targ = new TargetInfo();

            m_LastGroundTarg = m_LastTarget = targ;

            if ((m_HasTarget && m_CurFlags == 1) || flagType == 1)
            {
                m_LastHarmTarg = targ;
            }
            else if ((m_HasTarget && m_CurFlags == 2) || flagType == 2)
            {
                m_LastBeneTarg = targ;
            }
            else if (flagType == 0)
            {
                m_LastHarmTarg = m_LastBeneTarg = targ;
            }

            targ.Type  = 0;
            targ.Flags = m_HasTarget ? m_CurFlags : flagType;

            targ.Gfx    = m.Body;
            targ.Serial = m.Serial;
            targ.X      = m.Position.X;
            targ.Y      = m.Position.Y;
            targ.Z      = m.Position.Z;

            ClientCommunication.SendToClient(new ChangeCombatant(m));
            m_LastCombatant = m.Serial;
            World.Player.SendMessage(MsgLevel.Force, LocString.NewTargSet);

            bool wasSmart = RazorEnhanced.Settings.General.ReadBool("SmartLastTarget");

            if (wasSmart)
            {
                RazorEnhanced.Settings.General.WriteBool("SmartLastTarget", false);
            }
            LastTarget();
            if (wasSmart)
            {
                RazorEnhanced.Settings.General.WriteBool("SmartLastTarget", true);
            }
            LastTargetChanged();
        }
Exemple #27
0
        internal static void SetSecondaryAbility()
        {
            Item right = World.Player.GetItemOnLayer(Layer.RightHand);
            Item left  = World.Player.GetItemOnLayer(Layer.LeftHand);

            AOSAbility a = AOSAbility.Invalid;

            if (right != null)
            {
                a = GetAbility(right.ItemID.Value, m_Secondary);
            }

            if (a == AOSAbility.Invalid && left != null)
            {
                a = GetAbility(left.ItemID.Value, m_Secondary);
            }

            if (a == AOSAbility.Invalid)
            {
                a = GetAbility(FistsID[0], m_Secondary);
            }

            if (a != AOSAbility.Invalid)
            {
                if (right != null)                      // Fix per arma con special differente se in volo o meno gargoyle
                {
                    if (right.ItemID == 0x0901 || right.ItemID == 0x406C)
                    {
                        if (World.Player.Flying)
                        {
                            a = AOSAbility.ParalyzingBlow;
                        }
                        else
                        {
                            a = AOSAbility.Dismount;
                        }
                    }
                }
                World.Player.HasSpecial = true;
                ClientCommunication.SendToServer(new UseAbility(a));
                ClientCommunication.SendToClient(ClearAbility.Instance);
                World.Player.SendMessage(LocString.SettingAOSAb, a);
            }
        }
Exemple #28
0
        public static void SetLastTargetTo(Mobile m, byte flagType)
        {
            TargetInfo targ = new TargetInfo();

            m_LastGroundTarg = m_LastTarget = targ;

            if ((m_HasTarget && m_CurFlags == 1) || flagType == 1)
            {
                m_LastHarmTarg = targ;
            }
            else if ((m_HasTarget && m_CurFlags == 2) || flagType == 2)
            {
                m_LastBeneTarg = targ;
            }
            else if (flagType == 0)
            {
                m_LastHarmTarg = m_LastBeneTarg = targ;
            }

            targ.Type = 0;
            if (m_HasTarget)
            {
                targ.Flags = m_CurFlags;
            }
            else
            {
                targ.Flags = flagType;
            }

            targ.Gfx    = m.Body;
            targ.Serial = m.Serial;
            targ.X      = m.Position.X;
            targ.Y      = m.Position.Y;
            targ.Z      = m.Position.Z;

            ClientCommunication.SendToClient(new ChangeCombatant(m));
            m_LastCombatant = m.Serial;


            TargetLast();
            LastTargetChanged();
        }
Exemple #29
0
        private static void EndPlayback()
        {
            m_PlayTimer = null;

            m_Playing = false;
            ClientCommunication.SetAllowDisconn(true);
            //ClientCommunication.SetDeathMsg( "You are dead." );

            PlayerData player;

            using (BinaryReader reader = new BinaryReader(m_TempWriter.BaseStream))
            {
                reader.BaseStream.Seek(0, SeekOrigin.Begin);
                player = World.Player = new PlayerData(reader, PlayerVersion);
            }
            m_TempWriter.Close();

            player.Contains.Clear();
            World.AddMobile(player);

            DoLogin(player);

            tbPos.Enabled = btnClose.Enabled = btnPlay.Enabled = btnStop.Enabled = btnRec.Enabled = true;
            tbPos.Value   = tbPos.Minimum;

            m_Elapsed = TimeSpan.Zero;
            UpdateTimeText();

            ClientCommunication.SendToClient(new MoveReject(World.Player.WalkSequence, World.Player));
            ClientCommunication.SendToServer(new ResyncReq());
            World.Player.Resync();
            ClientCommunication.RequestTitlebarUpdate();

            if (ClientCommunication.AllowBit(FeatureBit.LightFilter) && World.Player != null)
            {
                World.Player.LocalLightLevel = 0;

                ClientCommunication.SendToClient(new GlobalLightLevel(0));
                ClientCommunication.SendToClient(new PersonalLightLevel(World.Player));
            }
        }
Exemple #30
0
        private static void EnableOnStartMod()
        {
            if (Engine.ClientMajor < 7)
            {
                return;
            }

            if (m_modhandle == IntPtr.Zero)
            {
                return;
            }

            if (RazorEnhanced.Settings.General.ReadBool("ForceSizeEnabled") && Engine.ClientBuild < 49 && Assistant.Engine.IP != Engine.Resolve("37.143.10.137"))
            {
                SendMessage(m_modhandle, (int)PATCH_MESSAGES.PM_VIEW_RANGE_VALUE, 0, 30);
                SendMessage(m_modhandle, (int)PATCH_MESSAGES.PM_ENABLE, 0, (int)PATCH_TYPE.PT_VIEW_RANGE);
                ClientCommunication.SendToClient(new SetUpdateRange(31));
                m_viewrangepatch = true;
            }

            if (RazorEnhanced.Settings.General.ReadBool("UoModFPS"))
            {
                SendMessage(m_modhandle, (int)PATCH_MESSAGES.PM_ENABLE, 0, (int)PATCH_TYPE.PT_FPS);
                m_fpspatch = true;
            }

            if (RazorEnhanced.Settings.General.ReadBool("UoModPaperdool"))
            {
                SendMessage(m_modhandle, (int)PATCH_MESSAGES.PM_ENABLE, 0, (int)PATCH_TYPE.PT_PAPERDOLL_SLOTS);
                m_paperdoolpatch = true;
            }

            if (RazorEnhanced.Settings.General.ReadBool("UoModSound"))
            {
                SendMessage(m_modhandle, (int)PATCH_MESSAGES.PM_ENABLE, 0, (int)PATCH_TYPE.PT_GLOBAL_SOUND);
                m_soundpatch = true;
            }
        }