<画面端で反射する弾> 敵機、敵弾、自機弾を画面端で反射させる方法。 1.キャラクタのx座標で画面端判定を行う方法(縦STG用) ①移動([[直交座標]])パネルを用いる方法 <0.メイン[[タスク]]> ゲート:0 「移動(直交座標)X:速度X,Y:速度Y」 「制御([[タスク開始]])タスク番号:1,最初から開始on」 「制御([[タスク停止]])タスク番号:0,最初から開始on」 <1.ユーザータスク1> ゲート:1 「変数([[ローカル]])ローカルデータ:x座標,→,変数0」 (速度X>0の場合)--- 「変数([[条件分岐]])即値:画面の幅,<,変数0」 └「移動(直交座標)X:-速度X,Y:速度Y」 「ラベル(IN)番号:0」 (速度X<0の場合)--- 「変数(条件分岐)即値:0,>,変数0」 └「移動(直交座標)X:-速度X,Y:速度Y」 「ラベル(IN)番号:0」 --- │ 「ラベル([[OUT]])番号:0」 「制御(通過)フレーム数1」 ②移動([[極座標]])パネルを用いる方法 <0.メインタスク> ゲート:0 「移動(極座標)角度:Θ,速度:V」 「制御(タスク開始)タスク番号:1,最初から開始on」 「制御(タスク停止)タスク番号:0,最初から開始on」 <1.ユーザータスク1> ゲート:1 「変数(ローカル)ローカルデータ:x座標,→,変数0」 (Θ=0~+180の場合)--- 「変数(条件分岐)即値:0,>,変数0」 └「移動(極座標)角度:180-Θ,速度:V」 「ラベル(IN)番号:0」 │ 「変数(条件分岐)即値:画面の幅,<,変数0」 └「移動(極座標)角度:180-Θ,速度:V」 「ラベル(IN)番号:0」 (Θ=0~-180の場合)--- 「変数(条件分岐)即値:0,>,変数0」 └「移動(極座標)角度:Θ-180,速度:V」 「ラベル(IN)番号:0」 │ 「変数(条件分岐)即値:画面の幅,<,変数0」 └「移動(極座標)角度:Θ-180,速度:V」 「ラベル(IN)番号:0」 --- │ 「ラベル(OUT)番号:0」 「制御(通過)フレーム数1」 ③移動(速度)パネルを用いる方法 <0.メインタスク> ゲート:0 「移動(極座標)角度:Θ,速度:V」 「制御(タスク開始)タスク番号:1,最初から開始on」 「制御(タスク停止)タスク番号:0,最初から開始on」 <1.ユーザータスク1> ゲート:1 「変数(ローカル)ローカルデータ:x座標,→,変数0」 「変数(条件分岐)即値:0,>,変数0」 └「移動(速度)速度:-V×2,相対on」 「ラベル(IN)番号:0」 │ 「変数(条件分岐)即値:画面の幅,<,変数0」 └「移動(極座標)速度:-V×2,相対on」 「ラベル(IN)番号:0」 --- │ 「ラベル(OUT)番号:0」 「制御(通過)フレーム数1」 2.キャラクタのy座標で画面端判定を行う方法(横STG用) ①移動(直交座標)パネルを用いる方法 <0.メインタスク> ゲート:0 「移動(直交座標)X:速度X,Y:速度Y」 「制御(タスク開始)タスク番号:1,最初から開始on」 「制御(タスク停止)タスク番号:0,最初から開始on」 <1.ユーザータスク1> ゲート:1 「変数(ローカル)ローカルデータ:y座標,→,変数0」 (速度Y>0の場合)--- 「変数(条件分岐)即値:画面の高さ,<,変数0」 └「移動(直交座標)X:速度X,Y:-速度Y」 「ラベル(IN)番号:0」 (速度Y<0の場合)--- 「変数(条件分岐)即値:0,>,変数0」 └「移動(直交座標)X:速度X,Y:-速度Y」 「ラベル(IN)番号:0」 --- │ 「ラベル(OUT)番号:0」 「制御(通過)フレーム数1」 ②移動(極座標)パネルを用いる方法 <0.メインタスク> ゲート:0 「移動(極座標)角度:Θ,速度:V」 「制御(タスク開始)タスク番号:1,最初から開始on」 「制御(タスク停止)タスク番号:0,最初から開始on」 <1.ユーザータスク1> ゲート:1 「変数(ローカル)ローカルデータ:x座標,→,変数0」 「変数(条件分岐)即値:0,>,変数0」 └「移動(極座標)角度:-Θ,速度:V」 「ラベル(IN)番号:0」 │ 「変数(条件分岐)即値:画面の高さ,<,変数0」 └「移動(極座標)角度:-Θ,速度:V」 「ラベル(IN)番号:0」 │ 「ラベル(OUT)番号:0」 「制御(通過)フレーム数1」 ③移動(速度)パネルを用いる方法 <0.メインタスク> ゲート:0 「移動(極座標)角度:Θ,速度:V」 「制御(タスク開始)タスク番号:1,最初から開始on」 「制御(タスク停止)タスク番号:0,最初から開始on」 <1.ユーザータスク1> ゲート:1 「変数(ローカル)ローカルデータ:y座標,→,変数0」 「変数(条件分岐)即値:0,>,変数0」 └「移動(速度)速度:-V×2,相対on」 「ラベル(IN)番号:0」 │ 「変数(条件分岐)即値:画面の幅,<,変数0」 └「移動(極座標)速度:-V×2,相対on」 「ラベル(IN)番号:0」 --- │ 「ラベル(OUT)番号:0」 「制御(通過)フレーム数1」