Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。

2010-03-09

LuaをXcodeでコンパイルしてみた

ソースファイルを突っ込んだら普通にビルドできた。

クジラ飛行机さんの書いた高速スクリプト言語「Lua」を始めよう!でLuaを勉強中。

iPhoneアプリの開発にLuaを使うにあたって悩んでいるのは、画像の制御をLuaでやるかどうかというところ。

当初はモデル部分だけをLuaで実装して、UIに関する部分はCで実装しようかと考えていた。 が、やろうと思えば画像等の管理をLua側でやることも可能なわけで、その辺りの設計をどうしようかなと。

とりあえず、UIはLuaを使わずに普通に作る形にした方が手っ取り早いのかな。Luaへの依存度を高くするのはいろいろ試してからの方がいいかもしれない。

permalink
category: iPhone(9)
2010-03-08

MacBookバンドルアプリケーションのインストールメモ

先日Macのクリーンインストール後に行ったiPhotoその他アプリのインストールに関するメモ。

2009年の7月にMacBook pro(Leopard)を購入し、年が明けてからSnow Leopardにアップデートした。

その後、一度Snow Leopardのディスクでクリーンインストールを行ったのだが、なぜかiPhotoが入っていない(もしかしたら買ったときもデフォルトではインストールされていなくて、間違えてディスクから何かをインストールしてしまったことがあったのでそのとき入ったのかも)。 iPhoneで撮影した写真や動画はiPhotoで管理していたし、その他の方法でデータを管理する方法はわからない。

MacBookの箱から購入時についてきたDVDの一枚を取り出し、それをPCに差し込むとバンドルアプリケーションのインストールメニューが開く。カスタマイズでインストールするアプリを選択できるらしい。

  • CPU Help Files → 入れない
  • iPhoto → 使うので入れる
  • iMovie → 使うので入れる
  • GarageBand → 入れる。使う予定はないけど
  • iWeb → 入れない
  • iDVD → 入れない。何に使うのかわからない

インストールが完了したが、旧環境から持ってきたiPhotoのデータが開けない。 そこでソフトウェア・アップデートを実行してみる。 するとリストにiPhotoの更新があったのでアップデートを実行。アップデートが完了すると無事開けるようになった。

permalink
category: Mac(5) setup(3)
2010-03-07

ブログ記事に対するコメントをtwetterで

年末にブログシステムをcgi.rb実装からSinatra実装に移行してからこっち、コメント機能が無効になっていた。

ブログに対するコメントをtwitterで受け付けると面白いんじゃないかと思っていたのでその方向で実装してみた。

実装の作戦は以下の通り。

  1. 新規の日記エントリを作成したらそのエントリのタイトルとパーマリンクをtwitterで通知する(日記エントリとペアになるtweetを用意しておき、そのtweetへの返信をブログ記事へのコメントと見なす)
  2. twitterから自分のtweetsを取得して日記エントリに対応するものをキャッシュしておく
  3. twitterから自分のrepliesを取得してキャッシュしておく
  4. 2へのrepliesを日記エントリへのコメントとして日記ページに表示

1は今のところ手動、2と3はcronで定期的にスクリプトを実行、4はブログシステムが動的に処理という形。これで少し様子を見てみようと思う。

現状の問題点としては、コメントとしてポストされたtweetに対するrepliyを拾えていないところ。 各tweetに対する返信をたどることができれば木構造でコメント欄に表示できるんだけど、あるtweetに対する返信tweetは検索できないものと理解している(詳しくないのだけど)。

完全にtweetを木構造でたどれるようになると、もしかしたら爆発的な数になってしまうかもしれないけど、それはそれとして。

permalink
category: Bilbo(15)
2010-02-28

iPhone向けRPGをLuaで

今作ろうとしているiPhone向けのRPGの実装にはLuaを使いたいと思っている。

去年の年末にローカルにLuaの実行環境を用意して、勉強しながらスクリプトを少し書いたのだが、 その後放置したままだいぶ時間が経過してしまった。

今日ひさびさに以前書いた170行のLuaのコードを読むとぱっとみ意味がわからない。 実行するとなにやら実行エラーが出るのだが、その意味もよくわからない。

そのコードは思ったよりLuaぽく書かれていて、当時はそれなりに調べながら努力して書いていたらしい。 すぐには思いつかないようなLuaぽい表現がいくつも使われている。

まずはこのコードを読みながら当時のことを思い出していくとしよう。 思ったよりちゃんと実装してるし、思ったより作業は進んでいた。

ある程度感が戻ったら次はiPhone上でLuaを走らせることに挑戦してみたい。

permalink
category: iPhone(9)
2010-02-28

MacでLuaを使う

http://www.lua.org/

上記Luaの公式サイトからLua 5.1.4をダウンロード。

wget http://www.lua.org/ftp/lua-5.1.4.tar.gz

ターミナルにて解凍する。

tar zxvf lua-5.1.4.tar.gz

とりあえずユーザローカルにインストールすることにする。 解凍したあとMakefileを書き換えてインストール先を/Users/dan/localに変更する。 Makefileが簡潔に書かれているので書き換えるのが容易だ。

cd lua-5.1.4
vim Makefile

makeを引数なしで実行する次のように表示される。

make

以下表示結果。

Please do
   make PLATFORM
where PLATFORM is one of these:
   aix ansi bsd freebsd generic linux macosx mingw posix solaris
See INSTALL for complete instructions.

手元の環境はMacなのでmacosxを与えてmakeを実行する。

make macosx

インストール。 (デフォルトのパスにインストールするならsudoが必要。)

make install

インストール先(上の例なら/Users/dan/local/bin)にパスを通せばluaコマンドを実行できる。

lua -v
=> Lua 5.1.4  Copyright (C) 1994-2008 Lua.org, PUC-Rio
permalink
category: Mac(5) setup(3)