マドノマグラの初心者自作ゲーム制作日誌 迷走モード
プログラミング初心者が自作ゲームを作成してみようとする動きを記す。現在迷走中。
ブログ履歴
2009/11/09: Rubyで適当版自分用関連記事リンク作成プログラムを作る
2009/06/04: Visual C++(DXライブラリ使用)の環境を整えてみるも休止状態に
2009/03/17: ActionScript勉強の環境を整えるも結局休止状態に
2006/07/15: とりあえず分岐型ゲームを作る グリーンタワーVer1.2 ダウンロード(zip)
2006/07/02: ブログスタート。NScripterで何かを作ろうとする
[PR]
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
「初めてのプログラミング」練習問題5.4の1問目を考えてみた
初めてのプログラミングの練習問題5.4の1問目を考えてみることにした。
ちなみに、この段階では、puts,gets,chomp ぐらいしか教えられていない状態である。
素直に思ったとおり書いてみることにした。
コマンドプロンプトで実行して、自分の名前を入れていったら、うまく返ってきたのでおそらくこれでいいのだろう。
オライリー・ジャパン
売り上げランキング: 161616




「初めてのプログラミング」で Ruby 再挑戦開始
しばらくこのブログをほったらかしにしていたけれども、再びこのブログを始動させることにした。
今回は、とりあえずプログラミングを覚えないとゲーム作りも夢のまた夢ということで、初めてのプログラミングを読みながら、Ruby でのプログラミングを試みることにした。
とりあえず、初めてのプログラミングのp4に書かれている、「SciTEの日本語対応について」に書かれてある操作を行った。
以後、プログラムについては、SciTEを用いることにした。
オライリー・ジャパン
売り上げランキング: 161616




リンゴ回収ゲーム ver1.1 を作成しながらプログラミングを学ぶ
リンゴ回収ゲーム ver1.0 から、Ruby/SDL で始めるゲームプログラミング【後編】に従って、リンゴ回収ゲームを改良。
そこで紹介されていたサンプルパック2をダウンロード後、解凍し、その中に入っていた画像ファイル、サウンドファイル を追加して作成。
rb ファイルに注釈をつけながら勉強したので、元サイトに書かれているコードよりも、このエントリーの続き部分で書いたコードは注釈がやたら多くなっている。それ以外の部分でのコードはほぼ一緒である。
なお、今回、改良したのは、main.rb、items.rb なので、この2つについて続き部分に記述している。
とりあえずゲームらしいゲームはできた、これを応用して色々なゲームが作れたらいいなあ。
リンゴ回収ゲーム ver1.00 を作成しながら、ちょっとずつプログラミングを学ぶ
今回は、Ruby/SDLで始めるゲームプログラミング【前編】をそのままなぞって、リンゴ回収ゲームの作成を行っていくことにした。
そこで紹介されていたサンプルパックをダウンロード、解凍し、その中に入っていた画像ファイル、fpstimer.rb、input.rb を活用して打ちこんでいった。
rb ファイルに注釈をつけながら勉強したので、元サイトに書かれているコードよりも、このエントリーの続き部分で書いたコードは注釈がやたら多くなっている。それ以外の部分でのコードはほぼ一緒である。
今回書いた rb ファイルは、main.rb、player.rb、items.rb の3つに分かれている。
Ruby/Tk の環境設定であたふたモード(未解決)
Ruby ではじめるプログラミング 【最終回】に掲載されていた、visualnovel.zip をダウンロードし解凍して、
ruby visualnovel.rb
で実行しようとしたら、tk84.dll がないからダメーということになった。
どうすりゃいいのかと思っていたら、Ruby/Tk の環境を作る必要があるらしいとのこと。
で、プログラミング工房:Ruby/Tk環境を作るを参考にActiveStateのサイトから、ActiveTclをダウンロード。
まず、ActiveTcl 8.5.2.0 for Windows をダウンロードして展開。
ついでに、プログラミング工房:Ruby/Tk環境を作るで書かれてたとおり、システム環境変数に TCL_LIBRARY と TK_LIBRARY を新規作成。
ほっとしたのもつかの間、展開したファイルに、tk84.dll なるものが入っていないことに気付く。ちなみに、tk85.dll をコピーした後、リネームしてみたものの動かなかった。
そして、次に ActiveTcl 8.4.19.0 for Windows をダウンロードして展開すると、bin の中に tk84.dll を発見。
このファイルを ruby フォルダの方の bin の中にコピー。
そして、ruby visualnovel.rb を実行したら、tcl84.dll がないからダメとのこと。同様に、tcl84.dllをコピー。
これで動くと思ったらのに、やっぱり動かない。init.tcl が無いとかなんとかでダメらしい。
一応、tcl(ver8.4)のフォルダの /lib/tcl8.4 の中にinit.tcl を発見するもどうすりゃいいのかわからんので、今回はここで終了。
まあ、気が向いたら、また環境設定をやってみようか。
じゃんけんゲームVer1.03 でハッシュを利用
じゃんけんゲームVer1.02 を改良。ジャンケンの手と勝ち負けの判定に対して、ハッシュを用いる事にした。
とりあえず、case when でゴチャゴチャしていた部分は解消された。
こうすることが正しいのかどうかは知らん。
分かれ道 Ver 1.01 を作成し、ハッシュってさらに便利だねえということを学ぶ
選択肢によって分岐するゲームにハッシュを用いてみた。
分かれ道 Ver 1.0 の配列部分をハッシュにしてみただけである。
配列は [ ] を使ったが、ハッシュでは { } を使うという点に注意。
場面ごとにその場面にふさわしいキーが文字列で振ってあるということは、データ追加・削除によるズレが生じないので便利だねという話である。
分かれ道 Ver 1.0 を作成し、配列って便利だねえということを学ぶ
選択肢によって分岐するゲームを、勉強がてら作ってみる。
Ruby ではじめるプログラミング 【第 2 回】のコード、ほぼそのままにほんのごく一部を改変したものを書いて動かすことに成功。
配列というのが非常に便利であるということと、to_i メソッドは数字以外の文字が与えられた場合は 0 を返すというのは地味に重要かもしれない。
ちなみに、このプログラム冒頭のメッセージ、3万円、5万円、10万円…の意味がわからない人は、おとうさんやおかあさんに聞いてみようね。
ところで、続き部分のコードに対して、preタグで囲んだので、見やすくなりました。
じゃんけんゲーム ver1.02 で判定部分をクラス化してみた
Ver1.01 でまどろっこしかった、ジャンケンの判定部分についてクラス化してみた。
クラス化したところで、このクラスに汎用性があるかどうかはわからんのだけれど。
あとは、プレーヤの手の数字打ち込みなどの部分と、コンピューターのランダム手の部分がクラス化できるのかどうかを考えてみる事にしよう。
じゃんけんゲーム ver1.01 で一部メソッド定義を行う
じゃんけんゲームVer1.0 のコードのうち、完全にかぶっていたジャンケンの手を画面に文字表示する部分について、メソッドを定義することで一本化した。
コンピューターや自分が出してきた数字を受け取って、それに応じたジャンケンの手の文字列を返す仕掛けだ。
ただ、この手法でいいのかは知らんけど。
次は、まどろっこしい判定部分をなんとかしたいなあ。