忍者ブログ

マヨナカの記録

雑貨やイラストの制作過程など。
 
画像・文章のすべての無断転載・転用・加工等禁止。
Copyright (c) 2010 マヨナカ工房

[PR]

2024/03/28(Thu)22:40

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

No.|CommentTrackback

AS3.0メモ その3

2011/06/06(Mon)00:25



脱出ゲームにありそうな仕掛けpart2

taiya.jpg








回転矢印の装置
3つの矢印を正しい位置に回すとネズミが描かれたトビラが開くっていうやつ。

■インスタンス名
矢印ボタン 左:yb1、真ん中:yb2、右:yb3
ネズミ nezu
戻るボタン G322

■スクリプト
ボタンそれぞれの変数
var a:uint=0; (yb1)
var b:uint=0; (yb2)
var c:uint=0; (yb3)

違うページに移動したら変数をリセット
G322.addEventListener(MouseEvent.CLICK,cl_G322);
function cl_G322(evt:MouseEvent):void{
    gotoAndPlay(32);
    a=0;
    b=0;
    c=0;
}


矢印ボタンを押したら
 
yb1.addEventListener(MouseEvent.CLICK,cl_yb);
function cl_yb(evt:MouseEvent):void{
    a++;
「++」は1ずつ足してくやつなので、ボタン1回押すごとに「a」に1ずつ追加される。
押した回数数えてる感じ。

    if(a>=8){

        a=0;
8回押すと変数を0にリセット
(8回で矢印が一回転するから)
    }
}

yb2.addEventListener(MouseEvent.CLICK,cl_yb2);
function cl_yb2(evt:MouseEvent):void{
    b++;
    if(b>=8){
        b=0;
    }
}

yb3.addEventListener(MouseEvent.CLICK,cl_yb3);
function cl_yb3(evt:MouseEvent):void{
    c++;
    if(c>=8){
        c=0;
    }
}

ネズミボタンを押したら
nezu.addEventListener(MouseEvent.CLICK,cl_nezu);
function cl_nezu(evt:MouseEvent):void{
    if(a==5&&b==2&&c==7){
正解の向きになるのに押さなきゃいけない回数をそれぞれ設定
        gotoAndPlay(38);
もしこの通りだったら38フレーム目に飛んでね。
    }
}





■矢印ボタンのアクションスクリプト
矢印はシンボルのタイムラインに色々します。

新規シンボル(ムービークリップ)

シンボルのタイムラインを編集↓
c7a848c6.jpg




それぞれのフレームに好きな角度に回転させたボタンを配置して
それぞれインスタンス名をつけておく。
stop();
y1.addEventListener(MouseEvent.CLICK,cl_y1);
function cl_y1(evt:MouseEvent):void{
    nextFrame();
クリックしたら次のフレームに行ってね。
}
最後のフレームだけ nextFrame();  gotoAndPlay(1);

これでメインタイムラインに戻ってステージにインスタンスを配置します。
押してみるとくるくる回っていくと思います。


面倒なやり方ですね!
ボタン押すたびに任意の角度に回転してっていうスクリプト書いた方がお手軽だと思いました。
作ってから気づいたうへー


拍手[0回]

PR

No.292|アニメーションとかComment(0)Trackback()

Comment

Comment Thanks★

Name

Title

Mail

URL



Pass Vodafone絵文字 i-mode絵文字 Ezweb絵文字 

Trackback

URL :