void OnTriggerStay2D(Collider2D other) { Enemy enemy = other.GetComponent <Enemy>(); EnemyShipType1 ship2 = other.GetComponent <EnemyShipType1>(); EnemyPlane_01 plane1 = other.GetComponent <EnemyPlane_01>(); EnemyBoss boss = other.GetComponent <EnemyBoss>(); EnemyPlane_02 plane2 = other.GetComponent <EnemyPlane_02>(); if (enemy != null) { enemy.ChangeHealth(hurt); } if (ship2 != null) { ship2.ChangeHealth(hurt); } if (plane1 != null) { plane1.ChangeHealth(hurt); } if (plane2 != null) { plane2.ChangeHealth(hurt); } if (boss != null) { boss.ChangeHealth(hurt); } }
IEnumerator CreateStage(StageData stageData) { _initialized = false; _boss = Instantiate <EnemyBoss>(_prefabEnemyBosses [stageData.StageNo]); _boss.transform.localPosition = stageData.BossPos; _boss.transform.SetParent(_gameUnitWorld.transform, false); foreach (StageDataObject stageDataObject in stageData.Objects) { StageObject prefab = null; switch (stageDataObject.Type) { case StageDataObject.DataType.Scaffold: prefab = _prefabObjectScaffolds[stageDataObject.Size]; break; case StageDataObject.DataType.Block: prefab = _prefabObjectBlocks[stageDataObject.Size]; break; } if (prefab != null) { StageObject stageObject = Instantiate <StageObject> (prefab); stageObject.Setup(stageDataObject); stageObject.transform.SetParent(_gameUnitWorld.transform, false); } } yield return(0); yield return(0); foreach (StageDataEnemy stageDataEnemy in stageData.Enemies) { EnemyBase prefab = null; switch (stageDataEnemy.Type) { case StageDataEnemy.DataType.Grounder: prefab = _prefabEnemyGrounders [stageDataEnemy.Level]; break; case StageDataEnemy.DataType.Floater: prefab = _prefabEnemyFloters [stageDataEnemy.Level]; break; case StageDataEnemy.DataType.Liner: prefab = _prefabEnemyLiners [stageDataEnemy.Level]; break; } if (prefab != null) { EnemyBase enemy = Instantiate <EnemyBase> (prefab); enemy.transform.localPosition = stageDataEnemy.Pos; enemy.transform.SetParent(_gameUnitWorld.transform, false); } } _stageData = stageData; _initialized = true; }
public void BossHealthDecreasesTest() { EnemyBoss enemyBoss = new EnemyBoss(); enemyBoss.Start(); Assert.AreEqual(90.0f, enemyBoss.TakeDamage()); }
//public int enemyLife = 3; void Awake() { initPosition = transform.position; r2d = GetComponent <Rigidbody2D> (); _instance = this; Instantiate(healthBar, this.transform); }
void DamageBoss1(Transform boss1) { EnemyBoss eb = boss1.GetComponent <EnemyBoss>(); if (eb != null) { eb.TakeDamage(BulletDamage); } }
public override void Update(GameTime gameTime) { if (GameManager.GetInstance().BossList.Count != 0 && !hasboss) { _boss = GameManager.GetInstance().BossList.First(); hasboss = true; } base.Update(gameTime); }
private void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag("Player")) { dragon = FindObjectOfType <EnemyBoss>(); other.GetComponent <PlayerMover>().LandOnBossEnemy(); this.gameObject.layer = 9; dragon.StateTwoThreeTransition(); } }
public SeekStateEnemy(EnemyBoss enemyBoss, EnemyBossAnim enemyBossAnimations, Player target, FSM <T> fsm, T patrolStateEnemy, T attackStateEnemy) { _enemyBoss = enemyBoss; _enemyBossAnimations = enemyBossAnimations; _target = target; _fsm = fsm; _patrolStateEnemy = patrolStateEnemy; _attackStateEnemy = attackStateEnemy; }
public PatrolStateEnemy(EnemyBoss enemyBoss, EnemyBossAnim enemyBossAnimations, Player target, FSM <T> fsm, T idleStateEnemy, T seekStateEnemy) { _enemyBoss = enemyBoss; _enemyBossAnimations = enemyBossAnimations; _target = target; _fsm = fsm; _idleStateEnemy = idleStateEnemy; _seekStateEnemy = seekStateEnemy; }
public BlockStateEnemy(EnemyBoss enemyBoss, EnemyBossAnim enemyBossAnimations, Player target, FSM <T> fsm, T idleStateEnemy, T attackStateEnemy) { _enemyBoss = enemyBoss; _enemyBossAnimations = enemyBossAnimations; _target = target; _fsm = fsm; _idleStateEnemy = idleStateEnemy; _attackStateEnemy = attackStateEnemy; }
// Use this for initialization protected void Start() { SubscribeToTargets(); boss = FindObjectOfType <EnemyBoss>(); if (boss != null) { boss.BossHt += OnBossHt; } movSpeed = Random.Range(4f, 10f); }
//T _blockStateEnemy; public HitStateEnemy(EnemyBoss enemyBoss, EnemyBossAnim enemyBossAnimations, Player target, FSM <T> fsm, T attackStateEnemt, T idleStateEnemy /*, T blockStateEnemy*/) { _enemyBoss = enemyBoss; _enemyBossAnimations = enemyBossAnimations; _target = target; _fsm = fsm; _attackStateEnemy = attackStateEnemt; _idleStateEnemy = idleStateEnemy; //_blockStateEnemy = blockStateEnemy; }
public IdleStateEnemy(EnemyBoss enemyBoss, EnemyBossAnim enemyBossAnimations, Player target, FSM <T> fsm, T patrolStateEnemy, T hitStateEnemy, T dieStateEnemy) { _enemyBoss = enemyBoss; _enemyBossAnimations = enemyBossAnimations; _target = target; _fsm = fsm; _patrolStateEnemy = patrolStateEnemy; _hitStateEnemy = hitStateEnemy; _dieStateEnemy = dieStateEnemy; }
public AttackStateEnemy(EnemyBoss enemyBoss, EnemyBossAnim enemyBossAnim, Player target, FSM <T> fsm, T seekStateEnemy /*, T blockStateEnemy*/, T hitStateEnemy, T dieStateEnemy) { _enemyBoss = enemyBoss; _enemyBossAnim = enemyBossAnim; _target = target; _fsm = fsm; _seekStateEnemy = seekStateEnemy; //_blockStateEnemy = blockStateEnemy; _hitStateEnemy = hitStateEnemy; _dieStateEnemy = dieStateEnemy; }
void Damage(Transform enemy) { Enemy e = enemy.GetComponent <Enemy>(); if (e != null) { e.TakeDamage(damage); } else // If its can't find enemy component then it is a boss; { EnemyBoss eb = enemy.GetComponent <EnemyBoss>(); eb.TakeDamage(damage); } }
private void spawnBossObject() { GameObject spawnedObject = Instantiate(bossSpawns[GameController.stage], bossStartPos.position, Quaternion.identity); EnemyBoss boss = spawnedObject.GetComponent <EnemyBoss>(); boss.setStartEndPosition(bossStartPos.position, bossEndPos.position); //boss.AddPatrolTransforms(bossPatrolList.ToArray()); boss.patrolTransformList.AddRange(bossPatrolList); BGM bgm = FindObjectOfType <BGM>(); bgm.SwapBGM(GameAudio.bossTransition); }
public void TestBossDiedOnTenHits() { EnemyBoss boss = new EnemyBoss(); boss.Start(); bool expected = true; for (int i = 0; i <= 9; i++) { boss.TakeDamage(); } bool result = boss.IsDead; Assert.AreEqual(expected, result); }
public void TestBossHealthIsZeroAfterTenHits() { EnemyBoss boss = new EnemyBoss(); boss.Start(); float expected = 0.0f; for (int i = 0; i <= 9; i++) { boss.TakeDamage(); } float result = boss.bossHealth; Assert.AreEqual(expected, result); }
public void addBoid(Vector3 position, EnemyType type) { AEnemys ship; switch (type) { case EnemyType.Fighter: ship = new EnemyFighter(position); ship.LoadContent(fighterModel); break; case EnemyType.Fighter2: ship = new EnemyFighter2(position); ship.LoadContent(fighter2Model); break; case EnemyType.Fighter3: ship = new EnemyFighter3(position); ship.LoadContent(fighter3Model); break; case EnemyType.Bomber: ship = new EnemyBomber(position); ship.LoadContent(bomberModel); break; case EnemyType.Bomber2: ship = new EnemyBomber2(position); ship.LoadContent(bomber2Model); break; case EnemyType.Boss: ship = new EnemyBoss(position); ship.LoadContent(bossModel); break; default: ship = new EnemyFighter(position); ship.LoadContent(fighterModel); break; } ship.flyingAwayFromDrone = false; ship.flyingAwayFromStation = false; _ships.Add(ship); }
/// <summary> /// 配置敌人属性 /// </summary> /// <param name="enemy">敌方坦克</param> /// <param name="isBossTank">是否为BOSS坦克</param> /// <param name="Life">生命值</param> /// <param name="speed">移速</param> /// <param name="autoMoveHZ">自动移动的频率 (秒/次)</param> /// <param name="autoMoveTim">每次移动的时长 (秒)</param> /// <param name="bulletAtk">子弹攻击力</param> /// <param name="autoAttackHZ">攻击频率 (秒/次)</param> /// <param name="godTimer">无敌时长 (秒)</param> private void InitEnemyTankProperty(GameObject enemy, bool isBossTank, int Life, float moveSpeed, float autoMoveHZ, float autoMoveTime, int bulletAtk , float autoAttackHZ, float godTimer) { if (isBossTank) { //BOSS EnemyBoss enemyBoss = enemy.GetComponent <EnemyBoss>(); if (enemyBoss == null) { Debug.LogError("未找到EnemyBoss脚本"); } else { enemyBoss.CurEnemyLife = Life; enemyBoss.moveSpeed = moveSpeed; enemyBoss.autoAttackHZ = autoMoveHZ; enemyBoss.autoMoveTime = autoMoveTime; enemyBoss.bulletAtk = bulletAtk; enemyBoss.autoAttackHZ = autoAttackHZ; enemyBoss.godTimer = godTimer; } } else { Enemy enemyNormal = enemy.GetComponent <Enemy>(); if (enemyNormal == null) { Debug.LogError("未找到Enemy脚本"); } else { enemyNormal.CurEnemyLife = Life; enemyNormal.moveSpeed = moveSpeed; enemyNormal.autoAttackHZ = autoMoveHZ; enemyNormal.autoMoveTime = autoMoveTime; enemyNormal.bulletAtk = bulletAtk; enemyNormal.autoAttackHZ = autoAttackHZ; enemyNormal.godTimer = godTimer; } } }
private void Start() { _gameManager = GameObject.Find("Game Manager").GetComponent <GameManager>(); _enemyBossScript = EnemyBoss.GetComponent <EnemyBoss>(); audioSource = GetComponent <AudioSource>(); if (_gameManager == null) { Debug.LogError("The Game Manager is null."); } if (_enemyBossScript == null) { Debug.LogError("The EnemyBoss Script is null."); } if (audioSource == null) { Debug.LogError("The audio source is null."); } }
public void SpawnBoss(int bossIndex) { Vector3 enemyCoordonates = new Vector3(16, 0, 14); EnemyBoss enemyBoss = Instantiate(boss, new Vector3(16, 0, 25), Quaternion.identity).GetComponent <EnemyBoss>(); switch (bossIndex) { case 1: enemyBoss.Initialize(300, 2, 0.5f, enemyCoordonates, bossIndex); break; case 2: enemyBoss.Initialize(500, 2, 0.5f, enemyCoordonates, bossIndex); break; case 3: enemyBoss.Initialize(800, 2, 0.5f, enemyCoordonates, bossIndex); break; } enemyinGame.Add(enemyBoss.gameObject); //new enemiesAlive++; }
private void Start() { _spawnManager = GameObject.Find("Spawn Manager").GetComponent <SpawnManager>(); if (_spawnManager == null) { Debug.LogError("The Spawn Manager is null."); } _enemyBoss = GameObject.Find("EnemyBoss(Clone)").GetComponent <EnemyBoss>(); if (_enemyBoss == null) { Debug.Log("The FireBossTurretLaser is null."); } _rb = GetComponent <Rigidbody2D>(); _playerGameObject = GameObject.Find("Player"); _enemyBossDefaultAimPoint = GameObject.Find("EnemyBossDefaultAimPoint"); }
void Start() { gameOver = false; restart = false; restartText.text = ""; gameOverText.text = ""; waveText.text = ""; playerObject = GameObject.FindWithTag("Player"); player = playerObject.GetComponent <PlayerController>(); enemyBoss = boss1.GetComponent <EnemyBoss>(); score = 0; wave = 1; UpdateScore(); UpdateWaveCount(); StartCoroutine(SpawnWaves()); }
public void LoadContent(ContentManager content) { message.LoadContent(content); enemyHealth.LoadContent(content); enemyGauge.LoadContent(content); forestLayer = new ParallaxLayer(game); float offset = 200; for (int i = 0; i < 10; i++) { BasicEnemy forestEnemy = new BasicEnemy(game, GameState.Forest, new Vector2(300 + offset, 500)); forestEnemy.LoadContent(content); forestLayer.Sprites.Add(forestEnemy); forestEnemies.Add(forestEnemy); offset += random.Next(200, 300); } forestBoss = new EnemyBoss(game, GameState.Forest, new Vector2(3500, 420)); forestBoss.LoadContent(content); forestLayer.Sprites.Add(forestBoss); forestEnemies.Add(forestBoss); ActiveEnemy = forestEnemies[0]; ActiveEnemy.IsActive = true; foreach (IEnemy e in forestEnemies) { System.Diagnostics.Debug.WriteLine($"{e.IsActive} activity"); } game.Components.Add(forestLayer); forestLayer.DrawOrder = 2; forestT = new TrackingPlayer(game.player, 1.0f); forestLayer.ScrollController = forestT; }
void AttackDarkRepulsor() { lastAttackTime = Time.time; // calculate the direction Vector3 dir = (Input.mousePosition - Camera.main.WorldToScreenPoint(transform.position)).normalized * 1.5f; // shoot a raycast in the direction RaycastHit2D hit = Physics2D.Raycast(transform.position + dir, dir, attackRange); Debug.DrawRay(transform.position + dir, dir * attackRange, Color.cyan, duration); // did we hit an enemy? if (hit.collider != null && hit.collider.gameObject.CompareTag("Enemy")) { Debug.Log("Hit an enemy"); // get the enemy and damage them Enemy enemy = hit.collider.GetComponent <Enemy>(); //EnemyBoss enemyBoss = hit.collider.GetComponent<EnemyBoss>(); enemy.photonView.RPC("TakeDamage", RpcTarget.MasterClient, damage); //enemyBoss.photonView.RPC("TakeDamage", RpcTarget.MasterClient, damage); } if (hit.collider != null && hit.collider.gameObject.CompareTag("Boss")) { Debug.Log("Hit the boss"); // get the enemy and damage them //Enemy enemy = hit.collider.GetComponent<Enemy>(); EnemyBoss enemyBoss = hit.collider.GetComponent <EnemyBoss>(); //enemy.photonView.RPC("TakeDamage", RpcTarget.MasterClient, damage); enemyBoss.photonView.RPC("TakeDamage", RpcTarget.MasterClient, damage); } // play attack animation //weaponAnimElucidator.SetTrigger("Attack"); weaponAnimDarkRepulsor.SetTrigger("Attack"); }
// Use this for initialization protected new void Start() { parentShip = GetComponentInParent <EnemyBoss>(); timer = 0; base.Start(); // Setup the hit flash if (isAmbushShip) { yRange = UnityEngine.Random.Range(-7.5f, 7.5f); float random = UnityEngine.Random.Range(-7.5f, 7.5f); if (random <= 0.5f) { isRightToLeft = true; } } for (int i = 0; i < enemyWeaponList.Count; ++i) { weaponCooldownTimerList.Add(0); } }
public void SetupBossAlien() { _gameManager.PlayMusic(2, 5.0f); if (isBossActive != true) { Vector3 pxToSpawn = new Vector3(Random.Range(-8f, 8f), 12.0f, 0f); Quaternion spawnRotation = Quaternion.Euler(0, 0, 90); Instantiate(_enemyBoss, pxToSpawn, spawnRotation); isBossActive = true; stopSpawningEnemies = true; stopSpawning = false; _bossTurretsDestroyed = false; _bossMiniGunsDestroyed = false; _bossCanonsDestroyed = false; bossTurretsDestroyed = 0; bossMiniGunsDestroyed = 0; bossCanonsDestroyed = 0; if (isBossActive == true) { _enemyBossScript = GameObject.Find("EnemyBoss(Clone)").GetComponent <EnemyBoss>(); if (_enemyBossScript == null) { Debug.LogError("The Enemy Boss script is null."); } } StartCoroutine(SpawnBasicPowerUps()); StartCoroutine(SpawnWeaponsPowerUps()); StartCoroutine(SpawnHealthAndNegPowerUps()); } }
private void Loader_OnObjectCreated(Sprite sprite, TiledObject obj) { if (sprite is Player player) { this.player = player; this.player.createLevelInst(this); this.player.createGameInst(_game); this.player.giveLevelNumber(levelNumber); camera = new Camera(0, 0, 800, 600); this.player.AddChild(camera); } if (sprite is Enemy enemy) { enemies.Add(enemy); enemy.createLevelInst(this); } if (sprite is EnemyBoss enemyBoss) { this.enemyBoss = enemyBoss; AddChild(enemyBoss); enemyBoss.createLevelInst(this); } if (sprite is TRex trex) { trexs.Add(trex); trex.createLevelInst(this); } if (sprite is Enemypack enemypack) { enemypacks.Add(enemypack); } if (sprite is MummyKiller mummyKiller) { this.mummykiller = mummyKiller; } }
void Start() { _spawnManager = GameObject.Find("Spawn Manager").GetComponent <SpawnManager>(); _gameManager = GameObject.Find("Game Manager").GetComponent <GameManager>(); _enemyBoss = GameObject.Find("EnemyBoss(Clone)").GetComponent <EnemyBoss>(); randomSpot = Random.Range(0, _spawnManager.bossWaypoints.Length); waitTime = startWaitTime; if (_gameManager == null) { Debug.LogError("The Game_Manager is null."); } if (_spawnManager == null) { Debug.LogError("The Spawn Manageris null."); } if (_enemyBoss == null) { Debug.LogError("The Enemy Boss script is null."); } }
// Use this for initialization void Start() { boss = FindObjectOfType<EnemyBoss>(); }
void Start() { _controller = GetComponent<EnemyBoss>(); }
// Use this for initialization void Start() { parent = GetComponentInParent<EnemyBoss>(); //Debug.Log(parent.gameObject.name); }