オブジェクトとプログラム構成と役割

 

オブジェクト(スプリクト) 【関数】内容
player(Player)

Player全般
【Start】コンポーネントの取得(Rigidbody2D,Animator,CapsuleCollider2D,SpriteRenderer)
【Update】復活時の明滅(演出)
【FixedUpdate】移動とアニメションの適用
【float GetXSpeed】x軸移動(キー入力、アニメーションカーブ)
【float GetYSpeed】ジャンプ(キー入力、アニメーションカーブ)
【void OnCollisionEnter2D】敵を踏んだ時の衝突判定とジャンプ高さを敵から取得
【void OnCollisionEnter2D】ダメージ地を踏んだ時の処理(ダウンアニメ)
【void isGameOver】HP0の時の処理(GManagerからのゲームオーバー確認とアニメ)
【bool isDownAnimEnd】ダウンアニメの進行確認 100%で完了
【bool IscontinueWaitng】ダウンアニメ終了をStageCtrlに伝える
【void ContinuePlayer】プレイヤーの復活処理
【int Pattck】プレイヤーの攻撃力通知

enemy01(Enemy01)敵

敵の全般
【Start】コンポーネントの取得(Rigidbody2D,Animator,CapsuleCollider2D,SpriteRenderer,ObjectCollision,GameObject.Find("player"))と弾の連続生成(連射)
【FixedUpdate】移動と向き反転、カメラに映ったら動く、ダウン時のアニメ、playerスコア加算
【void OnCollisionEnter2D】playerとの接触判定、playerスコア減算
【void shot】指定距離内にplayerが入ったら弾のプレハブ生成する
【float PlayerRed】playerがいる角度を知る
【float PlayerDistance】playerとのx軸距離を知る

enemy-boss1
(Enemy01Boss)敵ボス

Boss1全般
【Start】コンポーネントの取得(Rigidbody2D,Animator,CapsuleCollider2D,SpriteRenderer,ObjectCollision)と弾の連続生成(連射)
【Update】関数(BossSubHP,BossDeath,isBossGameOver,win)の実行
【FixedUpdate】移動と向き反転、カメラに映ったら動く、playerに向き合わせる(選択可)
【void BossSubHP】playerに踏まれたらボススコア減算
【void OnTriggerEnter2D】ボスに接触した場合のplayerスコア減算
【void isBossGameOver】ボスがダウンした場合の、エフェクトアニメ実行、ボス削除
【void BossDeath】ボスダウンの確認(Gmanagerからのダウンフラグ確認)
【bool win】ボスダウン後のplayerスコア加算
【void shot】指定距離内にplayerが入ったら弾のプレハブ生成する
【float PlayerRed】playerがいる角度を知る
【float PlayerDistance】playerとのx軸距離を知る
【bool RtLf】playerが左右どちらにいるか確認

enemy-boss1>Effect01
(Effect01)

Boss1ダウンの演出(描画位置の問題で別にした)
【Start】コンポーネントの取得(Animator)
【void EffectAnim】アニメの再生

player>GroundCheck
player>HeadCheck
(GroundCheck)

接地と頭が空中に浮く地面にぶつかったか判定
【bool IsGround】接地判定
【void OnTriggerEnter2D】地面に接触したか
【void OnTriggerStay2D】地面に接触中か
【void OnTriggerExit2D】地面から離れたか

enemy01>trigger
enemy-boss1>BossTrigger
(EnemyCollisionCheck)

敵が地面、仲間、見えない壁に接触したか判定
【void OnTriggerEnter2D】接触を確認
【void OnTriggerExit2D】抜けたか確認

tama01(Tama01)左用弾丸
tama02(Tama02)右用弾丸

弾丸全般
【void Update】弾の移動、削除(playerか地面に当たった場合)、playerスコア減算
【void OnCollisionEnter2D】衝突判定(playerまたは地面に当たった場合)

enemyhaedOcc
(EnemyhaedOcc)

敵(プレハブ)を自動で生成
【Start】コンポーネントの取得(SpriteRenderer)、自動生成(InvokeRepeating)
【void Spawn】カメラに表示されたらx軸ランダムに生成する

Coin(CoinItem)

アイテム全般
【Start】コンポーネントの取得(SpriteRenderer)
【void OnTriggerEnter2D】接触を確認、playerスコア加算、DOTweenの利用(フェードアウトと移動)
【void DestroyObject】アイテムの削除、Tweenの削除

Grid>MoveGround
Grid>side
(MoveGround01)

移動する地面(x軸で移動を繰り返す)
【Start】コンポーネントの取得(Rigidbody2D)、自身の位置を取得
【void Update】.MovePositionを使用して移動

BossArea(BossGate)

playerがエリアにボススコアの表示
【Start】Bossスコアとスライダーの非表示
【void OnTriggerEnter2D】エリア侵入時のスコアとスライダーの表示
【void OnTriggerExit2D】エリア脱出時のスコアとスライダーの非表示

GManager(GManager)
途中経過

スコアの管理 ステージ進行管理 セーブデータの取り扱い
【void Awake】インスタンスの存在確認、playerとBossの初期値設定
【void Update】HP0によるplayerダウンによるゲームオーバーとBossダウンによるステージクリアの判断

StageCtrl(StageCtrl)
途中経過

playerの復活と復活位置
【Start】ゲーム開始時のplayerのスタート位置
【void Update】playerの再スタート

Canvas>Text(Score)

プレイヤースコアの表示
【Start】コンポーネントの取得(Text)、初期スコアの表示
【void Update】テキストスコアの更新

Canvas>Slider(SliderScore)

プレイヤースライダーの表示

【Start】コンポーネントの取得(Slider)、初期スコアの表示【void Update】スライダースコアの更新
Canvas>BossPanel>BossText(BossScore)

ボススコアの表示(BossGateで表示)
【Start】コンポーネントの取得(Text)、初期スコアの表示
【void Update】スライダースコアの更新

Canvas>BossPanel>BossSlider(BossSliderScore)

ボススライターの表示(BossGateで表示)
【Start】コンポーネントの取得(Slider)、初期スコアの表示
【void Update】スライダースコアの更新

このページの先頭へ戻る