環境
FLASH CS4→FLASH Player 10
ActionScript 3.0
※classはMC書き出し以外ほとんど使いません。
開発コード
「メルポメネー」(Muse/Melpomene)
策定目的
多目的再利用が可能なオブジェクティブのFLASHラッパ。
私的メモ
ExtensionMarker
→markerという名前のクラスを並べておく。
overMapに生成されるMC(MarkerClassライブラリ内のやつ)は下記仮想関数的なものを持っとく
function SetPoint( __x, __y ) : void;
function SetForceCol( colType ) : void;
function ClickEvent( param ) : void;
function ClickOutOfFocus() : void;
function Delete() : void;
function MakeSaveData() : XML;
フロー
root/MarkerSet( type ) : void を呼ぶ。
typeはアクションID。constructedレイヤの定数参照。
各マーカー配置に関連したイベントリスナーを登録。
すでに登録されている場合は既存のリスナーを削除して登録する。
登録予定の関数群はfunctionsレイヤーにある。
↓↓
リスナーが勝手にイベントを起こす。
基本的には
- MouseMoveでExtensionMarkerの位置追従
- MouseDownでマーカークラスを生成してoverMapに登録
- 生成時、マウスクリックで自身に対する判定を取ってウインドウを出すリスナーを登録
- 状況に応じてExtension系関数を読んで対処。
など。
※マーカーに対するMCは常にひとつであること。追加仕様はMCの中に作ること。
→セーブとロードの相互のやりやすさを考えての仕様。
セーブ&ロード仕様
データ形式はXML。
下記を拡張。
<SaveData>
//グローバル拡張要素
//各マーカー
<Marker type="タイプ">
<データs>
</データs>
</Marker>
</SaveData>
ロード:マーカーごとにデータ読み込んで、typeアトリビュートから種類を判別。
AddXXXMarkerXML関数(XXXはマーカータイプ)から生成する。
データはparseIntすること。
セーブ:マーカークラスに対し、MakeSaveData関数でセーブデータタグ(Markerタグ以下)を要求する。
連 携:連結してタイトルつけてPHPを呼び出して出力。入力の際はミッションIDで管理する。
こんごの拡張要素とか
最終更新:2010年05月29日 00:24