進捗1/4

  今回のプログラミングではキャラクターを動かすためにキーコードを使っている。この要素を活用したいと考え、試行錯誤を行っている。現状考えているのは、

1大きな金というイベントを追加し、その場でaなどのキーを押すことで金の数値を上げる

2鍛冶屋のイベントを追加しキーを押すことで所持金の消費と採掘力の上昇を行う

というプログラムを追加しようと考えている。そのためこのページでは今の状況をかく。

1 現状ほとんど完成している。マップの要素を設定する部分(09であればキャラクターは移動できる14などであればマップを切り替える)に追加している。ケース文で「このマス目でaのキーを押した場合、金の数値を採掘力分だけ増加させる」というプログラムを追加したところ成功したが、少し問題も出てきた。確かにそのマスでキーを押したらプログラム通り金が増えるが、キーを長押しすることで高速で数値が増えるようになった。最初はそれでもいいと考えていたが、もしこの大きな金のイベントを普通にマップにおいてしまうと、前に追加した金鉱石のマス(そのマスを踏むと採掘力分の金の数値を増加させる)がほとんど機能しなくなる。金鉱石を地道に何度も踏むよりもイベントでキーを長押ししているほうが効率がはるかにいいからだ。もちろん採掘力はすぐ上がり必要数もそこまで多くはないのでどちらを使ってもすぐにおわるが、意味がなさすぎるのもよくないので対策を考えている。方法としては、金鉱石を踏むことで増える数値を増やす(ノルマを一瞬で達成してしまうのでノルマを変更するなどの対策が必要)、隠し通路や、条件を満たさないといけない部屋など、普通ではいけないマップに置くことで「金鉱石を踏むか大きな金を探すか」というゲーム性を出す、クリア条件に金以外の素材や、フラグを追加する、採掘できる上限を作る、タイマー処理などで「長押ししている場合1秒に一回金がふえる」などのプログラムを追加したり(できるかは不明)、長押しでは反応しないキーを探したり、採掘量を一定にしたりするなどして効率を下げる、などがあげられる。

 今のところ隠し通路を洞窟においてその先の部屋に置こうと考えている。

2 あまり成功していない。1と同じようにマップのマスの設定の部分にケース文でキーを指定し「キーを押した時、金を10以上所持している場合金を10消費し、採掘力を1増加させる」という設定を行ったが、「金が10個以上ないとできない」という条件がうまくいっていなかった。そのため、このままプログラムを実行すると、金がマイナスになっても実行できてしまう。

 なぜ条件設定がうまくいっていないのかはわからないが、キーを指定するケース文にそれ以外の条件を付けるのができない可能性が高い。そのため、もし条件を追加したい場合、ケース文でキーを指定した後に、そのなかにイフ文を書き、金を必要数もっているかどうかで処理を切り替えるなどの対策が有効かもしれない。

 しかし前回の進捗で書いたように、鍛冶屋を作ったため、無理にキーを使ったプログラムを追加する必要はないかもしれない。そのためこのプログラムは万が一必要になった場合(マップが広すぎて鍛冶屋に行くのが大変になったなど)が起きた時に追加しようと考えている。

このブログの人気の投稿

現状と今後12/8

進捗 12/21