ワープ
投稿者 : ネスカ(YahooBB220063240073.bbtec.net)
- 2004/09/09(Thu) 20:11
No.7061
|
|
|
|
|
はじめまして ネスカといいます 前、アップロードセンターであるオブジェクトに主人公(?)が触れたら同じページ内の別のオブジェクトのところに瞬間移動するというのがありました。 ゲームを作り始めたんですが、そのサンプルが急に必要になって、探したのですがなかなか見つかりませんでした。分かる人は教えてください。お願いします
|
Re: ワープ
投稿者 : ごま太郎(i220-99-130-22.s02.a001.ap.plala.or.jp)
- 2004/09/09(Thu) 22:02
No.7068
|
|
|
|
//主人公.tonyu while(1) { //四方八方に動くプログラム update(); }
//ワープ.tonyu while(1) { if (crashTo($主人公)) { $主人公.x=□; $主人公.y=□; } update(); }
「別のオブジェクト」のところに移動させたい場合、直接座標を指示する方法(x=500;y=500てな感じ)と、「移動させたいオブジェクト」の座標で指示を出す方法があります。後者のほうが楽かな。 $主人公.x=$別のオブジェクト.x; $主人公.y=$別のオブジェクト.y; という風に指示してやればいいってことです。これは後者タイプ。
ワープ用オブジェクトに接触(crashToメソッド)すると、主人公のx座標とy座標に値を代入。それによって、主人公がワープするという原理です。
宣伝ですが、今週末に私のHPでRPG製作講座(迷路タイプ)をアップしますので、そこでもワープ・移動・RPG関係etc...を詳しく解説します。興味がおありでしたらどうぞ。
|
Re: ワープ
投稿者 : ごま太郎(i220-99-130-22.s02.a001.ap.plala.or.jp)
- 2004/09/09(Thu) 22:03
No.7069
|
|
|
|
「移動させたいオブジェクト」→「移動先のオブジェクト」に修正。
|
Re: ワープ
投稿者 : ネスカ(YahooBB220063240073.bbtec.net)
- 2004/09/10(Fri) 19:15
No.7078
|
|
|
|
スイマセン。。。 できませんでした(;∀;) 主人公のオブジェクトは$Uという名前で、 主人公が触れると移動先のオブジェクトに移動するオブジェクトを$Sという名前で、 移動先のオブジェクトの名前は$Aとしてもう一度考えてもらってよろしいでしょうか? 度々すいません・・・・
extends SpriteChar; while (1) { if (getkey(39) && $map.getAt(x+16,y)!=$pat_sa+0 x+=5; if (getkey(37) && $map.getAt(x-16,y)!=$pat_sa+0 x-=5; if (getkey(40) && $map.getAt(x,y+16)!=$pat_sa+0 y+=5; if (getkey(38) && $map.getAt(x,y-16)!=$pat_sa+0 y-=5; $map.scrollTo(x-$screenWidth/2,y-$screenHeight/2); // スクロールする update(); }
↑一応主人公のプログラムです
|
Re: ワープ
投稿者 : ごま太郎(i220-109-100-182.s02.a001.ap.plala.or.jp)
- 2004/09/10(Fri) 19:51
No.7079
|
|
|
|
//$U.tonyu extends SpriteChar; while (1) { if (getkey(39) && $map.getAt(x+16,y)!=$pat_sa+0 x+=5; if (getkey(37) && $map.getAt(x-16,y)!=$pat_sa+0 x-=5; if (getkey(40) && $map.getAt(x,y+16)!=$pat_sa+0 y+=5; if (getkey(38) && $map.getAt(x,y-16)!=$pat_sa+0 y-=5; $map.scrollTo(x-$screenWidth/2,y-$screenHeight/2); update(); }
//$S.tonyu extends SpriteChar; while(1) { if (crashTo($U)) { $U.x=$A.x; $U.y=$A.x; } update(); }
//$A.tonyu extends SpriteChar; while(1) { update(); } これでいいはず。注意点は、文法エラーが出たらcrashTo($U)の書き方が違うかもしれないのでHELPでチェックしてください。その他、コピペしたら全角スペースが混じって文法エラーが出るかもしれません。 基本的に、わたしゃろくすっぽ命令を覚えてないのでつづりと決まりごとにはめっぽう弱いんです^^; 動作チェックしてないのであしからず。
|
Re: ワープ
投稿者 : ネスカ(YahooBB220063240073.bbtec.net)
- 2004/09/10(Fri) 19:59
No.7081
|
|
|
|
|