× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
ゲームを作ろうと思い、その足がかりとして1時間である程度まで作ってみた。
開発は「Adobe Flex Builder 3 Standard」を使いました。 OKを押してから10秒間で何回「赤い円」をクリックできるか。 ただ、それだけ。 最初思いついた時は60秒で考えてたんだけど、さすがにこれだけのものを60秒も遊んでられなかったw というわけで、10秒に設定しました。 ここからどうするか、一応構想はあるんだけどなぁ。 まぁ、とりあえず今週末にやるだけやってみるか。 つづきにソースコードをのっけておきます。 PR |
Adobe AIR の Hello World をやってみました。
まずは環境整備からです。 ・AIRランタイムのインストール 「AIRランタイム」はAIRアプリケーションを実行する環境で必要となります。 つまり、エンドユーザもインストールする必要があります。 以下のページからダウンロード、インストールします。 Adobe - Adobe AIR ・AIR SDKのダウンロード AIRアプリケーションの開発には、「AIR SDK」が必要です。 以下のページからダウンロードして、任意の場所に解凍します。 そして、pathを通します。 Adobe - AIR:Adobe AIR SDK ・Flex 3 SDKのダウンロード 開発を行うには、「Flex 3 SDK」が必要になります。 以下のページからダウンロードして、任意の場所に解凍します。 Adobe - Flex 3: Downloads ・FlashDevelop 最後にIDEです。 私はFlashDevelop 3.0.0 RC1 releasedにしました。 以下のページからダウンロード、インストールします。 FlashDevelop.org - View forum - Releases これで環境整備は終わりです。 では、「Hello World!!」を出力してみましょう。 FlashDevelopを起動します。 「Project」 -> 「New Project」 を開きます。 ActionScript 3.0の「AIR AS3 Projector」を選択して、任意の名前(ここでは「HelloWorld」)と場所を指定して「OK」を押します。 「src」ディレクトリにある「Main.as」に以下のように書きます。 package {
import flash.display.Sprite; import flash.text.*; public class Main extends Sprite { public function Main():void { var tf:TextField = new TextField(); tf.text = "Hello World!!"; addChild(tf); } } } 「Tools」 -> 「Program Settings」を開きます。 Pluginsの「AS3Context」を選択して、Languageの「Flex SDK Location」に「Flex 3 SDK」を解凍したディレクトリを指定します。 「Project」 -> 「Build Project」を選択します。 コンパイルが通ると、「bin」ディレクトリに「HelloWorld.swf」が作成されます。 そのファイルを右クリックして、「Execute」を選択します。 すると、Adobe Flash Playerが起動し、左上に小さく「Hello World!!」が出力されます。 ここまでは、普通のFlashアプリケーションです。 AIRアプリケーションを作成するにはもう少し作業が必要となります。 「CreateCertificate.bat」ファイルを右クリックして、「Execute」を選択します。 すると、「SelfSigned.pfx」が作成されます。 「PackageApplication.bat」ファイルを右クリックして、「Execute」を選択します。 パスワードの入力を求められるので、「fd」と入力します。 これで「air」ディレクトリに「HelloWorld.air」が作成されます。 ・・・のはすだったんですが、以下のようなエラーが出ました。 F:\devel\AIR\HelloWorld\application.xml(14): error 305: Intial window content SWF
version 10 exceeds namespace version http://ns.adobe.com/air/application/1.0 AIR setup creation FAILED. 以下にエラーメッセージの一覧があります。 Adobe AIR 1.5 * ADT(AIR 開発ツール)を使用した AIR インストールファイルのパッケージ化 どうやら、「application.xml」の2行目のnamespaceで宣言されているAIRのバージョンが違うようです。 「1.0」となっている部分を、「1.5」に変更します。 これで再度実行したところ、「HelloWorld.air」が作成されました。 このファイルを右クリックして、「Execute」を押します。 すると、インストーラーが開くので、インストールします。 これでAIRアプリケーションとして動作するようになります。 インストールしたファイル(HelloWorld.exe)を実行すると、ウィンドウが起動して左上に「Hello World!!」が出力されます。 もう1回「HelloWorld.air」を実行すると、アンインストールができます。 以上、Adobe AIR の HelloWorld でした。 |
すでにあるオブジェクトの配列を pagination したい場合はどうすればいいのだろう?
will_paginate では、できなさそうでした。 というわけで、Paginator オブジェクトを自分で生成してやってみました。 Controller : @pager = Paginator.new(@schedules.length, 5) do |offset, per_page|
@schedules[offset, per_page] end @page = @pager.page(params[:page]) View : <% @page.each do |schedule| %>
・ ・ ・ <%= @page.number %> <%= link_to_remote("前", :url => {:controller => :schedule, :page => @page.prev.number}, :update => 'schedule_list') if @page.prev? %> <%= link_to_remote("次", :url => {:controller => :schedule, :page => @page.next.number}, :update => 'schedule_list') if @page.next? %> これで、@schedules を pagination することができました。 |
前回からだいぶ期間が開いてしまいました。
反省。 リアルタイムバリデートについてまとめました。 リアルタイムバリデート(CM) (Lonely Lion2 Site) 段々、まとめは後で一気にやった方がいい気がしてきました。 前のやつを見ると大幅に書き直さないとダメになってるから。 というわけで、まとめはしばらく放置します。 |
コース・カテゴリ作成ウィンドウの編集を行いました。
詳細は以下の3点です。 ・デフォルト値の設定 ・バリデートの初期化 ・カーソルの初期位置を設定 2008年7月7日 (Lonely Lion2 Site) いったん開発を止めて設計の方をやります。 といっても、そんなに長くかけるつもりはありません。 あくまでも予定ですがw |
カテゴリ作成時にリストを更新して、作成したカテゴリの詳細を表示するようにしました。
カテゴリ削除時にリストを更新するようにしました。 カテゴリ作成・削除時にコース作成ウィンドウを更新するようにしました。 2008年7月5日 (Lonely Lion2 Site) |
コース作成・削除時には、リストを更新するようにしました。
コース作成時には、作成したコースの詳細を表示するようにしました。 コース削除後は、詳細を表示しないようにしました。 2008年7月1日 (Lonely Lion2 Site) さて、とうとう10回目を迎えました。 だからといって、別に何もありませんがw 設計が中途半端になっているので、そろそろ更新します。 前回の二の舞いになったら、やり直した意味がないので。 ・カテゴリ作成・削除時の処理を変更 ・作成ウィンドウのバグ取り除き この2つが終わったくらいで設計に戻ろうと思います。 |
コースの削除機能を実装しました。
2008年6月26日 (Lonely Lion2 Site) コース作成やカテゴリ作成に利用している Window についてのソースを抜きだしてまとめました。 といっても、本当に抜き出しただけ。 そのうち何か気づいたことがあったら足していきます。 Window(CM) (Lonely Lion2 Site) |
ツリーに全て開く・全て閉じるボタンを配置しました。
コースとカテゴリの詳細表示に項目を追加しました。 カテゴリの削除機能を実装しました。 2008年6月24日~25日 (Lonely Lion2 Site) コースの削除機能はまだ未実装です。 ツリーの全て開く・全て閉じるボタンの配置で少しはまりました。 0.6.2では <%= render_float_button_begin %> と <%= render_float_button_end %> を使って実装していました。 が、今は <% render_float_button do %> を使わないといけなくなったのを忘れていました。 RubricksDevelopmentComponentMigrationTo066Ja - Rubricks Project - Trac 10分くらいで思い出したんで助かりました。 一度目を通しておいて良かったー。 次はコースの削除も実装しないとな。 |
コース・カテゴリ作成ウィンドウを render :partial で分けました。
カテゴリとコースをツリー表示し、クリックすると詳細表示できるようにしました。 2008年6月20日~23日 (Lonely Lion2 Site) 詳細表示はまだコース名と表示名しか表示されません。 気づいたらカテゴリが作成できなくなっていました。 原因は、 course を course_category に変更していなかったから。 コピペして直すの忘れてました。 |
忍者ブログ [PR] |