以前はネットに情報があったはずなのに見つからないので記事にしておきます。



▼ 敵と主人公の座標を取得
■変数操作+: CSelf15[敵キャラX座標] = このマップイベント の 画面X座標
■変数操作+: CSelf16[敵キャラY座標] = このマップイベント の 画面Y座標
■変数操作+: CSelf17[主人公X座標] = 主人公 の 画面X座標
■変数操作+: CSelf18[主人公Y座標] = 主人公 の 画面Y座標
▼ X、Yそれぞれの座標の差を求めます
■変数操作: CSelf25[X座標の差] = CSelf17[主人公X座標] - CSelf15[敵キャラX座標]
■変数操作: CSelf26[Y座標の差] = CSelf18[主人公Y座標] - CSelf16[敵キャラY座標]
▼ X、Yの座標の差を代入して角度を求めます
■変数操作: CSelf27[弾発射角度] = 角度[x10]←傾き X: CSelf25[X座標の差] Y: CSelf26[Y座標の差]
▼ cosと角度でX方向の移動量を求めます
■変数操作: CSelf28[cos] = cos[x1000]←角度[x10] = CSelf27[弾発射角度] + 0
▼ sinと角度でY方向の移動量を求めます
■変数操作: CSelf29[sin] = sin[x1000]←角度[x10] = CSelf27[弾発射角度] + 0
▼ 移動量が大きすぎるので除算して小さくします。
▼ 大きな値で割るほどスピードが遅くなります。
■変数操作: CSelf29[sin] /= 160 + 0
■変数操作: CSelf28[cos] /= 160 + 0
▼ 敵の座標に弾を表示、グラフィックは各自用意してください。
■ピクチャ表示:300 [中心]ファイル「Picture/ファイアー.png」 X:CSelf15[敵キャラX座標] Y:CSelf16[敵キャラY座標] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 65% / カラー R[100] G[100] B[100]
▼ 回数が多いほど、弾の飛距離が伸びます。
■回数付きループ [ 30 ]回
|▼ 弾の移動を行います。相対にチェック入れるのを忘れないでください。
|■ピクチャ移動:300 相対X:CSelf28[cos] Y:CSelf29[sin] / 1(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 65% / カラー R[100] G[100] B[100]
|■ウェイト:1 フレーム
|■
◇ループここまで◇◇
▼ 弾を消します。
■ピクチャ消去:300 / 0(0)フレーム



敵キャライベントを用意して、並列実行で今作ったコモンを呼び出します。



このようになれば、成功です。当たり判定は別途作成する必要があります。

完成したコモンはここからダウンロードできます。

コモンを使用した際のクレジットへの記載は任意です。記載される場合はDot蜥蜴でお願いします。