protected void Do_EqitionAll(Charactor _obj) { //先にインスペクタから中身を入れているかどうかを確認 if (AllEqition.Length == 0) { return; } //実際の処理 foreach (ChangeMode_Adapter p in AllEqition) { if (p.IsAllEqition(_obj, this)) { if (p.TargetMode != null) { //変更先のモードとこのモードが異なるなら if (this.index != p.TargetMode.index) { _obj.ChangeMode(p.TargetMode.index, p.CallBack); return; } } return; } } }
protected void Do_Eqition(Charactor _obj) { //time += Time.deltaTime; //先にインスペクタから中身を入れているかどうかを確認 if (Array.IndexOf(ChangeMode_Eq, null) > -1 || ChangeMode_Eq.Length == 0) { return; } foreach (ChangeMode_Adapter p in ChangeMode_Eq) { if (p.IsAllEqition(_obj, this)) { if (p.TargetMode != null) { //変更先のモードとこのモードが異なるなら if (this.index != p.TargetMode.index) { _obj.ChangeMode(p.TargetMode.index, p.CallBack); } } return; } } //全てのEqitionPackについても↑と同様に周回してチェックする foreach (EqitionPack e in equitionpack) { foreach (ChangeMode_Adapter p in e.GetChangeMode_Eq) { if (p.IsAllEqition(_obj, this)) { if (p.TargetMode != null) { //変更先のモードとこのモードが異なるなら if (this.index != p.TargetMode.index) { _obj.ChangeMode(p.TargetMode.index, p.CallBack); } } return; } } } }
//やられ硬直時間 public override void Mode_Update(Charactor _obj) { base.Mode_Update(_obj); if (_obj.modetime > EndTime) { //HPがカラなら if (_obj.status.HP <= 0) { _obj.ChangeMode(2); } _obj.ChangeMode(_obj.pre_mode_index);//Defa_ultへ //直前のモードへ(Modetimeは保持しない) } if (_obj.clash.Trigger) { _obj.modetime = 0.0f;//どういつモード中に当たったら硬直時間をリセット } }
public override void Mode_Update(Charactor _obj) { base.Mode_Update(_obj); //時間経過で元に戻る if (_obj.modetime > 1.0) { _obj.ChangeMode(0); } }
public override void Mode_Update(Charactor _obj) { if (_obj.Grip == null) { _obj.ChangeMode(1); } _obj.transform.position = _obj.Grip.transform.position; base.Mode_Update(_obj); }
public override void Mode_Update(Charactor _obj) { _enemy.Move(dash_speed); base.Mode_Update(_obj); //終了時刻になったら待機モードに if (_obj.modetime > EndTime) { _obj.ChangeMode(4); } }
//やられ硬直時間 public override void Mode_Update(Charactor _obj) { base.Mode_Update(_obj); if (_obj.modetime > EndTime) { if (ChangeToPre_index) { _obj.ChangeMode(_obj.pre_mode_index); } else { _obj.ChangeMode(3); } //直前のモードへ(Modetimeは保持しない) } if (_obj.clash.Trigger) { //_obj.modetime = 0.0f;//どういつモード中に当たったら硬直時間をリセット } }
public override void Mode_Update(Charactor _obj) { base.Mode_Update(_obj); if (_obj.modetime > EndTime) { //ゲームオーバー処理の呼び出し _obj.audioPlayer.Play(12); _obj.ChangeMode(0); //復活 } }
//やられ硬直時間 public override void Mode_Update(Charactor _obj) { base.Mode_Update(_obj); if (_obj.modetime > StopTime) { _obj.ChangeMode(3);//Moveへ //直前のモードへ(Modetimeは保持しない) } if (_obj.clash.Trigger) { _obj.modetime = 0.0f;//どういつモード中に当たったら硬直時間をリセット } }
public override void MakeHitBox(Charactor _obj) { _obj.ChangeMode(7); Vector3 v; //オフセットと向きを考慮したposに当たり判定を生成 if (!_obj.IsRight) { v = new Vector3(attack_offset.x * -1, attack_offset.y, attack_offset.z); } else { v = attack_offset; } _obj.hitbox[0] = GameObject.Instantiate(Attack[0], _obj.transform.position + v, Quaternion.identity) as GameObject; _obj.hitbox[0].transform.parent = _obj.transform; }
public override void Mode_Update(Charactor _obj) { base.Mode_Update(_obj); //CameraLockFilterがついていればプレイヤーの接近を //感知して動く EnemyNest nest = _obj.GetComponent <EnemyNest>(); CameraLockTrigger camera; if (nest.CameraLockTrigger != null) { camera = nest.CameraLockTrigger.GetComponent <CameraLockTrigger>(); if (camera.valid) { //デフォルトへ _obj.ChangeMode(3); } } }
public override void Mode_Update(Charactor _obj) { //プレイヤーの向きに応じて向きを変える //プレイヤーのほうが右にいるなら if (player.transform.position.x > _obj.transform.position.x) { _obj.transform.localScale = new Vector2(_obj.BaseScale_x, _obj.transform.localScale.y); } else { _obj.transform.localScale = new Vector2(-_obj.BaseScale_x, _obj.transform.localScale.y); } base.Mode_Update(_obj); //終了時刻になったら攻撃モードに if (_obj.modetime > EndTime) { _obj.ChangeMode(3); } }