動く床の作成,キャラクターも一緒に動かす

f:id:ka1357amnbpdr:20190507190907g:plain

こんな感じに作りたかったです!!

では,作っていきたいと思います.

こちらのページを参考にしました!!

qiita.com

ghoul-life.hatenablog.com

今回は2dなのでcollisitonをcollisiton2Dに書き換えます.

DOTween proでのpathのやり方はこちらです

proはスクリプトではなくて,gui上でpathでanimationをできるので簡単です

www.youtube.com

 

こちらように,やっていきます

以下のようにpathを設置していきます

f:id:ka1357amnbpdr:20190507191818p:plain

今回は,わかりやすいように赤線と入れています

 

これだけでは,動く床に乗ったときにキャラクターが一緒には動いてくれません.

以下のように床の方にスクリプトをアタッチします.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class FallFloar : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
}

// Update is called once per frame
void Update(){
}

private void OnCollisionEnter2D(Collision2D collision)
{
collision.gameObject.transform.SetParent(this.transform);
}

private void OnCollisionExit2D(Collision2D collision)
{
collision.gameObject.transform.SetParent(null);
}
}

これで,一緒に動きます

 

追加

「動く床に乗ったときに,プレイヤーが子オブジェクトにならない時がある」

 

コードの中が呼ばれる時間の間隔が短いので,fixedupdateの時間を変更します.

f:id:ka1357amnbpdr:20190507203841p:plain

ここのFixedUpdateを短くします.しかし,ジャンプ力が落ちたのでジャンプ力をあげてあげます
 

 

freemさんにゲームを公開しました!

まだまだキャラクターを進めるだけになっていますが,これからどんどん機能・スキルなどを入れていきます.

よろしくお願いします ~~