Local ANG G_S EXPAN
Local i j C_X C_Y W_X W_Y W_X2 W_Y2 X_F Y_F
Local B_C = _GetName("(White)",_G_BC_FA())
Local BMP_FILE
Local T_COL = _ColorTime()
C_X = WX(目標地点)
C_Y = WY(目標地点)
For i = 1 To 3
Set ANG (45 + Random(90))
Set W_X[i] C_X
Set W_Y[i] (C_Y + 8)
Set EXPAN[i] (1.2 - (i * 0.03))
Set G_S[i] 28
Set X_F[i] (_GetCircumference(ANG,X) * (i + 1))
Set Y_F[i] (_GetCircumference(ANG,Y) * (i + 1))
Switch Random(3)
Case 1
Set BMP_FILE[i] ("Smoke\EFFECT_SmokeA" & B_C & "0")
Case 2
Set BMP_FILE[i] ("Smoke\EFFECT_SmokeB" & B_C & "0")
Case 3
Set BMP_FILE[i] ("Smoke\EFFECT_SmokeC" & B_C & "0")
EndSw
Next
Wait Start
_SelectSound "-.wav" _GetWavFromArgs()
For i = 1 To 7
ClearPicture
For j = 1 To 3
Incr W_X[j] X_F[j]
Incr W_Y[j] Y_F[j]
Set G_S[j] (G_S[j] * EXPAN[j])
Set W_X2 (W_X[j] + (16 - (G_S[j] \ 2)))
Set W_Y2 (W_Y[j] + (16 - (G_S[j] \ 2)))
Switch i
Case 1 2 3 4
PaintPicture (BMP_FILE[j] & "1.bmp") W_X2 W_Y2 G_S[j] G_S[j] 透過 T_COL
Case 5
PaintPicture (BMP_FILE[j] & "2.bmp") W_X2 W_Y2 G_S[j] G_S[j] 透過 T_COL
Case 6
PaintPicture (BMP_FILE[j] & "3.bmp") W_X2 W_Y2 G_S[j] G_S[j] 透過 T_COL
Case 7
PaintPicture (BMP_FILE[j] & "4.bmp") W_X2 W_Y2 G_S[j] G_S[j] 透過 T_COL
EndSw
Next
Refresh
Wait Until (0.6 * i)
Next
Local i j
Local ANG = _GetAngle(Random(5), 0, 3, 5)
Local C_X = (WX(相手ユニットID) - 16)
Local C_Y = (WY(相手ユニットID) - 16)
Local B_C = _GN("(Blue)",_G_BC_FA())
_SelectSound "MachineGun.wav" _GetWavFromArgs()
For j = 1 To 3
Wait Start
For i = 1 To 6
_PaintCutin_KZ _SetBMPNum(("ShootAnime\EFFECT_ChainGunHit" & B_C),i) ANG C_X C_Y
Wait Until (i * 0.3)
Next
Next
ClearPicture
Refresh
Return
戦闘アニメ_EDF4_上空レールガン命中:
_CenteringCheck 相手ユニットID
Local i j
Local ANG = _GetAngle(Random(5), 0, 3, 5)
Local C_X = (WX(相手ユニットID) - 16)
Local C_Y = (WY(相手ユニットID) - 16)
Local B_C = _GN("(Blue)",_G_BC_FA())
Wait Start
For i = 1 To 6
If (i = 3) Then
_SelectSound "Explode.wav" _GetWavFromArgs()
EndIf
_PaintCutin_KZ _SetBMPNum(("ShootAnime\EFFECT_RailGunHit" & B_C),i) ANG C_X C_Y
Wait Until (i * 0.7)
Next
Local UID = _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck UID
Local C_X = WX(UID)
Local C_Y = WY(UID)
Local G_S = 32
Local W_X = (C_X + 16 - (G_S \ 2))
Local W_Y = (C_Y + 16 - (G_S \ 2))
Local LN = 2
Local ANG = _GetAngle(UID)
Local X_F = _GetCircumference(ANG,X)
Local Y_F = _GetCircumference(ANG,Y)
Local DRCT = _FlipVertical(ANG)
Local T_COL1 = _ColorTime(1)
Local L_i L_Colors L_X1 L_Y1 L_X2 L_Y2 L_LineColor
If ((L_Distance > 0) And (L_Distance < 3)) Then
Incr L_i
L_TargetPilots[L_i] = PilotID()
If L_i = 3 Then
Break
EndIf
EndIf
Next
# 最後の締めは使用者
L_TargetPilots[L_i + 1] = L_MainID
# カスタム歌詞がある場合
If Count(EDF4変数_讃歌歌詞) > 0 Then
L_i = 0
ForEach L_lrc In EDF4変数_讃歌歌詞
If LLength(EDF4変数_讃歌歌詞[L_lrc]) = 4 Then
Incr L_i
L_Lyrics[L_i] = EDF4変数_讃歌歌詞[L_lrc]
EndIf
Next
L_LyricCount = L_i
EndIf
# カスタム歌詞がないか、または内容が無効の場合
If L_LyricCount = 0 Then
L_LyricCount = 2
L_Lyrics[1] = List("青い地球を守るため","EDFの出動だ","煌めく勝利の稲光","宇宙人ども撃滅だ")
L_Lyrics[2] = List("緑の地球が危ないぞ","EDFの出動だ","地球を守護する戦士達","宇宙人どもやっつけろ")
EndIf
L_Lrc = L_Lyrics[Random(L_LyricCount)]
# メッセージ表示の実行
For L_i = 1 To 4
AutoTalk L_TargetPilots[(L_i - 1) Mod 4 + 1]
20;$(LIndex(L_Lrc, L_i))
Suspend
Next