Local i
Local j
Local ANG
Local C_X
Local C_Y
Local R_X
Local R_Y
Local CNT
Local BOW
_CenteringCheck 相手ユニットID
Set BOW 1
Set C_X (WX(相手ユニットID) - 8)
Set C_Y (WY(相手ユニットID) - 8)
Set CNT _GetName(4,_GetNumberFromArgs())
If (CNT > 8) Then
Set CNT 8
EndIf
Set CNT (CNT * 2)
Set ANG _GetAngle(_GetName(対象ユニットID,_GetIDFromArgs() ))
Wait Start
For i = 1 To CNT
ClearPicture
Switch i
Case 1
########1
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[1] Random(16)
Set R_Y[1] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[1]) (C_Y + R_Y[1]) 透過 右回転 ANG _ColorTime()
Case 2
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[1]) (C_Y + R_Y[1]) 透過 右回転 ANG _ColorTime()
Case 3
########1
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[1]) (C_Y + R_Y[1]) 透過 上下反転 右回転 ANG _ColorTime()
########2
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[2] Random(16)
Set R_Y[2] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[2]) (C_Y + R_Y[2]) 透過 右回転 ANG _ColorTime()
Case 4
########1
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[1]) (C_Y + R_Y[1]) 透過 右回転 ANG _ColorTime()
########2
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[2]) (C_Y + R_Y[2]) 透過 右回転 ANG _ColorTime()
Case 5
########2
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[2]) (C_Y + R_Y[2]) 透過 上下反転 右回転 ANG _ColorTime()
########3
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[3] Random(16)
Set R_Y[3] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[3]) (C_Y + R_Y[3]) 透過 右回転 ANG _ColorTime()
Case 6
########2
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[2]) (C_Y + R_Y[2]) 透過 右回転 ANG _ColorTime()
########3
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[3]) (C_Y + R_Y[3]) 透過 右回転 ANG _ColorTime()
Case 7
########3
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[3]) (C_Y + R_Y[3]) 透過 上下反転 右回転 ANG _ColorTime()
########4
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[4] Random(16)
Set R_Y[4] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[4]) (C_Y + R_Y[4]) 透過 右回転 ANG _ColorTime()
Case 8
########3
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[3]) (C_Y + R_Y[3]) 透過 右回転 ANG _ColorTime()
########4
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[4]) (C_Y + R_Y[4]) 透過 右回転 ANG _ColorTime()
Case 9
########4
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[4]) (C_Y + R_Y[4]) 透過 上下反転 右回転 ANG _ColorTime()
########5
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[5] Random(16)
Set R_Y[5] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[5]) (C_Y + R_Y[5]) 透過 右回転 ANG _ColorTime()
Case 10
########4
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[4]) (C_Y + R_Y[4]) 透過 右回転 ANG _ColorTime()
########5
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[5]) (C_Y + R_Y[5]) 透過 右回転 ANG _ColorTime()
Case 11
########5
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[5]) (C_Y + R_Y[5]) 透過 上下反転 右回転 ANG _ColorTime()
########6
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[6] Random(16)
Set R_Y[6] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[6]) (C_Y + R_Y[6]) 透過 右回転 ANG _ColorTime()
Case 12
########5
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[5]) (C_Y + R_Y[5]) 透過 右回転 ANG _ColorTime()
########6
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[6]) (C_Y + R_Y[6]) 透過 右回転 ANG _ColorTime()
Case 13
########6
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[6]) (C_Y + R_Y[6]) 透過 上下反転 右回転 ANG _ColorTime()
########7
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[7] Random(16)
Set R_Y[7] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[7]) (C_Y + R_Y[7]) 透過 右回転 ANG _ColorTime()
Case 14
########6
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[6]) (C_Y + R_Y[6]) 透過 右回転 ANG _ColorTime()
########7
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[7]) (C_Y + R_Y[7]) 透過 右回転 ANG _ColorTime()
Case 15
########7
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[7]) (C_Y + R_Y[7]) 透過 上下反転 右回転 ANG _ColorTime()
########8
_SelectSound "Stab.wav" _GetWavFromArgs()
Set R_X[8] Random(16)
Set R_Y[8] Random(16)
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[8]) (C_Y + R_Y[8]) 透過 右回転 ANG _ColorTime()
Case 16
########7
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[7]) (C_Y + R_Y[7]) 透過 右回転 ANG _ColorTime()
########8
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[8]) (C_Y + R_Y[8]) 透過 右回転 ANG _ColorTime()
EndSw
Refresh
Wait Until (i * 0.4)
Next
For i = 1 To 2
ClearPicture
Switch i
Case 1
########8
PaintPicture "Bullet\EFFECT_Arrow03.bmp" (C_X + R_X[(CNT / 2)]) (C_Y + R_Y[(CNT / 2)]) 透過 上下反転 右回転 ANG _ColorTime()
Case 2
########8
PaintPicture "Bullet\EFFECT_Arrow02.bmp" (C_X + R_X[(CNT / 2)]) (C_Y + R_Y[(CNT / 2)]) 透過 右回転 ANG _ColorTime()
EndSw
Refresh
Wait Until (i * 0.6)
Next
Return
戦闘アニメ_クリティカル大刺突命中:
Local i
Local ANG
Local C_X
Local C_Y
Local X_F
Local Y_F
Local BMP_FILE
Local BMP_FILE2
Local HIT_FILE
Local LN
Local UID
Set UID _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck 相手ユニットID
Set C_X WX(相手ユニットID)
Set C_Y WY(相手ユニットID)
Set ANG _GetAngle(UID)
Set X_F _GetCircumference(ANG,X)
Set Y_F _GetCircumference(ANG,Y)
Set BMP_FILE _GetBMPName(相手ユニットID)
Set BMP_FILE2 _GetTileName(相手ユニットID)
Incr C_X -2
Incr C_Y -2
If (X(_GetName(対象ユニットID,_GetIDFromArgs())) >= X(相手ユニットID)) Then
Set DRCT ""
Else
Set DRCT 左右反転
EndIf
For i = 1 To 8
ClearPicture
If (BMP_FILE2 != "") Then
PaintPicture BMP_FILE2 C_X C_Y _ColorTime()
EndIf
Switch i
Case 1
Set HIT_FILE Hit\EFFECT_StrongSlashHit01.bmp
Case 2
Set LN 8
Set HIT_FILE Hit\EFFECT_StrongSlashHit01.bmp
Case 3
Set HIT_FILE Hit\EFFECT_StrongSlashHit02.bmp
Case 4
Set LN 12
Set HIT_FILE Hit\EFFECT_StrongSlashHit02.bmp
Case 5
Set HIT_FILE Hit\EFFECT_StrongSlashHit03.bmp
Case 6
Set LN 14
Set HIT_FILE Hit\EFFECT_StrongSlashHit03.bmp
Case 7
Set HIT_FILE Hit\EFFECT_StrongSlashHit04.bmp
Case 8
Set LN 7
Set HIT_FILE Hit\EFFECT_StrongSlashHit04.bmp
EndSw
PaintPicture BMP_FILE (C_X + (X_F * LN)) (C_Y + (Y_F * LN)) 透過 _ColorTime()
PaintPicture HIT_FILE (C_X - 8) (C_Y - 8) 右回転 (ANG + 90) 透過 _ColorTime()
_SelectSound_HR "Slash.wav" "Saber.wav" _GetWavFromArgs()
Refresh
Wait Until (i * 0.5)
Next
If (BMP_FILE2 = "") Then
ChangeUnitBitmap 相手ユニットID 非表示解除
EndIf
ClearPicture
Refresh
Return
ClearPicture
Refresh
Return
戦闘アニメ_打ち上げ命中:
Local i
Local BMP_FILE
Local BMP_FILE2
Local X_F
Local Y_F
Local C_X
Local C_Y
Local UID
Set UID _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck 相手ユニットID
Set C_X WX(相手ユニットID)
Set C_Y WY(相手ユニットID)
Set BMP_FILE _GetBMPName(相手ユニットID)
Set BMP_FILE2 _GetTileName(相手ユニットID)
Set X_F _GetCircumference(90,X)
Set Y_F _GetCircumference(90,Y)
Wait Start
_SelectSound "Cannon.wav" _GetWavFromArgs()
If (BMP_FILE2 = "") Then
ChangeUnitBitmap 相手ユニットID 非表示
EndIf
For i = 1 To 4
ClearPicture
If (BMP_FILE2 != "") Then
PaintPicture BMP_FILE2 C_X C_Y _ColorTime()
EndIf
Switch i
Case 1
PaintPicture BMP_FILE C_X C_Y 透過 _ColorTime()
PaintPicture "Explode\EFFECT_Explode(Shock)01.bmp" (C_X + 4) (C_Y + 4) 24 24 透過 右回転 90 _ColorTime(1)
Case 2
PaintPicture BMP_FILE (C_X + (X_F * 14)) (C_Y + (Y_F * 14)) 透過 _ColorTime()
PaintPicture "Explode\EFFECT_Explode(Shock)01.bmp" (C_X - 8) (C_Y - 8) 48 48 透過 右回転 90 _ColorTime(1)
Case 3
PaintPicture BMP_FILE (C_X + (X_F * 21)) (C_Y + (Y_F * 21)) 透過 _ColorTime()
Case 4
PaintPicture BMP_FILE (C_X + (X_F * 25)) (C_Y + (Y_F * 25)) 透過 _ColorTime()
EndSw
Refresh
Wait Until (i * 0.7)
Next
If (BMP_FILE2 = "") Then
ChangeUnitBitmap 相手ユニットID 非表示解除
EndIf
ClearPicture
Refresh
Return
戦闘アニメ_叩き潰し命中:
Local i
Local BMP_FILE
Local BMP_FILE2
Local X_F
Local Y_F
Local C_X
Local C_Y
Local UID
Set UID _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck 相手ユニットID
Set C_X WX(相手ユニットID)
Set C_Y WY(相手ユニットID)
Set BMP_FILE _GetBMPName(相手ユニットID)
Set BMP_FILE2 _GetTileName(相手ユニットID)
Set X_F _GetCircumference(180,X)
Set Y_F _GetCircumference(180,Y)
Wait Start
_SelectSound "Cannon.wav" _GetWavFromArgs()
If (BMP_FILE2 = "") Then
ChangeUnitBitmap 相手ユニットID 非表示
EndIf
For i = 1 To 4
ClearPicture
If (BMP_FILE2 != "") Then
PaintPicture BMP_FILE2 C_X C_Y _ColorTime()
EndIf
Switch i
Case 1
PaintPicture BMP_FILE C_X C_Y 透過 _ColorTime()
PaintPicture "Explode\EFFECT_Explode(Shock)01.bmp" (C_X + 4) (C_Y + 4) 24 24 透過 右回転 180 _ColorTime(1)
Case 2
PaintPicture BMP_FILE (C_X + (X_F * 14)) (C_Y + (Y_F * 14)) 透過 _ColorTime()
PaintPicture "Explode\EFFECT_Explode(Shock)01.bmp" (C_X - 8) (C_Y - 8) 48 48 透過 右回転 180 _ColorTime(1)
Case 3
PaintPicture BMP_FILE (C_X + (X_F * 21)) (C_Y + (Y_F * 21)) 透過 _ColorTime()
Case 4
PaintPicture BMP_FILE (C_X + (X_F * 25)) (C_Y + (Y_F * 25)) 透過 _ColorTime()
EndSw
Refresh
Wait Until (i * 0.7)
Next
If (BMP_FILE2 = "") Then
ChangeUnitBitmap 相手ユニットID 非表示解除
EndIf
ClearPicture
Refresh
Return
If (戦闘アニメパターン != "") Then
If Skill(対象パイロット, 戦闘アニメパターン) Then
ClearSkill 対象パイロット 戦闘アニメパターン
EndIf
If Skill(相手パイロット, 戦闘アニメパターン) Then
ClearSkill 相手パイロット 戦闘アニメパターン
EndIf
EndIf
If 戦闘アニメパターン Then
If Skill(対象パイロット, 戦闘アニメパターン) Then
ClearSkill 対象パイロット 戦闘アニメパターン
EndIf
If Skill(相手パイロット, 戦闘アニメパターン) Then
ClearSkill 相手パイロット 戦闘アニメパターン
EndIf
EndIf