Exemplo n.º 1
0
        private static bool UseSkill(string command, Variable[] vars, bool quiet, bool force)
        {
            if (vars.Length == 0)
            {
                throw new RunTimeError("Usage: skill ('skill name'/'last')");
            }

            int skillId = 0;

            if (World.Player.LastSkill != -1)
            {
                skillId = World.Player.LastSkill;
            }

            if (vars[0].AsString() == "last")
            {
                Client.Instance.SendToServer(new UseSkill(World.Player.LastSkill));
            }
            else if (SkillHotKeys.UsableSkillsByName.TryGetValue(vars[0].AsString().ToLower(), out skillId))
            {
                Client.Instance.SendToServer(new UseSkill(skillId));

                World.Player.LastSkill = skillId;
            }

            if (skillId == (int)SkillName.Stealth && !World.Player.Visible)
            {
                StealthSteps.Hide();
            }

            return(true);
        }
Exemplo n.º 2
0
Arquivo: Skills.cs Projeto: uvbs/Razor
        private static void OnHotKey(ref object state)
        {
            int sk = (int)state;

            ClientCommunication.SendToServer(new UseSkill(sk));
            if (World.Player != null)
            {
                World.Player.LastSkill = sk;
            }
            if (sk == (int)SkillName.Stealth && !World.Player.Visible)
            {
                StealthSteps.Hide();
            }
            //if ( Macros.MacroManager.AcceptActions )
            //	Macros.MacroManager.Action( new Macros.UseSkillAction( sk ) );
        }
Exemplo n.º 3
0
        private static void OnHotKey(ref object state)
        {
            int sk = (int)state;

            Client.Instance.SendToServer(new UseSkill(sk));
            if (World.Player != null)
            {
                World.Player.LastSkill = sk;
            }

            if (sk == (int)SkillName.Stealth && !World.Player.Visible)
            {
                StealthSteps.Hide();
            }

            SkillTimer.Start();
        }
Exemplo n.º 4
0
        private static bool UseSkill(string command, Variable[] vars, bool quiet, bool force)
        {
            if (vars.Length == 0)
            {
                throw new RunTimeError("Usage: skill ('skill name'/'last')");
            }

            int skillId = 0;

            if (World.Player.LastSkill != -1)
            {
                skillId = World.Player.LastSkill;
            }

            if (vars[0].AsString() == "last")
            {
                Client.Instance.SendToServer(new UseSkill(World.Player.LastSkill));
            }
            else if (Skills.SkillsByName.TryGetValue(vars[0].AsString(), out SkillInfo skill))
            {
                if (skill.IsAction)
                {
                    Client.Instance.SendToServer(new UseSkill(skill.Index));

                    World.Player.LastSkill = skill.Index;
                }
                else
                {
                    CommandHelper.SendWarning(command, $"Skill '{vars[0].AsString()}' is not usable. Available usable skills: {string.Join(", ", Skills.GetUsableSkillNames())}", quiet);
                }
            }
            else
            {
                CommandHelper.SendWarning(command, $"Skill '{vars[0].AsString()}' not found. Available usable skills: {string.Join(", ", Skills.GetUsableSkillNames())}", quiet);
            }

            if (skillId == Skills.StealthIndex && !World.Player.Visible)
            {
                StealthSteps.Hide();
            }

            return(true);
        }