示例#1
0
    // Tile, Enemy and PowerUp collisions go here.
    private void OnTriggerEnter2D(Collider2D collision)
    {
        StarControl star = collision.GetComponent <StarControl>();

        if (star != null)
        {
            if (Time.time > _starTimer + 0.5f)
            {
                _starCount++;
                _starTimer = Time.time;
            }
        }
        EnemyTag enemy = collision.GetComponent <EnemyTag>();

        if (enemy != null)
        {
            Destroy(gameObject);
        }
        TileControl tc = collision.transform.gameObject.GetComponent <TileControl>();

        if (tc != null)
        {
            tc.Damage();
        }
    }
示例#2
0
        public void AddNbEnemiesToLine(int nbEnemies, EnemyTag enemyTag, double y)
        {
            for (int i = 0; i < nbEnemies; i++)
            {
                switch (enemyTag)//Permet d'integrer un type specifique d'ennemis
                {
                case EnemyTag.ALIEN:
                    Alien alien1 = new Alien();
                    AddEnemy(alien1, i, y);
                    break;

                case EnemyTag.UFO:
                    Ufo alien2 = new Ufo();
                    AddEnemy(alien2, i, y);
                    break;

                case EnemyTag.SQUID1:
                    SquidOne alien3 = new SquidOne();
                    AddEnemy(alien3, i, y);
                    break;

                case EnemyTag.SQUID2:
                    SquidTwo alien4 = new SquidTwo();
                    AddEnemy(alien4, i, y);
                    break;

                case EnemyTag.SQUARE:
                    SquareEnemy alien5 = new SquareEnemy();
                    AddEnemy(alien5, i, y);
                    break;

                case EnemyTag.ARMS1:
                    ArmsEnemyOne alien6 = new ArmsEnemyOne();
                    AddEnemy(alien6, i, y);
                    break;

                case EnemyTag.ARMS2:
                    ArmsEnemyTwo alien7 = new ArmsEnemyTwo();
                    AddEnemy(alien7, i, y);
                    break;

                default:
                    TelyEnemy alien8 = new TelyEnemy();
                    AddEnemy(alien8, i, y);
                    break;
                }
            }
        }
示例#3
0
 void Start()
 {
     //nController = FindObjectOfType<NPCController>();
     direction     = Vector3.zero;
     cAI           = GetComponent <ChasingAI>();
     rAI           = GetComponent <RomingAI>();
     totalDistance = Mathf.Infinity;
     target        = GameObject.FindGameObjectWithTag("Player").transform;
     seeker        = GetComponent <Seeker>();
     rb            = GetComponent <Rigidbody2D>();
     InvokeRepeating("UpdatePath", 0f, 0.5f);
     enemyTag      = GetComponent <EnemyTag>();
     enemyBody     = gameObject.transform.Find("EnemyBody");
     speed         = 0f;
     maxSpeedRange = 2.8f;
     minSpeed      = 1.4f;
 }
示例#4
0
 private void OnEnable()
 {
     enemy     = gameObject.transform.parent.gameObject.transform.parent.gameObject;
     enemyAI   = enemy.GetComponent <EnemyAI>();
     enemyTag  = enemy.GetComponent <EnemyTag>();
     enemyFoot = enemy.transform.Find("EnemyFoot");
     if (gameObject.transform.Find("HammerAttPoint"))
     {
         hammerAttPoint = gameObject.transform.Find("HammerAttPoint");
     }
     if (gameObject.transform.Find("KnifeAttPoint"))
     {
         knifeAttPoint = gameObject.transform.Find("KnifeAttPoint");
     }
     rend   = GetComponent <SpriteRenderer>();
     alpha  = rend.color.a;
     player = GameObject.Find("Player");
 }
 public override string ToDebugString()
 {
     return($"{ToolBox.GetDebugSymbol(isFinished)} {nameof(CombatAction)} -> (Cooldown: {CoolDown.ColorizeObject()}, CombatMode: {CombatMode.ColorizeObject()}, NPCTag: {NPCTag.ColorizeObject()}, EnemyTag: {EnemyTag.ColorizeObject()})");
 }