トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     スピードを調整するには?
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
nayu1060
Åê¹ÆNo.21671
投稿日時: 2005-11-23 14:06
新米
居住地: 兵庫県
投稿: 3
使用環境:
WinXP,Flash MX2004
スピードを調整するには?
FLASHはじめたばかりの初心者です。

下のようなAction scriptを使って、画像をマウスの位置に合わせてスクロールするようにしていますが、これではマウスが中心点から離れるとスクロールスピードが速すぎて見にくいので、スピード調整したいのですがどのようにすれば良いでしょうか?

よろしくお願いいたします。




onClipEvent (enterFrame) {
center = _root.mark._x;
//マウスの位置を判断する中心点を設定
spd = _root._xmouse-center;
//中心点との距離によって移動スピードを変更

this._x += spd;
//移動
if (this._x>0) {
//右方向に見切れた時に元に戻す
this._x = -this._width/2;
}
if (this._x<-this._width/2) {
//左方向に見切れた時に元に戻す
this._x = 0;
}
}
ひろゆき
Åê¹ÆNo.21672
投稿日時: 2005-11-23 14:12
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: スピードを調整するには?
アカウント編集」で、使用環境は書いておきましょう。
プロフィール・使用環境記入のお願い

単純に、スピードを全体的に落としたいのであれば、
this._x += spd*0.5;
とか。


----------------
質問する際は、回答者に具体的な情報を与えてください。

nayu1060
Åê¹ÆNo.21975
投稿日時: 2005-12-8 12:32
新米
居住地: 兵庫県
投稿: 3
使用環境:
WinXP,Flash MX2004
Re: スピードを調整するには?
早速回答いただいていたので返事できなくてすいませんでした。。。。

もうひとつ教えていただきたいのですが、

現在のスクリプトだとページが表示された時点で、スクロールのスピードが一番速い状態で自動的に動き出してしまいます。

教えていただいたスピード調整で出来るだけ遅くしたのですが、
速さが気になるので

出来れば、指定の範囲(FLASHのところ)にマウスオーバー状態になったらスクロールし始めるように設定したいのですが。。。

そのようなやり方は出来るのでしょうか?
ひろゆき
Åê¹ÆNo.21976
投稿日時: 2005-12-8 12:43
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: スピードを調整するには?
引用:
そのようなやり方は出来るのでしょうか?

できると思いますが、Flashのバージョンによっては、
面倒なやり方をしなければならないかもしれません。

まずは...。
アカウント編集」で、使用環境は書いておきましょう
プロフィール・使用環境記入のお願い


----------------
質問する際は、回答者に具体的な情報を与えてください。

nayu1060
Åê¹ÆNo.22014
投稿日時: 2005-12-9 8:30
新米
居住地: 兵庫県
投稿: 3
使用環境:
WinXP,Flash MX2004
Re: スピードを調整するには?
バージョンによってやり方が変わってくるのですね。。

使用環境はWinXPで,Flash MX2004を使っています。
他には情報必要でしょうか?
ひろゆき
Åê¹ÆNo.22020
投稿日時: 2005-12-9 12:17
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: スピードを調整するには?
引用:
バージョンによってやり方が変わってくるのですね。。

リンク先の記事はお読みになっていらっしゃらないのでしょうか?

#スクロールするムービークリップが配置されている階層や
#そのインスタンス名などの情報も示される必要が出てくる場合もあると思いますが。


スクロールするムービークリップが _root に配置されていて、
そのインスタンス名が scroll_mc だと仮定します

引用:
出来れば、指定の範囲(FLASHのところ)にマウスオーバー状態になったらスクロールし始めるように設定したいのですが。。。

「指定の範囲(FLASHのところ)」がどこを指すのか不明ですが、
scroll_mc を指しているものだとと仮定します


スクリプトの意味を理解しないで、
使おうとしても、応用が利くはずもありません。

onClipEvent(enterFrame) は、理解されていますよね?

要は、何かにロールオーバーしたら、
ムービークリップの再生内容が機能し始めればすればいいわけです。

まずは、基礎的な学習をされることをお勧めします。
Flash ActionScript Helper: システムイベント(内部イベント)

[方法1]
scroll_mc のムービークリップアクションに
on (rollOver) {
	flag = true;
}
onClipEvent (enterFrame) {
	if (flag) {
		this.enabled = false;
		this.useHandCursor = false;
		center = _root.mark._x;
		spd = _root._xmouse - center;
		this._x += spd*0.1;
		if (this._x > 0) {
			this._x = - this._width/2;
		}
		if (this._x < - this._width/2) {
			this._x = 0;
		}
	}
}
と記述。#ただし、指マークが見えるかも。

[方法2]
scroll_mc のムービークリップアクションは削除して、
_root のフレームアクションとして、
scroll_mc.onRollOver = function() {
	this.onEnterFrame = function() {
		var center = _root.mark._x;
		var spd = _root._xmouse - center;
		this._x += spd*0.1;
		if (this._x > 0) {
			this._x = - this._width/2;
		}
		if (this._x < - this._width/2) {
			this._x = 0;
		}
	};
	delete this.onRollOver;
};
と記述。


----------------
質問する際は、回答者に具体的な情報を与えてください。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops