投稿

進捗

イメージ
 今までイベントを開始するとき、どのようなイベントでも上にもともとあった人の画像が使われていたがほかの画像に変更した。 上の画像にある人の絵が常に使われていた。それを 大きな金のイベントにはマップのマスで使われている画像をそのまま利用した。絵心がないためわかりにくいかもしれないが人の絵よりもイベントに合っているのでさいようした。 大きな金と同様に鍛冶屋の看板もマスの画像と統一した。看板が白いのは、森のマップに書かれている木の幹が白いためである。 メニューも同様にした。はじめ見たときは世界観とあっていないのではないかとおもわれるかもしれないが、メニューという機能があることを一目でわかるようにするため白のままにしている。 これらのイベントを修正しているときに少し問題があるのを見つけた。 上記の二つのマップにイベントがないことだ上の画像は最初に表示されるマップという役割があるのでいいかもしれないが、下のマップは特に機能がない。もちろんすべてのマップに役割を持たせる必要はないかもしれないが、なにかイベントが追加できるのであれば追加しようと思う。 またプログラムで問題ではないが困ったことが起きた。 上に書いてあるプログラムは主人公の描写の部分だ。元のプログラムは条件を満たすことで姿を変えるようになっている。しかし私のストーリーでは姿を変えないためこの箇所を変えようと考えたがうまくいかなかった。フラグ3を変える機能がどこにもないためこのままのプログラムでも問題は無いが少し無駄なプログラムが発生してしまう。 また、フラグ3がトゥルーになった時の主人公の画像もファイルに入れないと起動しなくなる可能性があるので、必要ない画像を消せないという点においても解決するべきかもしれないと考えた。

コード

 <!DOCTYPE html> <html> <head> <title>FieldWalk8</title>  <meta charset="UTF-8"> <script> var map0 = [ [08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08], [08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08], [08, 08, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 96, 08], [08, 08, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 08, 08], [08, 08, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 08, 08], [08, 08, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 15], [08, 08, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 08, 08], [11, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 08, 08], [08, 08, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 09, 08, 08], [08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 08, 09, 08, 0...

コードの一部

 完成したのでコードの一部を張ります else if (mpt==03 && gp>=10) { px = dx; py = dy; gp-=10; gpw+=1; fieldpaint(); } else if (mpt==52 && gp>=100) { px = dx; py = dy; gp-=100; gpw+=10; fieldpaint(); } else if (mpt==53 && gp>=1000) { px = dx; py = dy; gp-=1000; gpw+=100; fieldpaint(); } else if (mpt==54 && gp>=10000) { px = dx; py = dy; gp-=10000; gpw+=1000; fieldpaint(); } else if (mpt==55 && gp>=100000) { px = dx; py = dy; gp-=100000; gpw+=10000; fieldpaint(); } このコードは鍛冶屋のマップで金を消費して採掘力を上げる機能を表しています。

進捗 1/17

イメージ
 仕上げに使わないプログラムを削除する過程で問題が発生した。このプログラムはマップを作成するために配列を使用している。そのため配列内のマップの順番を切り替えてしまうとマップ移動の際に別のマップに行ってしまうなどの不具合が発生する。私のプログラムの場合、もともとあったマップ4が必要なく、消してしまった場合この不具合が発生した。この対策として、マップ移動のマスの数値を変更する、マップ4をどこかに追加する、プログラムの実行には特に問題は無いのでそのままにしておく、などがあげられる。数値を変換して動かなくなる危険性があるし、特に役割がないマップを追加するのも気が引ける。 この問題を解決するために変更するかもしれない。

進捗 1/16

イメージ
 ほとんど完成した。前回の進捗の通り隠し通路を作った場所は洞窟の入り口にした。 また主人公を変更した。青色の人型が主人公だ。隠し通路は主人公がいる部分で上に進むことで隠し部屋に行ける。 この部屋にある黄色い(一応延べ棒をイメージしている)床を踏むとイベントが発生し、キーボードのAを押すことで採掘量分の金を獲得できる このほかに森のマップを改造した。 この森にある人型のマスは隠し通路のヒントを教えるマスである。 このマップにいる人型のマスは金を要求するマスであり1万個獲得して話すことでゲームクリアになる。 これでマップ、イベント、金の機能が完成したため細かい修正はあるかもしれないが、これで完成とする。

進捗 1/5

イメージ
  前回の進捗で書いた、大きな金のイベントをどうするかという問題があったが、隠し通路を作り、その先のマップにこのイベントを置く事で解決することにした。しかし、新しく「どこに隠し通路と隠し部屋を置くか」という問題が発生した。今回では、隠し通路と隠し部屋を置く候補とそれぞれの隠し通路のヒントを挙げた上で、現状どこに決めたかを書いていく。 1 洞窟の入り口の岩の部分  洞窟の入り口の段々狭まっていく部分に置こうと考えた理由は、洞窟の入り口が狭いにも関わらず、内部は広くなっており、そのアンバランスさを、隠し通路という理由で説明したいからだ。マップ移動のプログラムは「マップ移動のマアスにどのキーを押すことで到達したか」という条件分けを行なっている。例えば、行きたいマップが左右にある場合、左右のキーを押したという条件が成立し、それに合わせて主人公の位置を右端から左端、左端から右端などに移動させながらマップを切り替えることでできている。そのためもし、洞窟の入り口を広くしてしまった場合、「このキーを押したから主人公をこの位置に移動させる」というプログラムがうまくいかなくなってしまう。そのため、洞窟の入り口を狭くする必要がある。もちろん洞窟の内部を狭くする事でアンバランスさをなくすこともできるが、隠し通路を作るには良い場所なので候補に入れた。ヒントに関しては、「あの洞窟入り口が狭すぎないか?何かあるのかもしれない。」というようなセリフにしようと考えている。 2 洞窟の内部  洞窟の内部であれば隠し通路があっても不自然ではないし、入り組んだマップにしているので比較的作りやすいと考えたため候補に入れた。今はマップのLを倒したような岩があるところか、一番右端の行き止まりがある部分に作ろうかと考えている。ただここには金鉱石という要素もあるし、他のマップと比べてそこまで広くないため、要素をこのマップにまとめるのは良い策ではないかも知れない。ここに置くならば、「洞窟には行き止まりがいくつかあったりするが、中には有益な行き止まりというのもある、俺はあの洞窟で長い間採掘をしているが、まだ見つけていない通路があるんじゃないかと考えている、俺的には特に真ん中あたりが怪しい」などにする予定だ。 3 鍛冶屋  洞窟の内部と同じように採掘力を上げるという要素があるので、要素が密集してしまうというデメリットがあ...

進捗1/4

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