예제 #1
0
    public TEMPLATE_SPEC()
    {
        Main.InternalRange             = TEMPLATE_COMBAT_RANGE; // Max range of your combat spells (40f for most classes, ObjectManager.Me.GetCombatReach for melee)
        Main.InternalAggroRange        = TEMPLATE_PULL_RANGE;   // Range at which your RANGED class should engage enemies remove if your class is melee
        Main.InternalLightHealingSpell = null;                  /*new Spell("TEMPLATE_HEALING_SPELL");*/
        MySettings = TEMPLATE_SPECSettings.GetSettings();
        Main.DumpCurrentSettings <TEMPLATE_SPECSettings>(MySettings);
        UInt128 lastTarget = 0;

        while (Main.InternalLoop)
        {
            try
            {
                if (!ObjectManager.Me.IsDeadMe)
                {
                    if (!ObjectManager.Me.IsMounted)
                    {
                        if (Fight.InFight && ObjectManager.Me.Target > 0)
                        {
                            if (ObjectManager.Me.Target != lastTarget)
                            {
                                lastTarget = ObjectManager.Me.Target;
                            }

                            if (CombatClass.InSpellRange(ObjectManager.Target, 0, 40))
                            {
                                Combat();
                            }
                            else if (!ObjectManager.Me.IsCast)
                            {
                                Patrolling();
                            }
                        }
                        else if (!ObjectManager.Me.IsCast)
                        {
                            Patrolling();
                        }
                    }
                }
                else
                {
                    Thread.Sleep(500);
                }
            }
            catch
            {
            }
            Thread.Sleep(100);
        }
    }