Пример #1
0
 void CheckPointEventHandler(ShieldEvent e)
 {
     if (round == 1 && first_check[e.playerID])
     {
         EventBus.Publish <PlayerProgressEvent>(new PlayerProgressEvent("first shield", e.playerID));
         first_check[e.playerID] = false;
     }
 }
Пример #2
0
 void CheckPointHandler(ShieldEvent e)
 {
     //check playerID if multiple mode
     if (GetPlayerID() != e.playerID)
     {
         return;
     }
     if (createdTime < e.checkedTime)
     {
         isChecked = true;
         var jointSprite = GetComponent <Transform>().GetChild(1);
         jointSprite.GetComponent <SpriteRenderer>().color = new Color(0.85f, 0.85f, 0.85f, 1f);
     }
 }
Пример #3
0
    private void Awake()
    {
        // initialize events:

        if (GameWinEvent == null)
        {
            GameWinEvent = new GameWinEvent();
        }

        if (GameLoseEvent == null)
        {
            GameLoseEvent = new GameLoseEvent();
        }

        if (PauseEvent == null)
        {
            PauseEvent = new PauseEvent();
        }

        if (UnPauseEvent == null)
        {
            UnPauseEvent = new UnPauseEvent();
        }

        if (BoostEvent == null)
        {
            BoostEvent = new BoostEvent();
        }

        if (ShieldEvent == null)
        {
            ShieldEvent = new ShieldEvent();
        }

        if (KnockedOffCarEvent == null)
        {
            KnockedOffCarEvent = new KnockedOffCarEvent();
        }

        if (DeterminedClosestCarEvent == null)
        {
            DeterminedClosestCarEvent = new DeterminedClosestCarEvent();
        }
    }
Пример #4
0
 void ShieldHandler(ShieldEvent e)
 {
     if (e.shieldID == shieldCounter)
     {
         shieldCounter++;
         currentY += Random.Range(Ymin, Ymax);
         // if (currentY > 16f) {
         //     return;
         // }
         // currentX = Random.Range(Xmin, Xmax);
         currentX       = Mathf.Lerp(Xmin, Xmax, NextShieldPosition());
         currentShieldL = (GameObject)Instantiate(shieldPrefab, new Vector2(-currentX, currentY) + (Vector2)transform.position, Quaternion.identity);
         currentShieldL.GetComponent <ShieldController>().playerID = 1;
         currentShieldL.GetComponent <ShieldController>().shieldID = shieldCounter;
         currentShieldR = (GameObject)Instantiate(shieldPrefab, new Vector2(currentX, currentY) + (Vector2)transform.position, Quaternion.identity);
         currentShieldR.GetComponent <ShieldController>().playerID = 2;
         currentShieldR.GetComponent <ShieldController>().shieldID = shieldCounter;
     }
 }
        private void StartAttack()
        {
            //WowUnit wowUnit = WowInterface.ObjectManager.GetClosestWowUnitByDisplayId(AnubRhekanDisplayId, false);


            if (WowInterface.ObjectManager.TargetGuid != 0)
            {
                if (WowInterface.ObjectManager.TargetGuid != WowInterface.ObjectManager.PlayerGuid)
                {
                    Targetselection();
                }

                if (WowInterface.HookManager.WowGetUnitReaction(WowInterface.ObjectManager.Player, WowInterface.ObjectManager.Target) == WowUnitReaction.Friendly)
                {
                    WowInterface.HookManager.WowClearTarget();
                    return;
                }

                if (WowInterface.ObjectManager.Player.IsInMeleeRange(WowInterface.ObjectManager.Target))
                {
                    if (!WowInterface.ObjectManager.Player.IsAutoAttacking && AutoAttackEvent.Run())
                    {
                        WowInterface.HookManager.LuaStartAutoAttack();
                    }

                    if ((WowInterface.ObjectManager.Player.IsConfused || WowInterface.ObjectManager.Player.IsSilenced || WowInterface.ObjectManager.Player.IsDazed) && CustomCastSpell(EveryManforHimselfSpell))
                    {
                        return;
                    }

                    if (CustomCastSpell(AvengingWrathSpell))
                    {
                        return;
                    }

                    if (WowInterface.ObjectManager.Player.ManaPercentage <= 20 && CustomCastSpell(DivinePleaSpell))
                    {
                        return;
                    }

                    if (ShieldEvent.Run() && CustomCastSpell(SacredShieldSpell))
                    {
                        return;
                    }

                    if (WowInterface.ObjectManager.Player.HealthPercentage <= 15 && CustomCastSpell(layonHandsSpell))
                    {
                        return;
                    }
                    if (WowInterface.ObjectManager.Player.HealthPercentage <= 25 && CustomCastSpell(holyLightSpell))
                    {
                        return;
                    }
                    if (WowInterface.ObjectManager.Player.HealthPercentage <= 50 && CustomCastSpell(divineProtectionSpell))
                    {
                        return;
                    }
                    if (WowInterface.ObjectManager.Target.HealthPercentage <= 20 && CustomCastSpell(hammerofWrathSpell))
                    {
                        return;
                    }
                    if ((WowInterface.ObjectManager.Target.HealthPercentage <= 20 || WowInterface.ObjectManager.Player.HealthPercentage <= 30 || WowInterface.ObjectManager.Target.IsCasting) && CustomCastSpell(hammerofJusticeSpell))
                    {
                        return;
                    }
                    if (WowInterface.ObjectManager.Target.Name != "Anub'Rekhan" && CustomCastSpell(handofReckoningSpell))
                    {
                        return;
                    }
                    if (CustomCastSpell(avengersShieldSpell))
                    {
                        return;
                    }
                    if (CustomCastSpell(consecrationSpell))
                    {
                        return;
                    }
                    if (CustomCastSpell(judgementofLightSpell))
                    {
                        return;
                    }
                    if (CustomCastSpell(holyShieldSpell))
                    {
                        return;
                    }
                    if (CustomCastSpell(exorcismSpell))
                    {
                        return;
                    }
                }
                else//Range
                {
                    if (CustomCastSpell(avengersShieldSpell))
                    {
                        return;
                    }
                }
            }
            else
            {
                Targetselection();
            }
        }