Inheritance: MonoBehaviour
    void OnTriggerStay2D(Collider2D other)
    {
        //if(this.transform.parent!=null)

        if (other.gameObject.name.Contains("enemy_")&&this.gameObject.transform.parent == null) {
            if (timesTriggered <= 2) {
                timesTriggered++;
                GameObject ps = Instantiate (particles, transform.position, transform.rotation)
                    as GameObject;

                ps.renderer.sortingLayerName = "Forground";
                enemyScript = other.gameObject.GetComponent<EnemyBehavior>();
                Destroy(ps, .6f);

            }else{
                //only add bubble if there isn't already one
                if(!(enemyScript.hasBubble)){
                    //this.transform.position = other.transform.position;

                    Destroy(this.gameObject.GetComponent<Rigidbody2D>());
                    this.transform.parent = other.transform;
                    this.transform.localPosition = Vector3.zero;
                    hit = true;
                    enemyScript.hasBubble = true;
                    enemyScript.bubbleAdded = Time.time;

                }
            }
        }
    }
示例#2
0
 public EnemyType(Texture2D texture, float velocity, int score, int pn, EnemyBehavior beh)
 {
     this.texture = texture;
     this.velocity = velocity;
     this.score = score;
     this.ParticleNumber = pn;
     this.Behavior = beh;
 }
示例#3
0
    // Update is called once per frame
    void Start()
    {
        mSight = GetComponent<EnemySight>();
        mBehaviouir = new WonderState();
        monkeyAudioSource = GetComponent<AudioSource>();

        damage = new MonkeyDamage( this,materialEffect );
    }
示例#4
0
 void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.tag == "Enemy")
     {
         nearestEnemy = other.gameObject.GetComponent <EnemyBehavior> ();
         if (!nearestEnemy.isDead)
         {
             nearEnemy = true;
         }
     }
 }
示例#5
0
 // Use this for initialization
 void Start()
 {
     controller    = GetComponent <Controller2D>();
     enemyBehavior = GetComponent <EnemyBehavior>();
     players       = new List <Transform>();
     GameObject[] playersGameObject = GameObject.FindGameObjectsWithTag("Player");
     foreach (GameObject player in playersGameObject)
     {
         players.Add(player.transform);
     }
 }
示例#6
0
        public Enemy()
        {
            if (rand == null)
            {
                rand = new Random();
            }

            //grayson add different types/ randomize it here!
            //random type
            type = (EnemyType)rand.Next(0, 4);

            //random hall
            hall = rand.Next(0, 6);
            //hall = 4;

            // random pos
            //different halls random positions
            if (hall == 0)
            {
                pos = new Vector3(rand.Next(95, 130), 5f, -200);
                rot = MathHelper.ToRadians(0);
            }
            else if (hall == 1)
            {
                pos = new Vector3(235, 5f, rand.Next(-15, 15));
                rot = MathHelper.ToRadians(270);
            }
            else if (hall == 2)
            {
                //pos = new Vector3(100, 5f, 200);
                pos = new Vector3(rand.Next(90, 105), 5f, rand.Next(150, 200));
                rot = MathHelper.ToRadians(180);
            }
            else if (hall == 3)
            {
                pos = new Vector3(rand.Next(-130, -100), 5f, 200);
                rot = MathHelper.ToRadians(150);
            }
            else if (hall == 4)
            {
                pos = new Vector3(-225, 5f, rand.Next(-15, 15));
                rot = MathHelper.ToRadians(90);
            }
            else
            {
                pos = new Vector3(rand.Next(-140, -100), 5f, -205);
            }



            //rot = MathHelper.ToRadians(rand.Next(0, 360));
            radius   = 5f;
            behavior = EnemyBehavior.Attack;
        }
示例#7
0
    private void SpawnEnemy(Vector3 spawnPost)
    {
        if (m_EnemyEnergy.SpawnPlayer(EneDef.EnergyCost))
        {
            GameObject enemy = Instantiate(m_EnemyPfab, spawnPost, Quaternion.identity, m_EnemysGroup.transform);

            EnemyBehavior eb = enemy.GetComponent <EnemyBehavior>();
            eb.Init(this, EneDef.SpawnTime);
            m_Enemyers.Add(eb);
        }
    }
示例#8
0
 void ScheduleNewEnemy(GameObject gameObject, EnemyBehavior enemyBehavior)
 {
     foreach (var enemyData in Enemies)
     {
         if (enemyData.Pool.Contains(gameObject))
         {
             DeployEnemies(enemyData);
             return;
         }
     }
 }
示例#9
0
 private void OnTriggerEnter(Collider other)
 {
     if (other.CompareTag("Enemy"))
     {
         if (!other.isTrigger) //can't hit the enemy's weapon
         {
             EnemyBehavior enemyBehavior = other.GetComponent <EnemyBehavior>();
             enemyBehavior.HitMe(transform, weaponScript.dmg);
         }
     }
 }
示例#10
0
    void Awake()
    {
        // Set up references
        enemyBehavior = GetComponent<EnemyBehavior>();
        enemyStats = GetComponent<EnemyStats>();

        // Subscribe to appropriate events
        References.stateManager.changeState += onStateChange;
        enemyBehavior.changeOfActions += onChangeAction;
        enemyBehavior.onEnemyDeath += onDeath;
    }
示例#11
0
    void Freeze()
    {
        frozen = true;
        spawnParticles.SetActive(true);
        spawnParticles.GetComponent <Renderer>().material.mainTexture = Resources.Load <Texture>("particle-blue");
        ParticleSystem.EmissionModule em = particleSystem.emission;
        em.enabled = true;
        EnemyBehavior mover = GetComponent <EnemyBehavior> ();

        mover.setMoveSpeed(moveSpeed / 2f);
        freezeTimer = Time.time + 3.5f;
    }
    /// <summary>
    /// 生成横向pingpong敌人
    /// </summary>
    /// <param name="count"></param>
    private void SpawnHorizontalPingpongEnemy()
    {
        var pos = GetStartPosition(true);

        for (int i = 0; i < pos.Length; i++)
        {
            enemyBehavior = new EnemyBehavior();
            enemyBehavior.pingpongBehavior = PingpongBehavior.Horizontal;
            var entity = entityFactoryService.CreateEnemy(UidUtils.Uid, pos[i], EnemyType.PingpongBehavior, enemyBehavior, speed);
            pingPongEnemyList.Add(entity);
        }
    }
示例#13
0
 void checkDeadEnemies()
 {
     foreach (GameObject o in enemies)
     {
         behavior = o.GetComponent <EnemyBehavior> ();
         if (behavior.isDead())
         {
             enemies.Remove(o);
             Destroy(o);
         }
     }
 }
    private void HighlightCurrentEnemy()
    {
        //lighten the models
        EnemyBehavior current = _enemyList[_targetController.GetCurrentIndex()];

        MeshRenderer[] meshList = current.GetComponentsInChildren <MeshRenderer>();

        foreach (MeshRenderer mesh in meshList)
        {
            mesh.material = _enemyOriginal;
        }
    }
示例#15
0
文件: Enemy.cs 项目: Nydane/PFE_Proto
    // Start is called before the first frame update
    void Start()
    {
        _renderer = GetComponent <Renderer>();

        if (hasBehavior)
        {
            enemyBehaviorScript = GetComponent <EnemyBehavior>();
        }
        currentEnemyHealth = maxenemyHealth;
        healthBar.SetMaxHealth(currentEnemyHealth);
        rbEnemy = transform.GetComponent <Rigidbody>();
    }
示例#16
0
 void OnTriggerEnter2D(Collider2D other)
 {
     if (other.gameObject.name == "EnemyPosition")
     {
         EnemyScript   enemy = other.GetComponent <EnemyScript>();
         EnemyBehavior b     = enemy.GetComponentInParent <EnemyBehavior>();
         if (GetComponentInParent <PathScript>().id == b.pathId && b.useCustomPath)
         {
             enemy.StartCoroutine("ChangeDirection");
         }
     }
 }
    //Kollar om man nuddar en fiendes hitbox
    //Alla fiender har ett child objekt som har deras hitbox på sig. Den boxcollidern måste vara triggerd - KJ
    private void OnTriggerEnter2D(Collider2D collision)
    {
        //Skaffar referense till enemyns EnemyBehavior script, för att kunna veta hur mycket skada spelaren ska ta
        EnemyBehavior enemy = collision.GetComponentInParent <EnemyBehavior>();

        //om enemy == null betyder det att det blev en collision med en boxcollider som var triggerd, men inte var en enemy.
        //därför ska spelaren inte ta skada - KJ
        if (enemy != null && !enemy.isDead)
        {
            TakeDamage(enemy.damage);
        }
    }
示例#18
0
    private void HitTarget()
    {
        if (this.targetAtAttackTime == null)
        {
            throw new ApplicationException("HitTarget() called with targetAtAttackTime==null");
        }
        this.hasAttackProced = true;
        var targetEnemyBehavior = this.targetAtAttackTime.GetComponent <EnemyBehavior>();

        targetEnemyBehavior.TakeHit(this.damage);
        this.targetAtAttackTime = null;
    }
示例#19
0
 void RayCastShooting()
 {
     if (Physics.Raycast(fpsCam.transform.position, fpsCam.transform.forward, out hit, shootingRange))
     {
         if (hit.transform.tag == "Enemy")
         {
             EnemyBehavior _enemyScript = hit.transform.gameObject.GetComponent <EnemyBehavior>();
             _enemyScript.SetKnockbackState();
             Debug.Log(hit.transform.name);
         }
     }
 }
示例#20
0
 // Use this for initialization
 void Start()
 {
     if (portadorVida.tag == "Player") {
         this.player = portadorVida.GetComponent("PlayerBehavior") as PlayerBehavior;
         this.status = this.player.getStatus();
     }
     else if (portadorVida.tag == "inimigo") {
         this.inimigo = portadorVida.GetComponent("EnemyBehavior") as EnemyBehavior;
         this.status = this.inimigo.getStatus();
     }
     this.HPTotal = this.status.hp;
 }
示例#21
0
 public void BehaviorPointAndShoot()
 {
     targetPos = playerT.position + Vector3.up * Random.Range(1.5f, 5f) + Vector3.right * Random.Range(-1.5f, 1.5f);
     targetPos = new Vector3(
         Mathf.Clamp(targetPos.x, GameManager.Instance.minPosX, GameManager.Instance.maxPosX),
         Mathf.Clamp(targetPos.y + 1.5f, playerT.position.y + 5f, transform.position.y),
         0
         );
     activeBehavior = EnemyBehavior.PointAndShoot;
     lastTimeShot   = 0f;
     Unparent();
 }
示例#22
0
    void Start()
    {
        rb        = GetComponent <Rigidbody2D>();
        maskIndex = LayerMask.GetMask("Solid");
        boxCol    = GetComponent <BoxCollider2D>();

        enemyScr = GetComponent <EnemyBehavior>();

        verticalTime = verticalRange;

        startHeight = transform.position.y;
    }
 private void Start()  // Basically Launch
 {
     enemyBehavior = shooter.parent.parent.GetComponent <EnemyBehavior>();
     //enemyMaxForce = enemyBehavior.enemyMaxForce;
     if (enemyBehavior.listSize > 0)
     {
         GetEnemyPos();
         Launch();
         //GameObject light = Instantiate(clickLight, new Vector3(enemyPosition.x + randomXValue, 10 + enemyPosition.y, enemyPosition.z + randomZValue), Quaternion.Euler(90f, 0f, 0f));
         //Destroy(light, 1.5f);
     }
 }
示例#24
0
 public void SpawnItem(EnemyBehavior enemy)
 {
     if (enemy.tag == "Chest")
     {
         SpawnAccessory(enemy, 100);
     }
     else
     {
         SpawnAccessory(enemy, 10);
         DropCoins(enemy);
     }
 }
示例#25
0
 private void OnCollisionEnter2D(Collision2D collision)
 {
     //Debug.Log("(player) Collision Enter");
     if (collision.gameObject.tag.Equals("Enemy"))
     {
         //This allows custom damage to player for each enemy, i.e. bigger enemies can cause more damage - travis
         EnemyBehavior enemy = collision.gameObject.GetComponent <EnemyBehavior>();
         int           ouch  = enemy.damageDealt;
         health -= ouch;
         Debug.Log("Player contact with enemy - damage: " + ouch);
     }
 }
示例#26
0
 void OnTriggerEnter(Collider collider)
 {
     Debug.Log(collider.gameObject.name);
     Enemy = collider.GetComponent <EnemyBehavior>();
     if (Enemy != null)
     {
         Enemy.TakeDamage(GetDamage());
     }
     if (collider.gameObject.name != "Player")
     {
         Destroy(gameObject);
     }
 }
示例#27
0
    void OnTriggerEnter2D(Collider2D hitInfo)
    {
        Debug.Log(hitInfo.name);
        EnemyBehavior enemy = hitInfo.GetComponent <EnemyBehavior>();

        if (enemy != null)
        {
            enemy.TakeDamage(damage);
        }

        Instantiate(impactEffect, transform.position, transform.rotation);
        Destroy(gameObject);
    }
 void Update()
 {
     if (Input.GetMouseButtonDown(0))  // Left Mouse Botton
     {
         Vector3 p = mMainCamera.ScreenToWorldPoint(Input.mousePosition);
         p.z = 0f;
         GameObject newEnemy = Instantiate(mPartolEnemy);
         newEnemy.transform.position = p;
         EnemyBehavior b = newEnemy.GetComponent <EnemyBehavior>();
         b.SetEnemyStates(mWorldPercentBound.value(), mCenterRegion.value(), mTurnRate.value());
         // Debug.Log("Mouse click:" + p);
     }
 }
示例#29
0
    public IEnumerator Execute()
    {
        StageData stageData = gameStateData.CurStageData;

        for (int i = 0; i < stageData.enemys.Length; i++)
        {
            EnemyData     enemyData = stageData.enemys[i];
            EnemyBehavior enemy     = Instantiate(enemyData.enemyPrefab, enemySpawnPoint.position, enemySpawnPoint.rotation);
            yield return(StartCoroutine(enemy.Execute(enemyData)));

            Destroy(enemy.gameObject);
        }
    }
示例#30
0
 private void Start()
 {
     enemyBehavior     = GetComponent <EnemyBehavior>();
     rageScript        = this.gameObject.GetComponentInParent <Rage>();
     animator          = this.gameObject.GetComponent <Animator>();
     makeSnowballTimer = makeSnowball + Random.Range(0f, timerRandomizer);
     windUpTimer       = windUp;
     throwBallTimer    = throwBall;
     if (startingGun != null)
     {
         EquipGun(startingGun);
     }
 }
示例#31
0
 public Enemy(
     char[] chars,
     float emitCooldown,
     Projectile projectile,
     EnemyBehavior behavior       = EnemyBehavior.Stationary,
     EnemyEmitPattern emitPattern = EnemyEmitPattern.Forward)
 {
     Chars        = chars;
     EmitCooldown = emitCooldown;
     Projectile   = projectile;
     Behavior     = behavior;
     EmitPattern  = emitPattern;
 }
示例#32
0
 // Update is called once per frame
 void Update()
 {
     if (AllMembersDead())
     {
         SpawnUntilFull();
         Debug.Log("Next wave");
         EnemyBehavior enemyBehavior = enemyPrefab.GetComponent <EnemyBehavior>();
         enemyBehavior.AddDifficulty();
         movementSpeed *= 1.1f;
         PlayerController player = GameObject.Find("player").GetComponent <PlayerController>();
         player.projectileSpeed *= 1.2f;
     }
 }
示例#33
0
    // Start is called before the first frame update
    void OnTriggerEnter2D(Collider2D col)
    {
        EnemyBehavior enemy = col.gameObject.GetComponent <EnemyBehavior>();

        if (enemy == null)
        {
            return;
        }

        //TODO : Enlever une vie
        player.RemoveLives(enemy.value);
        GameObject.Destroy(col.gameObject);
    }
示例#34
0
        private IEnumerator KillAlien(GameObject alien)
        {
            yield return(new WaitForSeconds(0.2f));

            if (alien != null)
            {
                EnemyBehavior enemyBehavior = alien.GetComponent <EnemyBehavior>();
                if (enemyBehavior != null)
                {
                    enemyBehavior.OnHit();
                }
            }
        }
示例#35
0
    public bool IsWalkable(Vector3Int from, Vector3Int to, string obstructors = "")
    {
        // Check for blocks
        if (blockMap.HasTile(to))
        {
            return(false);
        }
        // Check for walls
        string     face     = "";
        Vector3Int wallCell = from;

        if (to.y > from.y)
        {
            face = "left";
        }
        else if (to.x > from.x)
        {
            face = "right";
        }
        else if (to.y < from.y)
        {
            face = "left";
            wallCell.y--;
        }
        else if (to.x < from.x)
        {
            face = "right";
            wallCell.x--;
        }
        if (maps[face].HasTile(wallCell))
        {
            string targetWall = maps[face].GetTile(wallCell).name.ToLower();
            if (targetWall.IndexOf(face) >= 0 && targetWall.IndexOf("open") < 0)
            {
                return(false);
            }
        }
        if (obstructors == "enemy")
        {
            GameObject [] entities = GameObject.FindGameObjectsWithTag("Enemy");
            foreach (var e in entities)
            {
                EnemyBehavior es = e.GetComponent <EnemyBehavior>();
                if (es.tilePosition == to && !es.dying)
                {
                    return(false);
                }
            }
        }
        return(true);
    }
示例#36
0
    // Start is called before the first frame update
    public override void Start()
    {
        base.Start();
        TurnTowardsBehavior turnTowardsBehavior = GetComponentInParent <TurnTowardsBehavior>();

        GameObject target = null;

        shootObjectDetection.CanShoot += (timeSinceLastShot, projectilesActive) => {
            return(timeSinceLastShot > shootInterval && (maxProjectilesActive < 0 || projectilesActive < maxProjectilesActive));
        };
        shootObjectDetection.CreateProjectile += () => {
            GameObject projectile = Instantiate <GameObject>(projectilePrefab);
            projectile.transform.position = projectileTransform.transform.position;
            projectile.transform.rotation = projectileTransform.transform.rotation;
            Rigidbody2D rigidbody = projectile.GetComponent <Rigidbody2D>();
            rigidbody.velocity = (target.transform.position - projectile.transform.position).normalized * projectileSpeed;
            return(projectile);
        };
        shootObjectDetection.OnHit += (projectile, hitObject) =>
        {
            //Debug.Log("Projectile Hit");
            EnemyBehavior enemy = hitObject.GetComponent <EnemyBehavior>();
            // filter out hits on enemies that have already been destroyed
            if (enemy.IsDead)
            {
                return(false);
            }
            enemy.Health -= projectileDamage;
            return(true);
        };
        shootObjectDetection.OnTargetChange += (newTarget) =>
        {
            turnTowardsBehavior.target = newTarget;
            target = newTarget;
        };

        GameController.instance.OnRoundEnd += (roundNum) =>
        {
            if (this != null && this.isPlaced)
            {
                foreach (HackableTower ht in FindObjectsOfType <HackableTower>().OrderBy(e => Random.value))
                {
                    if (ht != null && ht.Hacked)
                    {
                        StartCoroutine(RepairTower(ht));
                        return;
                    }
                }
            }
        };
    }
示例#37
0
    void ManageBossHealthBar()
    {
        if (bossTime == false) {
            progressBarImage.fillAmount = 1;
        }

        if (GameObject.Find ("Boss(Clone)")) {
            bossTime = true;
            bossInstance = GameObject.Find ("Boss(Clone)").GetComponent<EnemyBehavior>();
            maxHealth = bossInstance.maxHealth;
            curHealth = bossInstance.health;

            progressBarImage.fillAmount = curHealth / maxHealth;
        } else if (bossTime == true) {
            progressBarImage.fillAmount = 0;
        }
    }
示例#38
0
    void Awake()
    {
        // Set up references
        enemyBehavior = GetComponent<EnemyBehavior>();
        enemyStats = GetComponent<EnemyStats>();
        navigation = GetComponent<NavMeshAgent>();
        enemyTargetSeeking = GetComponent<EnemyTargetSeeking>();

        References.stateManager.changeState += onStateChange;
        enemyBehavior.changeOfActions += onChangeAction;
        enemyBehavior.changeOfIntentions += onChangeIntent;
        enemyTargetSeeking.onTargetVisible += onTargetVisible;
        enemyBehavior.onEnemyDeath += onDeath;

        RaycastHit hitInfo;
        Physics.Raycast(new Ray(transform.position, Vector3.down), out hitInfo, 10000f);
        transform.position = new Vector3(hitInfo.point.x, hitInfo.point.y + (transform.localScale.y / 2), hitInfo.point.z);

        transform.LookAt(new Vector3(References.castle.transform.position.x, transform.position.y, References.castle.transform.position.z));
    }
示例#39
0
 // Use this for initialization
 void Start()
 {
     behave = GameObject.Find("EnemyManager").GetComponent<EnemyBehavior>();
 }
示例#40
0
 IEnumerator makePlayerHitEnemyWhenDone(EnemyBehavior enemy)
 {
     while (playerObj.isPunchingEnemy) {
         yield return null;
     }
     //enemy.Damage(1);
     HitEnemy (enemy);
     yield return null;
 }
示例#41
0
 IEnumerator checkIfPlayerHitsEnemyWhileMissing(EnemyBehavior enemy)
 {
     while (playerObj.isPunchingAir) {
         yield return null;
     }
     if (enemy.inPosition) {
         //enemy.Damage (1);
         HitEnemy (enemy);
     } else {
         soundContainer.PlayAudio(SoundContainerScript.audioClips.miss);
     }
     yield return null;
 }
示例#42
0
 // Use this for initialization
 void Start()
 {
     script = GameObject.Find("EnemyManager").GetComponent<EnemyBehavior>();
     script.alive++;
 }
示例#43
0
 private void SpawnAccessory(EnemyBehavior enemy, float dropChance)
 {
     GameObject accessory = RandomAccessory((int) enemy.IncludedDrops);
     if (enemy.tag == "Chest") {
         accessory = ChestAccessory((int) enemy.IncludedDrops);
     }
     if (accessory != null && Random.Range(0, 100) < dropChance)
     {
         GameObject instance =
             Instantiate(accessory, enemy.gameObject.transform.position, Quaternion.identity) as GameObject;
         instance.GetComponent<Rigidbody2D>().velocity = new Vector2(Random.Range(-4, 4), Random.Range(0, 4));
         StartCoroutine(EnablePickup(instance, 2f));
     }
 }
示例#44
0
 private void DropCoins(EnemyBehavior enemy)
 {
     GameObject instance = Instantiate(Resources.Load("Coin", typeof(GameObject)), enemy.gameObject.transform.position, Quaternion.identity) as GameObject;
     instance.GetComponent<Coin>().CoinAmount = Random.Range((int)(enemy.coinDropAmount*0.7), enemy.coinDropAmount);
     instance.GetComponent<Rigidbody2D> ().velocity = new Vector2 (Random.Range (-4, 4), Random.Range (0, 4));
 }
 // Use this for initialization
 void Start()
 {
     EB = transform.parent.parent.gameObject.GetComponent<EnemyBehavior>();
     HealthPoints = EB.HealthPoints;
 }
示例#46
0
    private bool shootEvent = false; //activate the event parameters only once (call once)

    #endregion Fields

    #region Methods

    // Use this for initialization
    void Start()
    {
        Player = GameObject.FindGameObjectWithTag("Player");
        enemyControl = GameObject.Find("EnemyManager").GetComponent<EnemyBehavior>();
    }
示例#47
0
    public void Start()
    {
        enemy = GameObject.Find("EnemyManager").GetComponent<EnemyBehavior>();
        seeker = GetComponent<Seeker>();
        controller = GetComponent<CharacterController>();
        //script = GetComponent<PlayerHealth>();
        //eventScript = FindClosestPath().GetComponent<PathEvent>();
        //waitScript = GameObject.FindGameObjectWithTag("Player").GetComponent<PlayerHealth>();

        startpeed = speed; //Store the speed of movement just incase.

        //Start a new path to the targetPosition, return the result to the OnPathComplete function
        seeker.StartPath (transform.position,FindClosestPath().transform.position, OnPathComplete);
    }
示例#48
0
 void Awake()
 {
     base.Awake();
     enemyBehavior = GetComponent<EnemyBehavior>();
 }
示例#49
0
 // Use this for initialization
 void Start()
 {
     if (portador.tag == "Player") {
         this.player = portador.GetComponent("PlayerBehavior") as PlayerBehavior;
         this.defesaAtual = this.status.defesa+this.player.getStatus().defesa;
     }
     else if (portador.tag == "inimigo") {
         this.inimigo = portador.GetComponent("EnemyBehavior") as EnemyBehavior;
         this.defesaAtual = this.status.defesa + this.inimigo.getStatus().defesa;
     }
     this.defesaBase = this.defesaAtual;
     this.buffPortador();
 }
示例#50
0
 private void HitEnemy(EnemyBehavior enemy)
 {
     switch (enemy.enemytype)
     {
     case EnemyBehavior.type.basic:
         enemy.Damage(1);
         soundContainer.PlayAudio(SoundContainerScript.audioClips.hit);
         break;
     case EnemyBehavior.type.puukko:
         if(enemy.staggering)
         {
             enemy.Damage(1);
             soundContainer.PlayAudio(SoundContainerScript.audioClips.hit);
         }
         break;
     case EnemyBehavior.type.shield:
         if(enemy.staggering)
         {
             enemy.Damage(1);
             soundContainer.PlayAudio(SoundContainerScript.audioClips.hit);
         }
         else { enemy.staggering = true; }
         break;
     default:
         break;
     }
 }
示例#51
0
 void Awake()
 {
     enemyBehavior = GetComponent<EnemyBehavior>();
 }