07 «1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.» 09

ハルシオンシステムの気ままBlog

株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

 

【Unity】iTween使ってますよ? 

こんにちは!っと、坂内でっすよ。

リジェクト祭りの真っ最中です!
ルナダンiOS版、もうしばらくお待ちください!

そして、今週中にでもAndroid版ルナダンに最新バージョン入ります。
えっと、下層クリアの人のみ対象のアップデートですが・・・テヘ
あ、あと、スクロール系の速度上げました。

で、開発ネタ。

UnityでiTween使ってるんですが、ちょっと困ったことが・・・

「A地点にMoveTo」中に、B地点をタップでB地点に動かそうとした時。
今現在の「A地点にMoveTo」を一旦iTween.Stop()で止めたんですが、うまく止まらんのですよ・・・
①動き始め
iTween.MoveTo(gameObject,iTween.Hash("x",A地点,"time",5f,"oncomplete","止まる処理"
,"oncompletetarget",gameObject));

②動いてる途中(3秒目くらいとかに)
iTween.Stop();
iTween.MoveTo(gameObject,iTween.Hash("x",B地点,"time",2f));

ってやると、③を動き始めた途端、①のoncompleteの処理が動いてしまう(止まる処理が動く)。

で、よくわからんかったので、以下のようにしてみたら、期待していた動きになりました。(タブン)
②動いてる途中(3秒目くらいとかに)
iTween.Stop();
if(gameObject.GetComponent<iTween>()){
Destroy(gameObject.GetComponent<iTween>());
}
iTween.MoveTo(gameObject,iTween.Hash("x",B地点,"time",2f));

「iTween.Stop();」だけでは、だめなんす?ってか、これで本当にいいんす?
もうちょっと、試してみるっす!

ってことで、本日のお題は終わりんぐ!

アデュ~ノシ

そして追記:Twitterでnarudesign様より指摘がありましたので、追記しちゃいます!
iTweenの動作中、Stop()にてちゃんと止まります!こちらでも確認しました!
if(gameObject.GetComponent<iTween>()){
Destroy(gameObject.GetComponent<iTween>());
}
は、いらないようですね。
それと、Stop(対象のオブジェクト)の引数が入っていませんでした。
こちら引数無しの場合ですと、全てのGameObjectで動いているiTweenの動きが止まるようです!

ただし・・・・今触っているプログラムでは次のMoveTo中に変な動きをしてしまいます・・・これは調査が必要でっす!って話でした!
narudesign様ありがとーっす!
スポンサーサイト

Category: 開発日記(Unity)

tb 0 : cm 0   

コメント

コメントの投稿

Secret

トラックバック

トラックバックURL
→http://halcyonsystemblog.blog.fc2.com/tb.php/111-d317e1b5
この記事にトラックバックする(FC2ブログユーザー)