MTASCでFlash Lite 2のSharedObjectを使う
http://anond.hatelabo.jp/20070118224057
↑に「リスナーを設定する必要があります。」とあるのでhaXeの↓に
(インストールフォルダ)\std\flash\SharedObject.hx
↓を追加する
#if flash static function addListener(objectName:String, notifyFunction:Dynamic) :Void; static function removeListener(objectName:String):Void; #end
サンプルの内容は1でカウントアップ、3でカウントの表示。
でサンプル↓をSharedObjectHaxeRei.hxと名前をつけて保存。
import flash.MovieClip; import flash.SharedObject; import flash.Stage; import flash.Key; class SharedObjectHaxeRei { static function main () { var sor : SharedObjectHaxeRei = new SharedObjectHaxeRei (flash.Lib._root); } var Prefs : SharedObject; public function new (mc: MovieClip) { mc.createTextField ("tf", mc.getNextHighestDepth () , 0, 0, Stage.width, Stage.height); mc.tf.text = "SharedObjectHaxeRei\r"; SharedObject.addListener ("Prefs", loadCompletePrefs ); // 共有オブジェクトを作成することができる Prefs = SharedObject.getLocal ("Prefs"); //キーリスナーの指定 Key.addListener (this); } //キーアップイベントの処理 public function onKeyUp () : Void { switch (Key.getCode ()) { case 49 ://1 セーブ if (Prefs.getSize() == 0) { Prefs.data.count = 0; } else { Prefs.data.count++; } case 51 ://3 ロード if (Prefs.getSize() == 0) return; flash.Lib._root.tf.text = Prefs.data.count + "\r" + flash.Lib._root.tf.text; default : } } function loadCompletePrefs (mySO : SharedObject) { flash.Lib._root.tf.text = "call loadCompletePrefs: " + "\r" + flash.Lib._root.tf.text; } }
コンパイルするにはSharedObjectHaxeRei.hxmlを作成して↓を記述
# SharedObjectHaxeReiのコンパイル用 -swf SharedObjectHaxeRei.swf -swf-header 240:320:10 -swf-version 7 -main SharedObjectHaxeRei
上記を↓でコンパイルする。
haxe SharedObjectHaxeRei.hxml
・Flash Lite 2.x ActionScript Language Reference > ActionScript classes > SharedObject http://livedocs.macromedia.com/flashlite/2/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000749.html ・Flash Lite 2.x Action...
MTASCでFlash Lite 2のSharedObjectを使う http://anond.hatelabo.jp/20070118224057 ↑に「リスナーを設定する必要があります。」とあるのでhaxeの↓に (インストールフォルダ)\std\flash\SharedObject.hx ↓を追加...