

No.2ベストアンサー
- 回答日時:
とりあえず,
幅1000px の画像を ムービークリップ に変換するわけですが,
このときの基準点に気を付けておきます。
基準点とはムービークリップなどの基準座標になる点です。
例えば,
ムービークリップのx座標を100にする。
=ムービークリップの基準点のx座標を100にする。
という意味になります。
「インスタンスの基準点」
http://homepage3.nifty.com/ginga-b/MX/inst_refpo …
このご質問の場合,基準点はどこにあっても良いのですが,
基準点の位置によってスクリプト(スクリプトの数値)が変わります。
どこにあっても良いのですが気を付けておなないとならないということです。
一応この回答では
幅1000px の画像をムーービークリップに変換するときに,
基準点は 「左上」 にしておいたとして書きます。
---シンボルに変換----------
基準点: ■□□
□□□
□□□
--------------------------
また,x座標についてしか考えないので,
「左中」 もしくは 「左下」 でもかまいません。
> _root.main._x -= 250;
と書かれていらっしゃるところから考えて,
ムービークリップには 「main」 というインスタンス名を付けていらっしゃるのですね。
そのインスタンス名はそのまま使うとします。
上で基準点を左上にした画像のムービークリップに,
「main」 というインスタンス名を付けます。
さて,スクリプトですが,
> スライドするように動かしたいと考えています。
と書かれていらっしゃる部分のプログラムを,
_root のタイムラインのフレームに用意しておきます。
また,動く範囲が良くわからなかったので,
ステージの範囲で動くというスクリプトにしています。
main が存在する _root の フレーム に書くスクリプト
------------------------------------
// 変数 zahyouX の初期値を設定 ※可変
zahyouX = 0;
// 変数 speed (動くスピード)の設定 ※可変
speed = 2/10;
//
// 1フレーム進む時間ごとに毎回実行
_root.main.onEnterFrame = function() {
// この(_root.main.の) x座標を zahyouX に近づける
this._x += (zahyouX-this._x)*speed;
};
------------------------------------
それで,
上で用意した変数 zahyouX の値をボタンによって変えてやると,
スライドするように動きます。
また,zahyouX の値に上限と下限を付ければ良いわけです。
「←」(左へ動かすボタン)のスクリプト
----------------------------------------
on (release) {
// とりあえず zahyouX の値を 250 減算してみる
_root.zahyouX -= 250;
// もし zahyouX がステージ幅-画像の幅-の値より小さければ
if (_root.zahyouX<Stage.width-_root.main._width) {
// zahyouX の値を ステージ幅-画像の幅 にする
_root.zahyouX = Stage.width-_root.main._width;
}
}
----------------------------------------
「→」(右へ動かすボタン)のスクリプト
----------------------------------------
on (release) {
// とりあえず zahyouX の値を 250 加算してみる
_root.zahyouX += 250;
// もし zahyouX が 0 より大きければ
if (_root.zahyouX>0) {
// zahyouX の値を 0 にする
_root.zahyouX = 0;
}
}
----------------------------------------
Flash のバージョンを書かれていらっしゃいませんが,
上のようなスクリプトが使えるのは Flash MX 以降のバージョンです。
Flash 5 でも同様のことはできますが,
スクリプトを書く場所などが変わります。
No.1
- 回答日時:
Aという画像(ムービークリップ)を Bというボタンで左右にスライドさせる場合
var houkou = 1; ←(ボタン外で設定)
以下のスクリプトをBボタンに設定
on (release){
if(houkou == 1)
{
_root.A._x += 250;
}
else
{
_root.A._x -= 250;
}
if(_root.A._x >= 750 || _root.A._x <= -750)
{
houkou *= -1;
}
--------------------------------------------------------
houkou という変数を宣言して1を入れる
(注)
ボタン内で宣言すると、押すたびに向きがプラスになるので、
ボタン外のスクリプトで設定する。
houkouが1であれば、_root.A._xを+250、
houkouが1以外であれば、、_root.A._xを-250。
_root.A._xが750以上または750-以下になったら、
houkouに-1をかける。
---------------------------------------------------------
ちなみにボタンを押したときにボタン自身が動くようにする場合は、
_root.A._x を_xに変えて、ボタン自身に設定すれば大丈夫です。
自分も最近アクションスクリプトを始めたばかりなので、
自身の勉強も兼ねて丁寧に回答しました^^
下記のサイトで主に勉強しました。
http://www.geocities.jp/para_core/kouza/index.html
http://hakuhin.hp.infoseek.co.jp/main/as.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
potplayerについて質問です
-
FLASHの再生はできないのでしょ...
-
uwscでExcelに自動記入
-
PHPの変数をAS3に渡す方法
-
FLASHでゲームを作っていた人は...
-
この曲はなんでしょう?
-
laptop go2からの買い替え、lap...
-
スクリップト
-
私のコンピューター上のファイ...
-
arduino プログラムについて
-
chrome flash
-
フラッシュゲームアーカイブ2
-
ウェブサイトで Flash が事実上...
-
Flashコンテンツを使ったWebサイト
-
Flash Playerのサポートが終了
-
Form内のselectを連動させるに...
-
Flashをブロックしないで
-
ダウンロードしたデジブックはa...
-
ad or script について
-
Flashplayerの運用について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
四乗根を英語で言うと・・・
-
python ボタンを押すと複数の関...
-
else if文の順序を変えることに...
-
Pythonのtkinterについて
-
SNMPの標準MIBについて
-
PYTHONのtkinterについて
-
node* ってなんなのでしょうか?
-
pythonのグローバル変数
-
Flashvars getURLの書き方
-
2分木を中順でなぞりたいので...
-
線と点の当り判定
-
FLASHで20分のカウントダウンタ...
-
レーダーチャートの描画
-
ライブラリにある画像をaction ...
-
ランダムな動きのスピード制御...
-
ActionScriptで対象外の音まで...
-
ADに参加していないPCからADサ...
-
PythonでSetWindowPosを使うに...
-
HTMLからFLASHに変数を送り、内...
-
リンクでのエスケープシーケン...
おすすめ情報