またまた質問です

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
はね

またまた質問です

#1

投稿記事 by はね » 18年前

何度も質問してしまい申し訳ありません

早速本題なのですが

この前質問させていただいたアクションゲームを引き続き制作しています。

で、その制作しているゲームにおいて

ゲームプログラミングの館 24. 行けない所を作る。~2D~

を応用してやりたい処理ができそうなのですが

私が制作しているゲームの場合、キャラのx,yをfloat型で宣言しているため
if(hantei[y/32-1][x/32]==1)

のような書き方ができません。

float型でx,yを宣言してしまった場合、この処理は使えないのでしょうか?

Justy

Re:またまた質問です

#2

投稿記事 by Justy » 18年前

 xや yを int型にキャストしてから演算してみてはどうでしょうか?

管理人

Re:またまた質問です

#3

投稿記事 by 管理人 » 18年前

ちゃんと1区間ずつ動くのであればキャストすればOKです。

[(int)y/32][(int)x/32]

こんな感じで。
しかしボンバーマンやマリオのように、ちょこちょこ動くようなものには使えません。
というのも、
10.0も10.1,10.8も10.9も全部キャストすると10になってしまうからです。
この1以下の誤差がおかしな挙動に繋がります。
きっちり1区間ずつ動くのならキャストだけでOKです。

はね

Re:またまた質問です

#4

投稿記事 by はね » 18年前

はい・・・・できました^^;

こんな簡単なことでつまずいている私っていったい・・・

こんな簡単な質問にお答えいただきありがとうございます^^

まだまだ未熟ですが今後ともよろしくお願いいたします

管理人

Re:またまた質問です

#5

投稿記事 by 管理人 » 18年前

色々経験してみないとパッとはなかなか思いつかないですよね^^
私もめちゃくちゃ試行錯誤していたのに、人に聞いてみたらものすごい簡単な事で解決したという事もよくあります。
人に聞いてみるのも大事ですね^^

はね

Re:またまた質問です

#6

投稿記事 by はね » 18年前

そうですね~
今、チームでゲームを制作しているのですが
「よし!俺はプログラマーやる!」とか言ったものの、人に聞いてばっかりです^^;
早く上達して様々な状況に素早く対応できるようになりたいものです

管理人

Re:またまた質問です

#7

投稿記事 by 管理人 » 18年前

いぃですねぇ。
私も誰かと一緒にゲーム作ったりしたかったです・・。
周りにゲームつくろうって感じの友達がいないもので、いつもソロです^^;
バイク好きな奴とかばっかかな・・。

ツーリングならよく行くんですけどねぇ・・・って関係ないかw

そういえば1週間後にZX-9Rが納車されるので楽しみです・・・ってもっと関係ないかw

閉鎖

“C言語何でも質問掲示板” へ戻る