home > June 2008

crossdomainファイルの階層指定

June 26, 2008

フラッシュは、別サーバーから画像等を読込む際にはサーバーのルートにあるcrossdomain.xmlファイルを読みにいくんですが、階層を指定できるみたいです。

flashファイルに下記を記入する。
System.security.loadPolicyFile("http://www.sample.com/sample/crossdomain.xml");

そうするとsample以下のファイルに対してのみ指定できる。

あとは指定の階層にcrossdomain.xmlファイルをアップロードするだけです。


<?xml version="1.0" ?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" />
</cross-domain-policy>


Permalink | Comments (0)

CASAでグループロード

June 24, 2008

CASA Frameworkでグループを指定してグループ毎にロード設定をする方法。

import org.casaframework.load.media.MediaLoad;
import org.casaframework.load.LoadGroup;
import org.casaframework.load.base.BytesLoadInterface;
import org.casaframework.math.Percent;

var _LoadGroup_obj:LoadGroup;
_LoadGroup_obj = new LoadGroup();

var imageLoad: MediaLoad = new MediaLoad(_background_mc,tmp_url_str);
//イメージローダーにプッシュ
_LoadGroup_obj.addLoad(imageLoad);

//同様にプッシュ
imageLoad = new MediaLoad(_background_mc,tmp_url_str);
_LoadGroup_obj.addLoad(imageLoad);

//イメージローダーにプッシュ
_LoadGroup_obj.addLoad(imageLoad);

//ハンドラーの設定
_LoadGroup_obj.addEventObserver(_this_obj, LoadGroup.EVENT_LOAD_COMPLETE, "onGroupCompleteFunc");
_LoadGroup_obj.addEventObserver(_this_obj, LoadGroup.EVENT_LOAD_ERROR, "onGroupLoadErrorFunc");
_LoadGroup_obj.addEventObserver(_this_obj, LoadGroup.EVENT_LOAD_PERCENT, "onGroupLoadPercentFunc");
_LoadGroup_obj.start();

function onGroupCompleteFunc(sender:LoadGroup):Void {
 trace("Complete!");
}
function onGroupLoadErrorFunc(sender:LoadGroup,failedLoad:BytesLoadInterface):Void {
 trace("Error");
}

function onGroupLoadPercentFunc(sender:LoadGroup, progress:Percent):Void {
var per_num:Number = progress.getPercentage();
trace("My group is " + per_num + "% loaded.");//パーセント表示
}


Permalink | Comments (0)

Fuseで複数のパラメーターをつけて関数を実行する

June 15, 2008

Fuseで関数に、複数のパラメーターをつけて実行する時は
{scope:this, func:"Sample", args:[0,0,0], delay:2}
のように配列でいきます。

var fuse:Fuse = new Fuse();
fuse.autoClear = true;
fuse.push([
   {target: mc, _x:-370, seconds:1, ease:"easeOutExpo"},
  {target: mc2, _alpha: 0, seconds:1, ease:"easeOutQuad", delay:1},
  {scope:this, func:"Sample", args:[0,0,0], delay:2}
]);
fuse.start();

Permalink | Comments (0)

id

June 14, 2008

大量にボタンを生成する際によく使う設定


for(i = 1; i <= ∞ ; i++ ){
 sample["s_btn"+i].id = i;
 sample["s_btn"+i].onRelease = function(){
  Action(this.id);//演出
 };
}


Permalink | Comments (0)

setMask()

setMaskって複数のオブジェクトにかけれない。なのでマスクを多用するする場合は初めにきちんと設計しておかないとダメです。

【追記】 2010.3.8

AS3ではこれだけで大丈夫です。
mainmc.mask = sample;
※ mainmcにsample の形状でマスクをかける場合

解除する場合は
mainmc.mask = null;
でOK


Permalink | Comments (0)