예제 #1
0
    //死亡処理
    protected override void Death( )
    {
        if (_hit_point <= 0)
        {
            AddScore( );

            _audio_source.PlayOneShot(SoundRegistry.getSE(SoundRegistry.SE.EXPLOSION));

            Destroy(this.gameObject);
        }
    }
예제 #2
0
    public void Shoot(GameObject lock_on_obj)
    {
        if (!_is_shoot)
        {
            return;                             //撃てる状態でなければ撃たない
        }
        Vector3    bullet_dir = lock_on_obj.transform.position - transform.position;
        GameObject bullet_obj = Instantiate(_bullet, transform.position, Quaternion.LookRotation(bullet_dir.normalized));

        _audio_source.PlayOneShot(SoundRegistry.getSE(SoundRegistry.SE.BULLET));

        //どうにかしないと-----------------------------------------------
        Bullet bullet = bullet_obj.GetComponent <Bullet>( );

        bullet.setTarget(lock_on_obj);                  //弾に追尾する対象を入れる
        //---------------------------------------------------------------

        _is_shoot        = false;       //一度撃ったら撃てない状態にする
        _next_shoot_time = _set_next_shoot_time;
    }
예제 #3
0
    private void LockOnUIActiveChange( )
    {
        //ロックオン中UIの表示切替---------------------------------------------------------------------------
        //ロックオン中UIが表示されていてロックオン中のオブジェクトがNULLだったら非表示にする
        if (_lock_on_doing_ui.activeSelf && _gaze_controller.getLockOnDoingObject( ) == null)
        {
            _lock_on_doing_ui.SetActive(false);
        }

        //前のフレームの時とロックオン中のオブジェクトが違っていてオブジェクトがNULLじゃなかったら表示更新
        if (_pre_lock_on_doing_obj != _gaze_controller.getLockOnDoingObject( ) &&
            _gaze_controller.getLockOnDoingObject( ) != null)
        {
            _lock_on_doing_ui.SetActive(true);
        }
        //--------------------------------------------------------------------------------------------------

        //ロックオンUIの表示切替----------------------------------------------------------------------------
        //ロックオンUIが表示されていてロックオンしたオブジェクトがNULLだったら非表示にする
        if (_lock_on_done_ui.activeSelf && _gaze_controller.getLockOnObject( ) == null)
        {
            _lock_on_done_ui.SetActive(false);
        }

        //前のフレームの時とロックオンしたオブジェクトが違っていてオブジェクトがNULLじゃなかったら表示更新
        if (_pre_lock_on_done_obj != _gaze_controller.getLockOnObject( ) &&
            _gaze_controller.getLockOnObject( ) != null)
        {
            _lock_on_done_ui.SetActive(true);
            _audio_source.PlayOneShot(SoundRegistry.getSE(SoundRegistry.SE.LOCK_ON));
        }
        //---------------------------------------------------------------------------------------------------

        //このフレームのオブジェクトに更新
        _pre_lock_on_doing_obj = _gaze_controller.getLockOnDoingObject( );
        _pre_lock_on_done_obj  = _gaze_controller.getLockOnObject( );
    }