public void Execute() { if (mStartDelay > 0.0f) { mStartDelay -= Time.deltaTime; return; } if (mSizeCounter < laser_size) { mSizeCounter += 20.0f * Time.deltaTime; if (mSizeCounter > laser_size) { mSizeCounter = laser_size; GameObject laser = MerlionBoss.Instantiate(owner.mSingleLaserPrefab, new Vector3(0.0f, 0.0f, 0.0f), Quaternion.Euler(0.0f, 0.0f, -90.0f)) as GameObject; laser.transform.position = new Vector2(player_x, laser.transform.position.y); } owner.mLaserMouth.transform.localScale = new Vector2(1.0f, 1.0f); mLaserTransform.localScale = new Vector3(laser_size, mSizeCounter, 0.0f); return; } mEndDelay -= Time.deltaTime; if (mEndDelay <= 0.0f) { owner.mStateMachine.ChangeState(0); } }
public ML_IdleState(MerlionBoss owner) { this.owner = owner; }
public ML_SingleBeamState(MerlionBoss owner) { this.owner = owner; mLaserTransform = owner.mLaser.transform; }
public ML_HeadAttackState(MerlionBoss owner) { this.owner = owner; mThrower = owner.mHeadSpawner.GetComponent <MerlionHeadSpawner>(); owner.mImmune = true; }
public ML_TailAttackState(MerlionBoss owner) { this.owner = owner; mThrower = owner.mVolleySpawner.GetComponent <MerlionAcrBulletSpawner>(); mSpawnCounter = mSpawnInterval; }
public ML_LaserAttackState(MerlionBoss owner) { this.owner = owner; mLaserTransform = owner.mLaser.transform; mLaser = owner.mLaser2.GetComponent <MerlionFowardLaser>(); }