2010年4月20日火曜日

FF13exp計算機を作りました

JavaScriptでFF13exp計算機を作りました。 一応、攻略メモにあるitem.odsの最後のシートに同じような式はあるんですが、それだと不親切すぎるということでブラウザでも使えるようにしました。 でも使う人、いるのかな?

コレを作るとき、ieのバグを踏みました。 innerHTMLでselectタグの中のoptionを書き換えると変になるアレです。 Google Chromeで作って、動作チェックのときだけ他のブラウザ(ie、FireFox、Opera)で確認。 ieだけ動かなかったので「またieかっ!」ってなりましたね。

ペルソナ3フェスの攻略ページを作ったときも似たようなコードは書いてたんですが、その時は1つ外のタグを書き換えていたので気付きませんでした。 前ので上手くいっている分、今回はなぜ動かないのか分からずにチョッと戸惑いました。 少し調べてすぐに原因が分かったのは運が良かったかな?

短時間で適当に作りました。 JavaScriptのコードは読み返すと酷いです。 特に変数名とか。 才能が有る人は短時間で適当に作っても読みやすいコードを書くらしいですね。 自分のは ... ヘコんどいた方がいいのかも。

アイテム一覧を登録している部分はずいぶん無理やりなコードに見えますが、作るのは楽です。 表計算ソフトでコードを作っています。 まずは攻略メモのitem.odsから必要な部分を抜粋。 各列の間にコード用の列を挿入していきます。

  • Aの列 ... 文字列挿入「item=new Object(); item.id=」
  • Bの列 ... 行番号
  • Cの列 ... 文字列挿入「; item.name="」
  • Dの列 ... アイテム名一覧
  • Eの列 ... 文字列挿入「"; item.max_lv=」
  • Fの列 ... LV.☆一覧

の様に書いておいて、全体をコピーしてテキストエディタにペースト。 タブを置換で消して完成です。

何度も修正するときはダメなコードですが、1度書いて終わりのときはこんな感じで。 ホントは外部ファイルにアイテム一覧を用意しておいて読み込んだ方が良いんですけどね。