#一部サブルーチン製作協力:風島聖二氏 アニメ会話: Talk Args(1) 固定 $(Args(2));$(Args(3)) Suspend Return アニメ自動会話: AutoTalk Args(1) 固定 $(Args(3));$(Args(2)) Suspend Return 戦闘アニメ_レストリクトロック攻撃: Center X(目標地点) Y(目標地点) Call レストリクトロック_表示 Redraw Return レストリクトロック_表示: PlaySound Thunder.wav For i = 1 to 9 ClearPicture 0 0 479 479 Wait Start PaintPicture ("Anime\MapBeam\EFFECT_360Beam(Pink)0" & i & ".bmp") - - 192 192 透過 Refresh Wait Until 1 Next PlaySound Noise.wav For j = 1 to 3 For i = 1 to 3 ClearPicture 0 0 479 479 Wait Start PaintPicture ("Anime\Map\EFFECT_MapAura(Pink)0" & i & ".bmp") - - 192 192 透過 Refresh Wait Until 1 Next Next Return 戦闘アニメ_シューティングモード変形: PaintPicture NANOHA_RaisingHeart(W).bmp - - 128 128 Refresh Wait 1 For i = 1 to 5 ClearPicture 0 0 479 479 PaintPicture ("NANOHA_RaisingHeart(WtoS_" & i & ").bmp") - - 128 128 Refresh Wait 0.5 Next ClearPicture 0 0 479 479 PaintPicture NANOHA_RaisingHeart(S).bmp - - 128 128 透過 Refresh Wait 2 Return 戦闘アニメ_レイジングハート_チャージ: PlaySound Charge(2).wav For j = 1 to 10 For i = 1 to 2 ClearPicture 0 0 479 479 PaintPicture ("NANOHA_RaisingHeart(S" & i & ").bmp") - - 128 128 Refresh Wait 0.5 Next Next Wait 1 Return 足元巨大魔法陣_なのは: Center 高町なのは Local nanoha_unit Set nanoha_unit Info(ユニット,高町なのは,グラフィック) ChangeUnitBitmap 高町なのは -.bmp For i = 1 to 6 Wait Start ClearPicture PaintPicture Anime\Magic\EFFECT_MagicEmblem(Pink)01.bmp - - 128 128 透過 右回転 (60 * i) PaintPicture nanoha_unit - - 32 32 透過 Refresh Wait Until 1.6 Next ChangeUnitBitmap 高町なのは - Return 足元巨大魔法陣_フェイト: Center フェイト=テスタロッサ Local fate_unit Set fate_unit Info(ユニット,フェイト=テスタロッサ,グラフィック) ChangeUnitBitmap フェイト=テスタロッサ -.bmp For i = 1 to 6 Wait Start ClearPicture PaintPicture Anime\Magic\EFFECT_MagicEmblem(Yellow)01.bmp - - 128 128 透過 右回転 (60 * i) PaintPicture fate_unit - - 32 32 透過 Refresh Wait Until 1.6 Next ChangeUnitBitmap フェイト=テスタロッサ - Return 戦闘アニメ_サンダーフォール_スフィア: PlaySound BeamSaber.wav PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 32 192 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 32 258 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 128 160 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 128 288 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 288 160 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 288 288 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 384 192 64 64 保持 透過 PaintPicture Anime\Beam\EFFECT_LBeam(Yellow)04.bmp 384 258 64 64 保持 透過 Refresh Return 戦闘アニメ_サンダーフォール_発動: PlaySound Sword.wav Wait 10 PlaySound Storm.wav WhiteOut 30 Return 戦闘アニメ_ファランクスシフト攻撃: Local ANG i Set ANG _GetAngle(UID) PlaySound BeamSaber.wav Wait Start PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 176 176 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 160 198 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 160 219 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 176 240 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 240 176 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 256 198 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 256 219 64 64 透過 保持 右回転 ANG PaintPicture Anime\Beam\EFFECT_MBeam(Yellow)03.bmp 240 240 64 64 透過 保持 右回転 ANG Refresh Wait Until 10 For i = 1 to 5 Wait Start PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 176 176 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 240 240 64 64 透過 右回転 ANG Refresh Wait Until 0.5 Wait Start PlaySound Beam.wav ClearPicture 0 0 479 479 PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 176 176 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 240 240 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 160 198 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 256 219 64 64 透過 右回転 ANG Refresh Wait Until 0.5 Wait Start PlaySound Beam.wav ClearPicture 0 0 479 479 PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 160 198 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 256 198 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 160 219 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 256 198 64 64 透過 右回転 ANG Refresh Wait Until 0.5 Wait Start PlaySound Beam.wav ClearPicture 0 0 479 479 PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 160 219 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 256 198 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 176 240 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)04.bmp 240 176 64 64 透過 右回転 ANG Refresh Wait Until 0.5 Wait Start PlaySound Beam.wav ClearPicture 0 0 479 479 PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 176 240 64 64 透過 右回転 ANG PaintPicture Anime\Beam\EFFECT_Beam(Yellow)05.bmp 240 176 64 64 透過 右回転 ANG Refresh Wait Until 0.5 Next Redraw Return 戦闘アニメ_サンダーレイジODJ攻撃: Center X(目標地点) Y(目標地点) Call 戦闘アニメ_サンダーレイジODJ_表示 PlaySound Explode(Far).wav Redraw Return 戦闘アニメ_サンダーレイジODJ_表示: For j = 1 to 5 PlaySound Thunder.wav For i = 1 to 20 Wait Start Color RGB(11.7 * i,8.7 * i,3.5 * i) Line 0 0 479 479 BF Refresh Wait Until 0.02 Next Redraw Wait 1 Next Return 戦闘アニメ_レヴァンティン_リロード: PlaySound TransForm.wav For i = 0 to 6 If i = 6 Then PlaySound Inori.wav Endif ClearPicture 0 0 479 479 PaintPicture ("NANOHA_Laevatain(Reload" & i & ").bmp") - - 128 128 Refresh Wait 1 Next Wait 1 Return 戦闘アニメ_シュツルムファルケンカットイン: PlaySound Sword.wav For i = 1 to 10 Wait Start ClearPicture 0 0 479 479 PaintPicture Anime\Back\EFFECT_Back(Pink)01.bmp - - 480 480 PaintPicture Cutin\NANOHA_Signum(SturmFalken)(Cutin).gif (-1 * 48 * (10 - i)) 0 480 360 透過 Refresh Wait Until 0.01 Next Wait 5 Return For i = 1 to 10 ClearPicture 0 0 479 479 Wait Start If i = 4 Then PlaySound Sword.wav Endif PaintPicture Anime\Back\EFFECT_Back(Pink)01.bmp - - 480 480 PaintPicture Cutin\NANOHA_Signum(SturmFalken)(Cutin).gif (-1 * 24 * (10 - i)) 0 480 320 Refresh Wait Until 0.1 Next Return 戦闘アニメ_シュツルムファルケンチャージ: PlaySound Charge(2).wav For i = 1 to 19 Wait Start ClearPicture 0 0 479 479 If i < 10 Then PaintPicture ("NANOHA_Laevatein(SturmFalke)(Charge)0" & i & ".bmp") - - 128 128 Else PaintPicture ("NANOHA_Laevatein(SturmFalke)(Charge)" & i & ".bmp") - - 128 128 Endif Refresh Wait Until 0.5 Next Wait 1 Return 戦闘アニメ_同時バスタービームライフル攻撃: # 引数1 武器画像 # 引数2 画像サイズ # 引数3 ビームの色 # 引数4 効果音 #ビームに関する変数 Local BMP_FILE Local G_S Local C_X Local C_Y #手持ち武器に関する変数 Local BMP_FILE2 Local G_S2 Local C_X2 Local C_Y2 # 複数引き渡し型引数関連 Local P_NUM Local WF_ALL Local GS_ALL Local NUM Local i Local ANG Local X_F Local Y_F Local LN Local B_C Local W_X Local W_Y Local DRCT Local UID Local CL Local CL_ALL Local SIZE_ALL Local NUM Local P_NUM Set UID _GetName(対象ユニットID,_GetIDFromArgs()) _UnSetBattleAnimeValue _CenteringCheck UID Set CL_ALL _GetOptParamsFromArgs("ビーム色") Set P_NUM (CountPartner() + 1) Set WF_ALL _GetOptParamsFromArgs("画像ファイル") Set GS_ALL _GetOptParamsFromArgs("画像サイズ") For i = 1 To P_NUM Set UID[i] Partner(i - 1) # ビームに関する変数 Set C_X[i] WX(UID[i]) Set C_Y[i] WY(UID[i]) # 手持ち武器に関する変数 Set C_X2[i] WX(UID[i]) Set C_Y2[i] WY(UID[i]) # 対象ユニットと相手ユニットの角度 Set ANG[i] _GetAngle(UID[i]) Set X_F[i] _GetCircumference(ANG[i],X) Set Y_F[i] _GetCircumference(ANG[i],Y) Set DRCT[i] _FlipVertical(ANG[i]) # 手持ち武器画像 If (WF_ALL != "") Then Set BMP_FILE[i] _GetOptParamsValue(WF_ALL,i) Else Set BMP_FILE[i] _GetBmpFromArgs() EndIf # 画像サイズ If (GS_ALL != "") Then Set G_S[i] _GetOptParamsValue(GS_ALL,i) Else Set G_S[i] _GetPicSizeFromArgs() EndIf # ビーム色 If (CL_ALL != "") Then Set CL[i] _GetName("(Pink)",_GetBeamColor(_GetOptParamsValue(CL_ALL,i))) Else Set CL[i] _GetName("(Pink)",_GetBeamColor(_GetColorFromArgs())) EndIf # 手持ち武器位置 Set W_X[i] (C_X2[i] + 16 - (G_S[i] \ 2)) Set W_Y[i] (C_Y2[i] + 16 - (G_S[i] \ 2)) Next Set LN 3 Wait Start PlaySound Charge.wav For i = 1 To 6 ClearPicture Switch i Case 4 _SelectSound "Beam.wav" _GetWavFromArgs() Set LN -8 Case 5 Set LN -4 Case 6 If ((Abs(X(UID) - _Get_X(相手ユニットID)) + Abs(Y(UID) - _Get_Y(相手ユニットID))) < 3) Then Skip EndIf EndSw For k = 1 To P_NUM Set NUM (P_NUM - k + 1) PaintPicture BMP_FILE[NUM] (W_X[NUM] + (X_F[NUM] * LN)) (W_Y[NUM] + (Y_F[NUM] * LN)) G_S[NUM] G_S[NUM] 透過 DRCT[NUM] 右回転 ANG[NUM] _ColorTime(1) PaintPicture ("Beam\EFFECT_LBeam" & CL[NUM] & "0" & i & ".bmp") ((C_X[NUM] - 16) + (X_F[NUM] * G_S[NUM] \ 2)) ((C_Y[NUM] - 16) + (Y_F[NUM] * G_S[NUM] \ 2)) 透過 右回転 ANG[NUM] _ColorTime(1) Next Refresh Wait Until (i * 0.8) Next ClearPicture Refresh Return 戦闘アニメ_同時大ビーム命中: 戦闘アニメ_同時バスタービームライフル命中: #ビームに関する変数 Local BMP_FILE Local G_S # 複数引き渡し型引数関連 Local P_NUM Local WF_ALL Local GS_ALL Local NUM Local i Local ANG Local UID Local CL Local CL_ALL Local NUM Local P_NUM _CenteringCheck 相手ユニットID Local C_X Set C_X (WX(相手ユニットID) - 16) Local C_Y Set C_Y (WY(相手ユニットID) - 16) Set P_NUM (CountPartner() + 1) Set CL_ALL _GetOptParamsFromArgs("ビーム色") For i = 1 To P_NUM # ビーム色 If (CL_ALL != "") Then Set CL[i] _GetName("(Pink)",_GetBeamColor(_GetOptParamsValue(CL_ALL,i))) Else Set CL[i] _GetName("(Pink)",_GetBeamColor(_GetColorFromArgs())) EndIf # 角度 If (_SearchOptionFromArgs("ランダム方向") = "") Then Set ANG[i] _GetAngle(Partner((i - 1))) Else Set ANG[i] Random(360) EndIf Next Wait Start For i = 1 To 5 ClearPicture Switch i Case 2 _SelectSound "Explode(Small).wav" _GetWavFromArgs() For j = 1 To P_NUM Set NUM (P_NUM - j + 1) PaintPicture ("Beam\EFFECT_BeamDroplet" & CL[NUM] & "01.bmp") (C_X + 8) (C_Y + 8) 48 48 右回転 ANG[NUM] 透過 _ColorTime(1) next Case 3 4 _SelectSound "Explode.wav" _GetWavFromArgs() For j = 1 To P_NUM Set NUM (P_NUM - j + 1) PaintPicture ("Beam\EFFECT_BeamDroplet" & CL[NUM] & "01.bmp") C_X C_Y 64 64 右回転 ANG[NUM] 透過 _ColorTime(1) next EndSw For j = 1 To P_NUM Set NUM (P_NUM - j + 1) PaintPicture ("Beam\EFFECT_LBeamHit" & CL[NUM] & "0" & i & ".bmp") C_X C_Y 右回転 ANG[NUM] 透過 _ColorTime(1) next Refresh Wait Until (i * 0.9) Next For i = 4 To 5 ClearPicture For j = 1 To P_NUM Set NUM (P_NUM - j + 1) PaintPicture ("Beam\EFFECT_MBeamHit" & CL[NUM] & "0" & i & ".bmp") C_X C_Y 右回転 ANG[NUM] 透過 _ColorTime(1) next Refresh Wait Until ((i + 2) * 0.7 + 0.9) Next For i = 4 To 6 ClearPicture For j = 1 To P_NUM Set NUM (P_NUM - j + 1) PaintPicture ("Beam\EFFECT_BeamHit" & CL[NUM] & "0" & i & ".bmp") C_X C_Y 右回転 ANG[NUM] 透過 _ColorTime(1) next Refresh Wait Until ((i + 4) * 0.7 + 1) Next ClearPicture Refresh Return