예제 #1
0
    void setEnemyBehavior(EnemyScript e, EnemyType type)
    {
        switch(type)
        {
            case EnemyType.AGGRESSIVE:
                e.boardingForce = 4;
                e.boardingSpeed = 0.3f;
                e.getAgent().speed = 3f;
                e.health = 100;
                e.windowAggression = 6;
                e.getAgent().avoidancePriority = aggressiveEnemies;
                aggressiveEnemies++;
                e.setSearchType(EnemyScript.SearchTypes.CLOSEST);
            break;
            case EnemyType.RUNNER:
                e.boardingForce = 2;
                e.boardingSpeed = 0.1f;
                e.getAgent().speed = 5f;
                e.health = 90;
                e.windowAggression = 1;
                e.getAgent().avoidancePriority = waveSize * 2 + runnerEnemies;
                runnerEnemies ++;
                e.setSearchType(EnemyScript.SearchTypes.CLOSEST);
            break;
            case EnemyType.VANGUARD:
                e.boardingForce = 2;
                e.boardingSpeed = 0.15f;
                e.getAgent().speed = 4f;
                e.health = 70;
                e.windowAggression = 4;
                e.getAgent().avoidancePriority = waveSize + vanguardEnemies;
                vanguardEnemies ++;
                e.setSearchType(EnemyScript.SearchTypes.FARTHEST);
            break;

            case EnemyType.SUPPORTER:
                e.boardingForce = 1;
                e.boardingSpeed = 0.1f;
                e.getAgent().speed = 4f;
                e.health = 120;
                e.windowAggression = 7;
                e.getAgent().avoidancePriority = waveSize * 3 + helperEnemies;
                helperEnemies++;
                e.setSearchType(EnemyScript.SearchTypes.AID);
            break;
        }
    }