// Damages enemy and handles death shit
    public void Damage(float damageTaken)
    {
        if (!isTeleporting)
        {
            currentHealth -= damageTaken;
            if (currentHealth <= phaseHealth[currentPhase + 1])
            {
                isTeleporting = true;
                currentHealth = phaseHealth[currentPhase + 1];

                Instantiate(teleportEffect, transform.position, Quaternion.identity);
                EnemySpawnController spawnController = gameManager.GetComponent <EnemySpawnController>();
                transform.position = spawnController.PickSpawnPointFurthestFromPlayer();
                Instantiate(teleportEffect, transform.position, Quaternion.identity);

                currentPhase++;
                isTeleporting = false;
            }
        }
        if (currentHealth <= 0f && !isDead)
        {
            isDead = true;
            GameObject explosionEffect = Instantiate(explosion, transform.position, Quaternion.identity);
            explosionEffect.transform.localScale = new Vector3(explosionEffect.transform.localScale.x * 2, explosionEffect.transform.localScale.y * 2, explosionEffect.transform.localScale.z * 2);
            garbageScript.SpawnAtLocation(1, transform.position.x, transform.position.y, false);
            gameManager.DecreaseBossCount();
            Destroy(leftSpikeBall);
            Destroy(rightSpikeBall);
            Destroy(gameObject);
        }
    }
Beispiel #2
0
 void Awake()
 {
     //Store the instance of this script
     instance = this;
     //Initialize the List
     enemies = new List <Enemy>();
 }
 private void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
Beispiel #4
0
 void Awake()
 {
     // 정적 변수인 instance에 현재 스크립트의 인스턴스를 저장한다
     instance = this;
     // 리스트를 초기화한다
     enemies = new List <EnemyController>();
 }
 public void InitGame()//запуск игры
 {
     UI.GetSetting();
     Enemyes              = new List <Enemy>();
     characterData        = CustomResources.Load <CharacterData>(StringManager.CharacterDataPath);
     Character            = new Character(characterData);
     playerController     = new PlayerController();
     cameraController     = new CameraController();
     enemySpawnController = new EnemySpawnController();
     enemyController      = new EnemyController();
     MainCamera           = Camera.main.transform; // камера
     Player = GameObject.FindGameObjectWithTag(StringManager.TagPlayer).transform;
     LevelGame.SetActive(true);
     controllers    = new IOnUpdate[5];//можно List<>
     controllers[0] = playerController;
     controllers[1] = cameraController;
     controllers[2] = enemySpawnController;
     controllers[3] = enemyController;
     controllers[4] = timeRemainingController;
     enemySpawnController.OnStart();
     playerController.OnStart();
     cameraController.OnStart();
     UI.GameUi.SetActive(true);
     UI.Menu.SetActive(false);
 }
Beispiel #6
0
    private void OnEnable()
    {
        enemySpawnController = (EnemySpawnController)target;

        enemySpawnInfoProperty   = serializedObject.FindProperty("enemySpawnInfo");
        enemySpawnControllerInfo = serializedObject.FindProperty("enemySpawnControllerInfo");
        wayPointControllers      = serializedObject.FindProperty("wayPointControllers");
    }
Beispiel #7
0
    void Start()
    {
        rb    = GetComponent <Rigidbody>();
        speed = 10;

        foodSpawnController  = foodSpawn.GetComponent <FoodSpawnController>();
        enemySpawnController = enemySpawn.GetComponent <EnemySpawnController>();
    }
Beispiel #8
0
 public void ResetData(WaveData data, EnemySpawnController spawnController)
 {
     _data             = data;
     _spawnController  = spawnController;
     _currentState     = State.Spawning;
     _spawnDelay       = 0.0f;
     _currentIteration = 0;
 }
    // Start is called before the first frame update
    void Start()
    {
        _enemySpawn = GameObject.Find("EnemySpawn").GetComponent <EnemySpawnController>();

        if (_enemySpawn == null)
        {
            Debug.LogError("Spawn manager not found");
        }
    }
Beispiel #10
0
 // Use this for initialization
 void Start()
 {
     stats           = gameObject.AddComponent <Stats>() as Stats;
     pauseController = gameObject.AddComponent <PauseController>() as PauseController;
     pauseController.SetPauseMenu(PauseMenuPrefab);
     player  = (Player)GameObject.FindGameObjectWithTag("Player").GetComponent(typeof(Player));
     spawner = (EnemySpawnController)GameObject.FindGameObjectWithTag("EnemySpawner").GetComponent(typeof(EnemySpawnController));
     Hud     = Instantiate(HudPrefab);
 }
Beispiel #11
0
 // Use this for initialization
 void Start()
 {
     mapController          = MapController.Instance;
     spawnerController      = EnemySpawnController.Instance;
     enemiesNumberText.text = enemiesNumber.ToString();
     wavesNumberText.text   = wavesNumber.ToString();
     mapHeightText.text     = mapHeight.ToString();
     mapWidthText.text      = mapWidth.ToString();
 }
Beispiel #12
0
    // Use this for initialization
    public void Start()
    {
        this.spawnController = FindObjectOfType <EnemySpawnController>();
        this.entityMovement  = GetComponent <EntityMovement>();
        this.animator        = animator = GetComponent <Animator>();
        dieSound             = Resources.Load("Audio/monster_die") as AudioClip;

        boxCollider    = GetComponent <BoxCollider2D>();
        circleCollider = GetComponent <CircleCollider2D>();
    }
Beispiel #13
0
    private int x, y;                                // coords on two dimmension array.



    // Use this for initialization
    void Start()
    {
        GameObject auxHolder      = GameObject.FindGameObjectWithTag("Holder");
        GameObject auxEnemyHolder = GameObject.FindGameObjectWithTag("EnemyHolder");

        // Cant use SeralizeField because Enemies are prefabs
        enemyMovementController = auxEnemyHolder.GetComponent <EnemyMovementController>();
        enemySpawnController    = auxEnemyHolder.GetComponent <EnemySpawnController>();
        uiController            = auxHolder.GetComponent <UIController>();
        mainCamera     = auxHolder.GetComponent <CameraController>();
        spriteRenderer = this.GetComponent <SpriteRenderer>();
        layerToIgnore  = enemySpawnController.getLayerToIgnore();
    }
Beispiel #14
0
    private void SetRowSpawner()
    {
        EnemySpawnController[] spawners = FindObjectsOfType <EnemySpawnController>();

        foreach (EnemySpawnController spawner in spawners)
        {
            bool isCloseEnough = (Mathf.Abs(spawner.transform.position.y - transform.position.y) <= Mathf.Epsilon);

            if (isCloseEnough)
            {
                myRowSpawner = spawner;
            }
        }
    }
Beispiel #15
0
	// Use this for initialization
	void Start ()
	{
		//spawner = transform.parent.GetComponent<EnemySpawner> ();
		spawner = GameObject.Find ("EnemySpawn").GetComponent<EnemySpawnController> ();
		//TODO: Remove FIND!
		player = GameObject.FindGameObjectWithTag ("Player");
		playerController = player.GetComponent<PlayerController> ();
 
		if (!player) {
			Debug.Log ("ERROR could not find Player!");
		}
        
		agent = GetComponent<NavMeshAgent> ();
	}
Beispiel #16
0
    private void Awake()
    {
        //Ensures there is only ever one in the scene
        if (Instance == null)
        {
            Instance = this;
        }
        else
        {
            Destroy(gameObject);
        }

        enemySpawnController = FindObjectOfType <EnemySpawnController>();
        playerControllers    = FindObjectsOfType <PlayerController>();
    }
    public override void OnInspectorGUI()
    {
        this.DrawDefaultInspector();

        Component            component = this.target as Component;
        EnemySpawnController script    = component.GetComponent <EnemySpawnController>();

        if (script != null)
        {
            foreach (EnemySpawnController.Chances currentChance in script.spawnChances)
            {
                currentChance.name = currentChance.type.ToString();
            }
        }
    }
Beispiel #18
0
        public override void Initialize()
        {
            base.Initialize();

            int floor_pos_y = this.GetWindowHeight() - 128;

            IceBackground background = new IceBackground(new Vector2(0, -800));

            this.AddEntity(background);

            IcePlatform platform = new IcePlatform(new Vector2(0, floor_pos_y));

            this.AddEntity(platform);

            Penguin penguin = new Penguin(new Vector2(300, floor_pos_y - 128));

            this.AddEntity(penguin);

            SnakeBackground snakeBackground = new SnakeBackground(new Vector2(GetWindowWidth() / 2, 0));

            AddEntity(snakeBackground);

            Snake snake = new Snake(new Vector2(400, floor_pos_y - 128), new Vector2(GetWindowWidth() / 2, 0), new Rectangle(0, 0, GetWindowWidth() / 2, GetWindowHeight()));

            AddEntity(snake);

            GameGUI gameGUI = new GameGUI();

            AddEntity(gameGUI);

            Vector2 spawnPoint = new Vector2((int)penguin.GetPosition().X + this.GetWindowWidth(), floor_pos_y - 64);

            GameState.Instance.SetVar <int>("floor_pos_y", floor_pos_y);
            GameState.Instance.SetVar <Penguin>("penguin", penguin);
            GameState.Instance.SetVar <Vector2>("spawn_point", spawnPoint);
            GameState.Instance.SetVar <bool>("game_over", false);
            GameState.Instance.SetVar <double>("score", 0);

            //this.Camera.SetScreenOffset(0.18, 0.83);
            this.Camera.SetScreenOffset(0.10, 0.83);
            this.Camera.FollowOnlyXAxis();
            this.Camera.FollowEntity(penguin);

            EnemySpawnController enemySpawnController = new EnemySpawnController();

            AddSpawnController(enemySpawnController);
        }
    // Start is called before the first frame update
    void Awake()
    {
        Instance = this;

        for (int i = 0; i < 100; i++)
        {
            GameObject enemyGo = Instantiate(enemyObjects[UnityEngine.Random.Range(0, enemyObjects.Length)], enemySpawnParentObject);
            enemyGo.SetActive(false);
            totalEnemies.Enqueue(enemyGo);
        }

        Debug.Log("Total Enemies On The Queue = " + totalEnemies.Count);

        InvokeRepeating("ShowEnemyCount", 0f, 5f);

        //StartCoroutine(SpawningEnemies());
    }
 // Start is called before the first frame update
 void Start()
 {
     instance             = this;
     activatedSpawns      = new List <GameObject>();
     activatedSpawnsIndex = new List <int>();
     enemies         = new List <GameObject>();
     waveTimer       = maxWaveTimer;
     wave            = 0;
     activatedTowers = 1;
     skeletonNumber  = 4;
     spiderNumber    = 0;
     mageNumber      = 0;
     foreach (GameObject obj in SpawnPoints)
     {
         obj.transform.GetChild(0).GetComponent <Light>().enabled = false;
     }
     StartCoroutine(NewWave());
 }
Beispiel #21
0
    private void Awake()
    {
        m_scShopController        = GameObject.FindGameObjectWithTag("GameController").GetComponent <ShopController>();
        m_escEnemySpawnController = GameObject.FindGameObjectWithTag("GameController").GetComponent <EnemySpawnController>();
        m_csCameraScript          = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <CameraScript>();

        m_goPlayerOne     = GameObject.FindGameObjectWithTag("PlayerOne");
        m_goPlayerTwo     = GameObject.FindGameObjectWithTag("PlayerTwo");
        m_goCurrentTarget = m_goPlayerOne;

        m_nmaNavMeshAgent = GetComponent <NavMeshAgent>();

        IsAlive = true;

        m_fTurretTimer   = m_escEnemySpawnController.m_DefaultTurretTimer;
        m_fDroneTimer    = m_escEnemySpawnController.m_DefaultDroneTimer;
        m_fScuttlerTimer = m_escEnemySpawnController.m_DefaultScuttlerTimer;
    }
    protected override void Initialize()
    {
        base.Initialize();

        GoalPosition         = goalPoint.position;
        enemySpawnController = BattleRoot.EnemySpawnController;
        SetPeriodicTasks();
        LastEnemyId    = -1;
        PooledPosition = PoolManager.Instance.transform.position;
        EnemyController.EnemyInstantiated += OnEnemyInstantiated;
        LevelBoundsLayer = LayerMask.NameToLayer("LevelBounds");
        FinishLayer      = LayerMask.NameToLayer("Finish");
        ProjectileLayer  = LayerMask.NameToLayer("Projectile");
        PoolLayer        = LayerMask.NameToLayer("Pool");
        EnemyLayer       = LayerMask.NameToLayer("Enemy");

        BattleStats = new BattleStats();
    }
    void Start()
    {
        spawnController = GetComponentInParent <EnemySpawnController>();
        spawnVolume     = GetComponent <BoxCollider>();

        for (int i = 0; i < volumeSpawnAmount; i++)
        {
            Vector3 spawnPoint = Vector3.zero;

            spawnPoint.x = Random.Range(-spawnVolume.size.x / 2f, spawnVolume.size.x / 2f);
            spawnPoint.y = 0f;
            spawnPoint.z = Random.Range(-spawnVolume.size.z / 2f, spawnVolume.size.z / 2f);

            spawnPoint = transform.TransformPoint(spawnPoint);

            spawnPoints.Add(spawnPoint);
            Debug.DrawRay(spawnPoint, Vector3.up * 2f, Color.red, 10f);
        }
        spawnController.AddSpawnPoints(spawnPoints);
    }
Beispiel #24
0
    void Start()
    {
        // The player is alive until they collide with an enemy
        isAlive = true;

        // Load the player's current high score
        _highScore = LoadHighScore();

        // Initialize the score
        _playerScore = 0;

        // Get a handle for the enemy spawn controller
        _enemySpawnController = GameObject.Find("EnemySpawnController").GetComponent <EnemySpawnController>();
        _enemySpawnController.StartSpawningEnemies();

        // Get a handle for the UI controller
        _uiController = FindObjectOfType <UIController>();

        // Show the current score
        _uiController.UpdatePlayerScoreText(_playerScore);

        // Start the game on pause to show instructions
        ToggleIsPaused();
    }
Beispiel #25
0
 void Awake()
 {
     enemy = GameObject.FindWithTag("Enemy");
     enemySpawnCTRL = GameObject.FindGameObjectWithTag("EnemySpawnCTRL").GetComponent<EnemySpawnController>();
 }
 private void Awake()
 {
     numOfLevels = spawnList.GetLength(0) - 1;
     Debug.Log("number of levels -1 " + numOfLevels);
     spawnController = gameObject.GetComponent <EnemySpawnController>();
 }
Beispiel #27
0
 private void Awake()
 {
     instance = this;
 }
    // Use this for initialization
    public void Start()
    {
        this.spawnController = FindObjectOfType<EnemySpawnController>();
        this.entityMovement = GetComponent<EntityMovement>();
        this.animator = animator = GetComponent<Animator>();
        dieSound = Resources.Load("Audio/monster_die") as AudioClip;

        boxCollider = GetComponent<BoxCollider2D>();
        circleCollider = GetComponent<CircleCollider2D>();
    }
 void Start()
 {
     enemySpawnController = gameObject.GetComponentInParent <EnemySpawnController>();
     nextPosition         = transform.position;
 }
Beispiel #30
0
 public LevelState(MainGameStateMachine mainGameStateMachine)
 {
     this.mainGameStateMachine = mainGameStateMachine;
     enemySpawnController      = GameObject.Find("Controllers").GetComponent <ControllersManager>().enemySpawnController;
 }
Beispiel #31
0
 public void Init()
 {
     _currentRound    = 1;
     _spawnController = UnityEngine.GameObject.FindGameObjectWithTag("SpawnController").GetComponent <EnemySpawnController>();
 }
 public void Construct(IMenuView _menuView, IGameOverView _gameOverView, EnemySpawnController _spawner)
 {
     spawner      = _spawner;
     menuView     = _menuView;
     gameOverView = _gameOverView;
 }