Exemplo n.º 1
0
    void FireAOE()
    {
        this.m.PlayEffect(this.m.aoe);
        GameObject bulletObject = new GameObject();
        AOE        bullet       = bulletObject.AddComponent <AOE>();

        bullet.init(m.GetTarget());
        bullet.transform.position = new Vector3(targetx, targety, 0);
    }
Exemplo n.º 2
0
    public static void AoeAttack(GameObject aoe, GameObject attacker, GameObject defender, float damage)
    {
        Debug.Log("AOE spawned");
        aoe = GameObject.Instantiate(aoe);
        aoe.transform.position = attacker.transform.position;
        aoe.transform.SetParent(attacker.transform);
        AOE component = aoe.GetComponent <AOE> ();

        component.SetDamage(damage);
    }
Exemplo n.º 3
0
    public TheBigBoom(int abilityIndex) : base(abilityIndex)
    {
        cost = abilityCost;

        FriendlyHitChanceSkillcheck = CharacterStatType.Accuracy;
        HostileHitChanceSkillcheck  = CharacterStatType.Accuracy;

        effects.Add(new Damage(damage, true, true));
        targeting = new AOE(range, damageRange, false);
        base.SetDescriptionFromEffects();
    }
Exemplo n.º 4
0
    public RuleBritannia(int abilityIndex) : base(abilityIndex)
    {
        cost = abilityCost;

        FriendlyHitChanceSkillcheck = CharacterStatType.NONE;
        HostileHitChanceSkillcheck  = CharacterStatType.Accuracy;

        effects.Add(new Stun(duration, true, false));
        targeting = new AOE(range, aoeRange, true);
        base.SetDescriptionFromEffects();
    }
Exemplo n.º 5
0
    public WarCry(int abilityIndex) : base(abilityIndex)
    {
        cost = abilityCost;

        FriendlyHitChanceSkillcheck = CharacterStatType.NONE;
        HostileHitChanceSkillcheck  = CharacterStatType.Strength;

        effects.Add(new Taunt(durationTaunt));
        effects.Add(new LoyaltyIncrease(loyaltyIncrease, false, true));
        targeting = new AOE(0, buffrange, true);
        base.SetDescriptionFromEffects();
    }
Exemplo n.º 6
0
 public ShootAOE(AOE skeleton = null) : base
     (
         () =>
 {
     Glare();
     skeleton = skeleton != null ? skeleton.Clone() : new AOE();
     skeleton.Create();
 }
     )
 {
     Description = "Shot " + skeleton;
 }
Exemplo n.º 7
0
    public void init(AOE owner)
    {
        this.owner = owner;

        transform.parent        = owner.transform;                      // Set the model's parent to the gem.
        transform.localPosition = new Vector3(0, 0, 0);                 // Center the model on the parent.
        name = "Boss Model";                                            // Name the object.

        mat             = GetComponent <Renderer>().material;
        mat.shader      = Shader.Find("Sprites/Default");                               // Tell the renderer that our textures have transparency. // Get the material component of this quad object.
        mat.mainTexture = Resources.Load <Texture2D>("Textures/Boss2AOE");              // Set the texture.  Must be in Resources folder.
        clock           = 0;
    }
Exemplo n.º 8
0
    protected IEnumerator DestroyAOEAfterEffect(AOE a, float time)
    {
        float remainTime = time;

        while (true)
        {
            remainTime -= Time.deltaTime;
            if (remainTime <= 0)
            {
                Destroy(a.gameObject);
                yield break;
            }
            yield return(null);
        }
    }
Exemplo n.º 9
0
 protected virtual void LazyLoad()
 {
     if (m_AOE == null)
     {
         m_AOE = GetComponent <AOE>();
     }
     if (m_SpriteRenderer == null)
     {
         m_SpriteRenderer = GetComponent <SpriteRenderer>();
     }
     if (m_Damager == null)
     {
         m_Damager = GetComponent <Damager>();
     }
 }
Exemplo n.º 10
0
    // Update is called once per frame
    void Update()
    {
        // Update buff time

        // Update AOE time
        int i = 0;

        while (i < aoe.Count)
        {
            AOE a = aoe[i];
            if (a.CheckTime())
            {
                aoe.Remove(a);
                //Destroy(a.gameObject);
                StartCoroutine(DestroyAOEAfterEffect(a, 1.0f));
                continue;
            }
            i++;
        }
    }
Exemplo n.º 11
0
 protected void Awake()
 {
     _aoe = GetComponent<AOE>();
 }
    public void Cast(GameObject caster, Vector3 position, int layer)
    {
        AOE aoe = Instantiate(aoeObject, position, Quaternion.identity);

        aoe.Fire(this, caster, layer);
    }
Exemplo n.º 13
0
 //!---CONSTRCUTOR---!
 public Spell(AOE e_AreaOfEffect)
 {
     lTargets = new List<Entities.Entity>();
     eAreaOfEffect = e_AreaOfEffect;
 }
Exemplo n.º 14
0
    public int Cast(GameObject caster, Vector3 position, int layer, float multiplier)
    {
        AOE aoe = Instantiate(aoeObject, position, Quaternion.identity);

        return(aoe.Fire(this, caster, layer, multiplier));
    }
Exemplo n.º 15
0
 public Sniper_Final() : base
     (
         new Teleport(NORTH_FAR).Wait(0.5f),
         new ShootAOE(new AOE {
     OuterSpeed       = Speed.SLOW,
     InnerSpeed       = Speed.FROZEN,
     InnerScale       = 0f,
     Target           = SOUTH_FAR,
     MaxTime          = 2f,
     OnDestroyTimeout =
         self =>
     {
         AOE clone     = self.data.Clone();
         clone.MaxTime = 10f;
         clone.Freeze();
         clone.Create();
     }
 }.On(-80, 80)
                      )
         .Wait(1f),
         new AISequence(
             new AISequence(
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)).Wait(0.25f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 20f, Target = SOUTH_FAR
 }.On(-15, 15)).Wait(0.75f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)).Wait(1f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)).Wait(0.25f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 20f, Target = SOUTH_FAR
 }.On(-45, -15).On(15, 45)).Wait(0.75f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)).Wait(1f)
                 ).Times(2),
             new AISequence(
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)),
                 new ShootAOE(new AOE {
     Start = WEST_FAR, Target = EAST_FAR, OuterSpeed = Speed.FAST, FixedWidth = 7f
 }.On(-90, 90)).Wait(0.25f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 20f, Target = SOUTH_FAR
 }.On(-15, 15)).Wait(0.75f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)).Wait(1f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)),
                 new ShootAOE(new AOE {
     Start = EAST_FAR, Target = WEST_FAR, OuterSpeed = Speed.FAST, FixedWidth = 7f
 }.On(-90, 90)).Wait(0.25f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 20f, Target = SOUTH_FAR
 }.On(-45, -15).On(15, 45)).Wait(0.75f),
                 new ShootAOE(new AOE {
     OuterSpeed = Speed.MEDIUM, FixedWidth = 7f, Target = SOUTH_FAR
 }.On(-80, 80)).Wait(1f)
                 ).Times(2),
             new Shoot1(new Projectile {
     Speed = Speed.SNAIL, Size = Size.HUGE, MaxTime = 1f, OnDestroyTimeout = CallbackDictionary.SPAWN_1_HOMING_TOWARDS_PLAYER
 }).Wait(2.5f),
             new Shoot1(new Projectile {
     Speed = Speed.SNAIL, Size = Size.HUGE, MaxTime = 1f, OnDestroyTimeout = CallbackDictionary.SPAWN_1_HOMING_TOWARDS_PLAYER
 }).Wait(2.5f)
             )
     )
 { }