0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

MAP自動生成 その1

Last updated at Posted at 2018-04-15

スクリーンショット_2018-04-15_21-39-05.png

ロブさんのエンドレスランナーのチュートリアル見ながら、MAP自動生成を自分なりに作ってみた。
枝のMAP(道中分岐可能)なら、それで大丈夫だと思うんだけど四角のMAPだと、その方法だと面倒そうな気がして自分なりの解釈で自動生成の方法を考えてみた。

ForloopとAddFloorTileがロブさんのチュートリアルを参考に繋げたもの。
ForLoopとSetFloorTileを繋げたのが自分なりの解釈で作ってみたものです。
SetFloorTileの中でやってることはAddFloorTileと同じです。
違うのはタイルを設置する基準点をどうするか、です。

まず、左のコメントから
これはMAPの範囲を指定し、必要なタイルの数を計算しています。

次にその回数分だけForloopでタイルの設置を繰り返します。
この際、座標計算を行い設置位置をSetFloorTileに入力します。

右のコメントが座標計算の中身です。
座標計算の中では繰り返しの値(ForloopのIndex)を入力として受け取り、その値を横幅で割ります。
このときの割った結果をX割った余りをYとします。

例)Indexが12、MAPの大きさを縦横10マスとします
X = 12/10 = 1
Y = 12/10 = 2
座標 X = 1,Y = 2

これをMAPの大きさ(縦*横)の回数繰り返してMAPを作ります。

##このやり方が正しいというものはない
作って、自分の思い通りに動いたら正解です。

Forloopを二重にして縦(一つ目のLoop)と横(二つ目のLoop)の回数繰り返したりでもできると思います。

|д゚).oO(書いててなんだけど、二重のForLoopの方が簡単にできる気がしてきたなんて言えない。だけど、こういうしょうもないことを経験してすごいことが出来るようになるんだと思う。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?