【ローグライクゲー】キャラクターを移動させる【制作日記】

どうも、萬朶櫻(@wanduoying)、183朶目の記事です。

前囘まででマップやオブジェクトの生成をやりました。

【ローグライクゲー】キャラクターを壁外に生成、または1人だけ生成したい時のメモ【制作日記】

今囘は生成したキャラクターを動かす處理をやりたいと思ひます。

プレイヤーキャラを動かす

このキャラを動かしていきます。假のデザインなので、今後見た目が變はるかも。

白い棒みたいなのは向きを確認するためのものです。

 

スクリプトPlayerController.csを作成し、Update函數に記述をしてプレイヤーのプレハブにアタッチします。

とりあへずこれでマス目に沿つて動いてくれます。

斜め移動に對應してないけど、現状ではいいでせう。

しかし、これではキャラクターが常に正面を向いてゐることになり、攻撃などの處理に支障がありさうです。

 

なので囘轉の處理を入れていきます。

最初はこのやうに、矢印キーを押したら囘轉、と云ふ風にやつてみたんですが、これではプレイヤーが移動ごとに餘計な囘轉をするのでダメみたいです。

左に動く場合。赤色矢印はキャラの向き。

そこでTech Academyにて相談してみたら良い解決法を教へてもらひました。

Quaternion.Euler()といふのを使へば直接向きを代入できるらしいです。

敵の移動

とりあへず假といふことで、ランダム移動させてゐます。

EnemyController.csを作り、敵のプレハブにアタッチします。

Update()に書いてしまふと1フレーム毎に高速移動してしまひます。EnemyMove()を作つてそこに書きました。

今のところ、この函數を呼び出すための記述をしてゐないので、實行しても敵は動きません。

 

現状はここまで。

今後はプレイヤーと敵が交互に動くターン制を實裝したいと思ひます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA