※変数説明
MISSILEMAX ミサイルの数
smokeid.cnt 煙のパーティクルid PSPEED 煙のパーティクルの速度
;煙読み込み
PSPEED = 200
repeat MISSILEMAX ;ミサイルの数だけ煙用意
smoke = dir_cur + "\\Media\\models\\other\\smoke.png"
E3DCreateParticle 50, smoke, 512, 512, 2, smokeid.cnt
e3dsetparticleemitnum smokeid.cnt, 1
e3dsetparticlegravity smokeid.cnt, 0
e3dsetparticlelife smokeid.cnt, 0.5
e3dsetparticlevel0 smokeid.cnt, -PSPEED,-PSPEED,-PSPEED,PSPEED,PSPEED,PSPEED
loop
*main
(途中省略)
gosub*missile
repeat MISSILEMAX
E3DRenderParticle smokeid.cnt, chkfps1, scid1
loop
goto*main
*missile ;ミサイル
(途中省略↓パーティクル関連部分)
repeat MISSILEMAX
if missileflag(cnt) = 1 { ;現在飛行中のミサイルを探す
missiletime(cnt) = missiletime(cnt) - 1
E3DPosForward missile, 1800 ;ミサイル移動
E3DGetPos missile, subposx, subposy, subposz
E3DSetParticlePos smokeid, subposx, subposy, subposz
if missiletime(cnt)<1 {
missileflag(cnt) = 0 ;ミサイルの飛行可能時間終了でミサイルを消す。
}
}
loop
スクリプト上のパーティクル関連の文は、これだけです。
ちなみにミサイルは無誘導です。
>nikoさん
確かに動画載せてます。
この問題解決したら、また動画投稿しますw(雑談)