public override void Mode_Start(Charactor _obj) { base.Mode_Start(_obj); //ひとつだけプレハブから攻撃オブジェクトを作成 Gobrin gob = _obj.GetComponent <Gobrin>(); gob.IsAttacked = false; }
public override void MakeHitBox(Charactor _obj) { Gobrin gob = _obj.GetComponent <Gobrin>(); 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; gob.IsAttacked = true; }
public override void Mode_Update(Charactor _obj) { Gobrin gob = _obj.GetComponent <Gobrin>(); //_obj.Move(dash_speed); base.Mode_Update(_obj); //一定時刻になったら当たり判定を作成 if (!gob.IsAttacked && _obj.modetime > AttackTime) { //MakeHitBox(_obj); } //終了時刻になったら待機モードに if (_obj.modetime > EndTime) { } //0.1fはアニメーションの切り替わり直後に条件が引っ掛からないための措置 //アニメーションが終了したら移動モードに if (_obj.animator.GetCurrentAnimatorStateInfo(0).normalizedTime > 1.0f && _obj.modetime > 0.1f) { //_obj.ChangeMode(3); } }