gamegrid.elで遊んでみよう

emacs上で動作する

M-x tetris

M-x pong

などのゲームは、「gamegrid.el」というゲーム用ライブラリで作られています。
今回は、この実験として、簡単な「迷路ゲーム」を作ってみました。

ソースコード

ソースコードは、こちらからダウンロードしてください。

ダウンロード場所はどこでも構いません。
ここでは、ホームディレクトリ直下に以下のように配置されているものとします。

~/maze.el

遊び方

常用するメジャーモードでもないので、「.emacs」の編集などは必要ありません。


emacsを起動して、以下を実行してください。

M-x load-file [Enterを押す]
Load file: ~/maze.el [Enterを押す]


以下を実行すると専用のバッファが開き、ゲームが始まります。

M-x maze [Enterを押す]



このようなゲーム画面で、各色のブロックが示すものは以下の通りです。

意味
黄土色 プレイヤー
緑色
赤茶色 通路
灰色


プレイヤーの初期位置は左下で、以下のように操作します。

キー 動き
C-p/kキー/十字キーの上キー 上へ1マス移動
C-n/jキー/十字キーの下キー 下へ1マス移動
C-b/hキー/十字キーの左キー 左へ1マス移動
C-f/lキー/十字キーの右キー 右へ1マス移動
qキー ゲーム終了


ルールというほどではないですが、
通路をくねくねと辿って、右上のマスに到達するとクリアです。
クリアすると、ミニバッファに

You get goal!

と表示されます。(英語があやしいですが)


なお、道中で敵にぶつかるとスタート地点に戻されます。


ゴールしてもゲーム自体は終了しませんので、終了する際には「q」キーを押してください。

備考

実は、プログラム自体は2011年11月に作成していたのですが、
記事を作成していませんでしたので、お蔵入りになる(既になっている?)前に
公開しておきます。


ちなみに、このプログラム自体はEmacsに付属するpongというプログラムを参考に作りました。
上述の通り、「M-x pong」で遊べます。


カラーリングをみて分かるかも知れませんが、ナムコドルアーガの塔みたいなものを作ろうとしてました。
しかし、pongを元に別のゲームを作るなら「ブロック崩し」とかの方が良かったかもしれません。