攻撃パターン - 魔法(拡散弾)の応用です。弾が壁に当たったら爆発のエフェクトを発生させます。
$Weapon_Myクラス(一部)
|
if (p=="fire"){
・・・中略
for (i=0;i<80;i++) {
tx=x; ty=y;
x+=vx; y+=vy;
if (f== 1) angle=angle(tx-x,ty-y)+180;
if (f==-1) angle=angle(tx-x,ty-y);
if ($map.getAt(x,y)>=$pat_block+20 && $map.getAt(x,y)
<=$pat_block+39) { //爆発エフェクトを発生
appear(new Weapon_My(x,y,"explode"));
die();
}
update();
}
}
if (p=="explode"){ //爆発の処理
ATC=4;
p=$pat_weapon+4;
f=0;
scaleX=1;
scaleY=1;
alpha=255;
for (i=0;i<15;i++){
scaleX+=0.3; //X方向に拡大
scaleY+=0.3; //Y方向に拡大
alpha-=3; //少しづつ透明にする
update();
}
}
|
弾が壁に着弾したときに爆発エフェクトを呼び出します。if ($map.getAt(x,y)>=・・・が発生の条件判定部です。if (p=="explode")以降が爆発の処理になります。とても簡単な処理で、呼び出された位置で画像を拡大するだけです。scaleX、scaleYの増加分の数値を大きくすると爆発の拡大が大きくなります。
|
|
|
|