プログラミング

当たり判定を付ける準備

当たり判定領域を動作の1コマ1コマに付けたいのですが、どうしましょう。昨日書いたようなキャラの構成の場合、 キャラ ├ 待機 │ ├ グラフィック │ └ 判定領域のディスプレイオブジェクト ├ 走り │ ├ グラフィック │ └ 判定領域の〜 ├ ジャンプ │ ├ グラフィ…

Frameクラスをまだ弄る

アニメーションとフレームアクションの機能をつけた時点でFrameクラスは完成かと思っていましたが、もう少し弄ることになりました。と言うよりはFrameクラスを継承して...な話です。 たとえばアクションゲームのキャラクターを作る場合のキャラの構成を僕は …

"グラフィック"の綴り

「プログラミング」という分類にしていますが、特に技術的な話じゃ無いので泣きそうです。今回は最近気づいた自分のミスを一つ。 僕は変数の名前をつける時、たとえばActionScriptで型が「MovieClip」なら var objMC:MovieClip;というように、「MovieClip」…

寄り道が役に立つ

個人的な事情でJavaを触る機会があるのですが、ActionScript3.0と似ている部分がたくさんあります。アプリケーションを作る際に必要なコンポーネントと呼ばれる部品も、歴史が比較的長いので参考サイトが多いJavaの方で調べていると、AS3.0の方での使い方が…

マップエディタを作り直すべき

広いマップデータを読み込む場合にフリーズと判断される時間を60秒としても 処理が終わる前にランタイムエラーとなってしまいます。 どう見てもエディタのアルゴリズムが腐っているからです。 これじゃあまったく使えません。 あと、FlexBuilder2のGUIエディ…

フレームクラスにもう少し追加機能

フレームクラスにアニメーション機能がついたことにより、大分使えるクラスになりましたが、 もう少し弄れそうな要素がありました。 もともと、Flashのムービークリップを使うみたいに使えるクラスがあれば...と思って作ったものなので、 ムービークリップの…

FlexBuilder2は15秒以上待ってくれていた

いろいろ調べてみると、どうやらFlexBuilder2でも 「-config.xml」ファイルをコンパイル時に読み込めるみたいです。 「プロジェクト」メニューの「プロパティー」の「ActionScript コンパイラ」の「追加コンパイラ引数」に -dump-config Test-config.xmlと入…

FlexBuilder2が15秒以上待ってくれない

以前、マップエディタとそれを派生させたステージ当たり判定エディタを作りました。 このエディタは、作ったマップをxmlで出力できるのですが、 このxmlを読み込んで描画し、続きからマップを作れるようにしています。 ところがこの機能、広いマップのxmlを…

キャラが走り出した

昨日の段階で、キャラグラフィックが横に長〜く伸びて表示されるという不具合がありましたが、ようやく解決しました。 以前作ったFrameクラスが悪さをしていると思っていましたが、全くの冤罪。 何が原因かというと、AS3.0での「scaleX」をAS2.0までの「_xsc…

結局いつも悩むところ

新作の方は、まだまだスクリーンショットの一枚も見せることができる段階ではないですが、 ようやく準備段階となるシステム作りが終わり、実際にゲームの内容部分を作り始めています。 あとどれぐらいかかるのやら。 AS2.0を勉強してからずっと何か作るとき…

気持ち悪いカプセル化

以前、自分用ライブラリとして使いたい型の話を書きました。 例として出したクラスはひどいものですが、 まあそれはいいとして、今回は「オブジェクト指向」の話です。 参考:Wikipedia 【オブジェクト指向】 【カプセル化】 オブジェクト指向という考え方の…

ステージの当たり判定

AS2.0時代に作ってあった当たり判定のシステムを ちょっといじってそのまま使ってみます。 今のままではあまり書くことが無かったり...。 これが無事動けばあとはキャラの動作を作ることに集中できます。

フレームクラスに改良の余地

以前、アニメーション機能を実装したフレームクラスを公開しましたが、 「addChild()」と「removeChild()」を何度も実行するという仕様に、 速度面での不安を持っていました。 特に「addChild()」は比較的処理が重いという印象があり、不安はいっそう深まり…

キー関連イベントリスナーの罠

基本的には昨日の方法でキー入力の判定はできそうなのですが、 なぜかまったくイベントリスナーが動作しないという罠に引っかかりました。 調べまわった結果、「Stage」クラスのフォーカスがカギとなっているようです。 var sp:Sprite = new Sprite(); // イ…

キー入力

キャラの動作の基本的なビットマップが出来たので、 そろそろスクリプトの方を考えていこうと思っていたところ、 AS3.0でのキー入力の受け取り方を知りませんでした。 パッと調べてみたところ、例のごとくイベントリスナーがカギのようです。 var sp:Sprite …

FlexでFlash風アニメーション

以前のFrameクラスでアニメーションできるように改造しようとしています。 これが出来れば、アニメーションをスクリプトで行っている状態となるので、 ポーズ画面でのアニメーション停止などが楽になる可能性があります。 しかしFlashで言う「_currentFrame…

マップエディタ完成

「とりあえず」の完成です。 作り始める前に考えていた機能は大体搭載したと思います。 今回データの保存用の形式として、XMLを使ってみました。 マップデータをどのような構成で保存しようか悩みましたが、動けばいいかと適当にしておきました。 外部XMLフ…

マップエディタとして使える状態になった。

昨日の基本的なマップエディタっぽい見た目に加え、 ようやく描いたマップデータを配列として出力できるようにしました。 これでひとまずマップエディタとして働かせることができそうです。 しかし、実際に使ってみて思いましたが、 マップを描いていくとき…

マップエディタの基礎っぽい

今度は「Image」の子として描画した「Bitmap」などにイベントリスナーを登録したのに、 なぜか動作しないという問題に当たりました。 苦しみましたが、この「Bitmap」1つにつき「Image」を作って描画し、 この「Image」自体にイベントリスナーを登録すること…

「Panel」のスクロールバー出現条件

結局毎度分からないことだらけで苦しい日々です。 今回分からないことは、「Panel」です。 Flexでは「Panel」コンポーネントを配置して、その中にボタンなどを配置して作っていくようです。 例えばこの「Panel」内にこの「Panel」のサイズをオーバーしたビッ…

描画の要?

MXMLでのアプリケーション開発は、コンポーネントをペタペタ貼り付けて作っていきますが、 当然これらのコンポーネントだけで開発するわけではありません。 用意したビットマップを貼り付けたり、物体を大量生成してニヤニヤしたりもするはずです。 僕がこれ…

Flex2でツールの制作

マップエディタを作ろうとしています。 どうやらこのようなツールの制作というものはFlexの得意分野のようです。 適当に用意されているコンポーネントを配置してやるだけでステキデザインに仕上がります。 (Flashにもコンポーネントが準備されていましたが…

マップスクロールを汎用的に使えるようになったから

なんとか思っていたような(ちょっと違うけど)自分用ライブラリに入れるマップスクロールのクラスができました。 実際に試してみますと、なかなか色々使えそうです。 マップ表示のバリエーションが増えて、夢がかないそうです。 マップスクロールのシステム…

マップスクロールが汎用的に使えるように

ちょっと頭が混乱しましたが、 自分用ライブラリに入れるマップスクロールのクラスの形ができつつあります。 まだ TypeError: Error #1010: 条件は未定義であり、プロパティがありません。 と怒られるので完成まではあと少し時間がかかりそうです。 しかしこ…

マップスクロールを汎用的に使えるように

昨日、 「ライブラリに入れてしまおうか。でもfor文が。」 と書きましたが、 実際のところどのような構成にしましょうか。 今日はその部分を少しだけ考えてみます。 やっぱりシンプルにMapManagerクラスひとつだけですべてを行うには問題がありそうです。 別…

結局制作を再開、そしてマップスクロール

夏特有の怪奇現象パソコン上でAS3での開発ができるようにしました。 あまりブランクをあけると今まで書いたコードが他人のものになってしまいますから(感覚的に)。 AS2ではとりあえず完成していたマップスクロールですが、 今までこのコードをAS3に移植し…

Flex2SDKでコンパイル

以前"HelloWorld"と表示させるスクリプトをコンパイルしただけでしたが、 今回はこれまでFlexBuilder2でちょくちょく弄ってきたスクリプトを 「-config.xml」でオプションを設定してコンパイルしてみました。 まあ当然といえば当然なのですが、無事コンパイ…

FlexSDK2に切り替え

ついに恐れていた体験版の有効期限が切れてしまいましたので、 これからは適当なテキストエディタとコマンドプロンプトで開発を進めねばなりません。 FlexBuilder2日本語版の発売を待つばかりです。(結局買うことにした。) コンパイルの方法とかも自分でい…

addChild()のアヤシサ

AS3から描画の基本が「addChild()」となりましたが、 このメソッド、使い方によってはアヤシイ動きをします。 基本は var stageSp:Sprite = new Sprite(); var objSp:Sprite = new Sprite(); stageSp.addChild(objSp);みたいな感じで描画します。 しかし var…

FlexBuilder2体験版の使用期間

FlexBuilder2の体験版を使用できる期間が後2日となってしまいました。 ヤ バ イ 。