// Use this for initialization void Start() { playerLocation = GameObject.Find("Player").transform; target = new Vector3(0, 0, 0); ui = GameObject.Find("PlayerUI").GetComponent <PlayerUI>(); skinMeshRenderer = GetComponentInChildren <SkinnedMeshRenderer>(); shooter = GameObject.Find("shooter"); laser = gameObject.GetComponentInChildren <BossLaser>(); chargerRenderer = GameObject.Find("Charger").GetComponent <Renderer>(); chargerCollider = GameObject.Find("Charger").GetComponent <Collider>(); cocoonCollider = gameObject.GetComponentsInChildren <Collider>()[1]; cocoonRenderer = gameObject.GetComponentInChildren <MeshRenderer>(); bossType = BossType.NULL; followingPlayer = false; chargerRenderer.enabled = false; chargerCollider.enabled = false; }
void Dot() { switch (WayDir) { case 0: case 1: GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay"); obj.transform.position = SpreadPoses[WayDir].transform.position; obj.transform.rotation = SpreadPoses[WayDir].transform.rotation; BossLaser bullet = obj.GetComponent <BossLaser>(); bullet.StopTime = 0.0f; break; case 2: for (int i = 0; i < WayDir; i++) { obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay"); obj.transform.position = SpreadPoses[i].transform.position; obj.transform.rotation = SpreadPoses[i].transform.rotation; bullet = obj.GetComponent <BossLaser>(); bullet.StopTime = 0.0f; } break; } GameManager.Inst().SodManager.PlayEffect("Bs_Laser"); }
void Laser() { GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossLaser"); obj.transform.position = LaserPos.transform.position; obj.transform.rotation = LaserPos.transform.rotation; BossLaser bullet = obj.GetComponent <BossLaser>(); bullet.StopTime = GameManager.Inst().UpgManager.BData[(int)Type].GetDuration(); GameManager.Inst().SodManager.PlayEffect("Bs_Laser"); }
void OnTriggerEnter2D(Collider2D other) { BossLaser bossLaser = other.GetComponent <BossLaser>(); if (bossLaser) { Destroy(gameObject); return; } GameObject lasersObject; Lasers lasers; lasersObject = Instantiate(projectilePreFab, other.GetComponent <Lasers>().GetRigidBody2D().position + Vector2.up * ver + Vector2.right * hor, Quaternion.identity); lasers = lasersObject.GetComponent <Lasers>(); lasers.Shoot(other.GetComponent <Lasers>().getLaserSpeed(), other.GetComponent <Lasers>().GetShotFrom()); Destroy(other.gameObject); }
void Shot() { int maxCount = 6; float shotTime = 0.0f; switch (GameManager.Inst().StgManager.Stage) { case 1: shotTime = 0.1f; for (int i = 0; i < 12; i++) { GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossNormal"); obj.transform.position = ShotDir[i].transform.position; obj.transform.rotation = ShotDir[i].transform.rotation; BossNormal bullet = obj.gameObject.GetComponent <BossNormal>(); bullet.Shoot(ShotDir[i].transform.up); } GameManager.Inst().SodManager.PlayEffect("Bs_Normal"); break; case 2: maxCount = 2; shotTime = 0.1f; for (int i = 0; i < 4; i++) { GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay"); obj.transform.position = ShotDir[ShotCount + i * 3].transform.position; obj.transform.rotation = ShotDir[ShotCount + i * 3].transform.rotation; BossBounce bullet = obj.GetComponent <BossBounce>(); bullet.SetStartPos(obj.transform.position); bullet.Shoot(obj.transform.up); } GameManager.Inst().SodManager.PlayEffect("Bs_OneWay"); break; case 3: maxCount = 12; shotTime = 0.05f; for (int i = 0; i < 1; i++) { GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossNormal"); obj.transform.position = ShotDir[ShotCount].transform.position; obj.transform.rotation = ShotDir[ShotCount].transform.rotation; BossBoomerang bullet = obj.GetComponent <BossBoomerang>(); bullet.StartMove(obj.transform.position); } GameManager.Inst().SodManager.PlayEffect("Bs_Normal"); break; case 4: maxCount = 5; shotTime = 0.1f; int rand = Random.Range(0, 12); for (int i = 0; i < 6; i++) { GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay"); obj.transform.position = ShotDir[0].transform.position; obj.transform.rotation = ShotDir[(rand + (i % 2) * 6) % 12].transform.rotation; BossNormal bullet = obj.gameObject.GetComponent <BossNormal>(); bullet.Shoot(ShotDir[(rand + (i % 2) * 6) % 12].transform.up, rand % 5 + 1); rand++; } GameManager.Inst().SodManager.PlayEffect("Bs_OneWay"); break; case 5: shotTime = 0.1f; for (int i = 0; i < 2; i++) { GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay"); obj.transform.position = ShotDir[ShotCount + i * 6].transform.position; obj.transform.rotation = ShotDir[ShotCount + i * 6].transform.rotation; BossLaser bullet = obj.GetComponent <BossLaser>(); bullet.StopTime = 0.0f; } GameManager.Inst().SodManager.PlayEffect("Bs_Laser"); break; } //GameManager.Inst().SodManager.PlayEffect("Bigbullet trigger"); ShotCount++; if (ShotCount >= maxCount) { Die(); } else { Invoke("Shot", shotTime); } }
protected override void InitWeapon() { base.InitWeapon(); currentWeapon = new BossLaser(shotPosTrans, false); }
// Use this for initialization void Start() { playerLocation = GameObject.Find("Player").transform; target = new Vector3(0, 0, 0); ui = GameObject.Find("PlayerUI").GetComponent<PlayerUI>(); skinMeshRenderer = GetComponentInChildren<SkinnedMeshRenderer>(); shooter = GameObject.Find("shooter"); laser = gameObject.GetComponentInChildren<BossLaser>(); chargerRenderer = GameObject.Find("Charger").GetComponent<Renderer>(); chargerCollider = GameObject.Find("Charger").GetComponent<Collider>(); cocoonCollider = gameObject.GetComponentsInChildren<Collider>()[1]; cocoonRenderer = gameObject.GetComponentInChildren<MeshRenderer>(); bossType = BossType.NULL; followingPlayer = false; chargerRenderer.enabled = false; chargerCollider.enabled = false; }