SRC総合支援センター

ヘルプh| 連絡先

GSCトップ掲示板等身大映像・書籍データ掲示板


【6236】インクルード

名前
 ジム公
投稿日時
 - 2013年06月05日(水) 23時08分 -
設定
引用なし
パスワード
## 智光用
############################################

*使用 白華拳智光 精気を借りる:
If info("ユニット",UnitID(相手ユニット),"EN") < 50 Then
    Cancel
    SpecialPower 覚醒
    Talk システム
    ENが50未満の味方に使用することはできない。
    End
Endif
Exit

*使用後 白華拳智光 精気を借りる:
EN(白華拳智光) = EN(白華拳智光) + 50
SpecialPower 覚醒
Exit

################################################


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

戦闘アニメ_JT_ふにふに発動:

_CenteringCheck 相手ユニットID
Font 12pt
Local C_X = _Get_WX(相手ユニットID)
Local C_Y = _Get_WY(相手ユニットID)

Local i
Local BMP_FILE = _GetBMPName(相手ユニットID)
Local BMP_FILE2 = _GetTileName(相手ユニットID)
Local BMP_FILE3 BMP_FILE4
Local X_P Y_P A_X A_Y PTN
Local STR = ふにふに
Local S_S = TextWidth(STR)
Local T_COL = _ColorTime()

Switch Status(戦闘アニメ変数[ID])
Case 出撃
Case Else
 _UnSetBattleAnimeValue
EndSw

If ((戦闘アニメ変数[使用者座標X] != "") Or (戦闘アニメ変数[使用者座標X2] != "") Or (戦闘アニメ変数[非表示] != "")) Then
 Set A_X WX(戦闘アニメ変数[ID])
 Set A_Y WY(戦闘アニメ変数[ID])
 Set BMP_FILE3 _GetBMPName(戦闘アニメ変数[ID])
 Set BMP_FILE4 _GetTileName(戦闘アニメ変数[ID])
 ChangeUnitBitmap 戦闘アニメ変数[ID] 非表示
EndIf

_SelectSound "Jump.wav" _GetWavFromArgs()
ChangeUnitBitmap 相手ユニットID 非表示


Switch Random(4)
Case 1
 Set PTN 左上
Case 2
 Set PTN 上右
Case 3
 Set PTN 下左
Case 4
 Set PTN 右下
EndSw

Wait Start

For i = 1 To 6
  ClearPicture
  _PaintTile BMP_FILE2 C_X C_Y
  If (戦闘アニメ変数[使用者座標X] != "") Then
   _PaintTile BMP_FILE4 A_X A_Y
   PaintPicture BMP_FILE3 (A_X + 戦闘アニメ変数[使用者座標X]) (A_Y + 戦闘アニメ変数[使用者座標X]) 右回転 戦闘アニメ変数[使用者角度] 戦闘アニメ変数[使用者OPT1] 戦闘アニメ変数[使用者OPT2] 戦闘アニメ変数[使用者OPT3] 透過 T_COL
  ElseIf (戦闘アニメ変数[使用者座標X2] != "") Then
   _PaintTile BMP_FILE4 A_X A_Y
   PaintPicture BMP_FILE3 (C_X + 戦闘アニメ変数[使用者座標X2]) (C_Y + 戦闘アニメ変数[使用者座標X2]) 右回転 戦闘アニメ変数[使用者角度] 戦闘アニメ変数[使用者OPT1] 戦闘アニメ変数[使用者OPT2] 戦闘アニメ変数[使用者OPT3] 透過 T_COL
  EndIf
  If (戦闘アニメ変数[非表示] != "") Then
   _PaintTile BMP_FILE4 A_X A_Y
  EndIf
  Switch PTN
  Case 左上
   PaintPicture BMP_FILE C_X (C_Y - Y_P) 透過 左半分 T_COL
   PaintPicture BMP_FILE C_X C_Y 透過 右半分 T_COL
   Incr Y_P (13 - (i * 4))
  Case 上右
   PaintPicture BMP_FILE (C_X + X_P) C_Y 透過 上半分 T_COL
   PaintPicture BMP_FILE C_X C_Y 透過 下半分 T_COL
   Incr X_P (13 - (i * 4))
  Case 下左
   PaintPicture BMP_FILE C_X C_Y 透過 上半分 T_COL
   PaintPicture BMP_FILE (C_X + X_P) C_Y 透過 下半分 T_COL
   Incr X_P (13 - (i * 4))
  Case 右下
   PaintPicture BMP_FILE C_X C_Y 透過 左半分 T_COL
   PaintPicture BMP_FILE C_X (C_Y + Y_P) 透過 右半分 T_COL
   Incr Y_P (13 - (i * 4))
  EndSw
 Wait Until (i * 0.7)
 Refresh
Next

For i = 1 To 12
 Font RGB(i * 20,i * 20,i * 20)
 PaintString (C_X + 1 + (16 - (S_S \ 2))) (C_Y + 33) STR
 Font #000000
 PaintString (C_X + (16 - (S_S \ 2))) (C_Y + 32) STR
 Refresh

 Wait Until (i * 0.6)
Next

ChangeUnitBitmap 相手ユニットID 非表示解除

If ((戦闘アニメ変数[使用者座標X] != "") Or _
  (戦闘アニメ変数[使用者座標X2] != "") Or _
  (戦闘アニメ変数[非表示] != "")) Then
 ChangeUnitBitmap 戦闘アニメ変数[ID] 非表示解除
EndIf

ClearPicture
Refresh
#Wait Until 5
Return


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


戦闘アニメ_JT_三角とび攻撃:

# 引数1 画像名
# 引数2 画像サイズ
# 引数3 効果音
# 引数4 発光
# 引数5 残像
# 引数6 速度(速 or 遅)
# 引数7 有線 (実弾発射より太い)
# 引数8 弾を倒す方向を逆にする (逆)
# 引数9 左右反転
# 引数10 反動
# 引数11 相手ユニットID (相手から対象へ撃たせる)

Local UID = _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck UID
Local BMP_FILE2 = _GetTileName(UID)

Local posX posY
Local ANG B_ANG
Local DST
Local i
Local R_X R_Y
Local S_X S_Y

Local UID2 = _GetName(相手ユニットID)
If (UID = UID2) Then
    UID2 = _GetName(対象ユニットID)
Endif


If X(UID) > X(UID2) Then
    If Y(UID) > Y(UID2) Then
        Set R_X X(UID)
        Set R_Y (Y(UID) + 2)
        Set S_X WX(UID)
        Set S_Y (WY(UID) + 64)
    Else
        Set R_X (X(UID) + 2)
        Set R_Y Y(UID)
        Set S_X (WX(UID) + 64)
        Set S_Y WY(UID)
    Endif
Else
    If Y(UID) > Y(UID2) Then
        Set R_X (X(UID) - 2)
        Set R_Y Y(UID)
        Set S_X (WX(UID) - 64)
        Set S_Y WY(UID)
    Else
        Set R_X X(UID)
        Set R_Y (Y(UID) - 2)
        Set S_X WX(UID)
        Set S_Y (WY(UID) - 64)
    Endif
Endif


#発射物に関する変数
Local BMP_FILE = _GetBmpFromArgs()
Local G_S
Local C_X = WX(UID)
Local C_Y = WY(UID)
Local UDR

Local DRCT FL AFTER_IMAGE SLOW


 Set ANG _GetAngle(UID)
 Set G_S _GetPicSizeFromArgs()
 Set posX ((X(UID) - R_X) * 32)
 Set posY ((Y(UID) - R_Y) * 32)
 Set DST (Abs(X(UID) - R_X) _
     + Abs(Y(UID) - R_Y))

Set B_ANG _CheckAngleFix(ANG)
Set DRCT _FlipVertical(ANG)


Incr C_X (16 - (G_S \ 2))
Incr C_Y (16 - (G_S \ 2))

If (_IsLight() = 1) Then
 Set FL 1
Else
 Set FL ""
EndIf


#実弾の速度を遅くする?
If (_SearchOptionFromArgs("遅") != "") Then
 Set SLOW 1
 Set DST (2 * DST)
 Set W_T 0.5
ElseIf (_SearchOptionFromArgs("速") != "") Then
 Set SLOW 0
 Set W_T 0.4
Else
 Set W_T 0.6
 Set SLOW 0
EndIf


# 弾の傾き方向
If (_SearchOptionFromArgs("逆") != "") Then
 Incr B_ANG 90
Else
 Incr B_ANG -90
EndIf

If DRCT = 上下反転 Then
 Incr B_ANG 180
EndIf


# 左右反転
Set UDR ""
If (_SearchOptionFromArgs("左右反転") != "") Then
 Set UDR 左右反転
EndIf


Wait Reset

_SelectSound Cannon.wav _GetWavFromArgs()

For i = 1 To (DST + 1)
 ClearPicture
 _PaintTile BMP_FILE2 C_X C_Y
 PaintPicture BMP_FILE _
  (C_X - (posX / (DST + 2)) * i) (C_Y - (posY / (DST + 2)) * i) _
  G_S G_S 透過 _ColorTime(FL)
 Refresh
 Wait Until (W_T * i)
Next


PlaySound FightHit(1).wav

Refresh


 Set posX ((R_X - _Get_X(UID2)) * 32)
 Set posY ((R_Y - _Get_Y(UID2)) * 32)
 Set DST (Abs(R_X - _Get_X(UID2)) _
     + Abs(R_Y - _Get_Y(UID2)))

Incr S_X (16 - (G_S \ 2))
Incr S_Y (16 - (G_S \ 2))
Set i 0

Wait Reset

For i = 1 To (DST + 1)
 ClearPicture
 _PaintTile BMP_FILE2 C_X C_Y
 PaintPicture Anime\Hit\EFFECT_Hit01.bmp S_X S_Y 32 32 透過 _ColorTime(FL)

 PaintPicture BMP_FILE _
  (S_X - (posX / (DST + 2)) * i) (S_Y - (posY / (DST + 2)) * i) _
  G_S G_S 透過 右回転 B_ANG DRCT UDR _ColorTime(FL)
 Refresh
 Wait Until (W_T * i)
Next


#反動表示を行う?
If (_SearchOptionFromArgs("反動") != "") Then
 Call 戦闘アニメ_共通反動 UID
 Return
Else
 Return "Keep"
EndIf


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


戦闘アニメ_JT_二重連続描画準備:
戦闘アニメ_JT_二重連続描画攻撃:
戦闘アニメ_JT_二重連続描画命中:
戦闘アニメ_JT_二重連続描画使用:
戦闘アニメ_JT_二重連続描画クリティカル:
# 連番形式画像1 サイズ 連番形式画像2 サイズ 再生時間 回数
# ファイル1と2は同ペースで再生される。速度と枚数は1枚目から得られる情報に倣う
#
# 引数1 画像ファイル(連続表示)
# 引数2 画像サイズ
# 引数3 表示時間
# 引数4 表示位置
# 引数5 効果音
# 引数6 発光
# 引数7 保持
# 引数8 方向判定
# 引数9 ユニットID
#
# 引数 角度=(整数) 角度2(指定した角度に右周りで画像を回転させる。「発射」と組み合わせ可能)
# 引数 ランダム、ランダム2 (ランダム角度で画像を回転) or 発射(発射画像を相手方向に向けて描画)
# 引数 中間or手前or奥 対象と相手ユニットの中間三箇所のどれかでアニメを再生する
# 引数 MAP (MAP兵器用)
# 引数 上辺、上辺2、下辺、下辺2
# 引数 上下反転 上下反転2 左右反転 左右反転2

Local UID = _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck UID

Local GS_STR = _GetBoxSizeFromArgs(Args(2))
Local GS_STR2 = _GetBoxSizeFromArgs(Args(4))
Local G_SX = _GN(32,_SelectBmpSizeType(GS_STR,"X"))
Local G_SY = _GN(32,_SelectBmpSizeType(GS_STR,"Y"))
Local G_SX2 = _GN(32,_SelectBmpSizeType(GS_STR2,"X"))
Local G_SY2 = _GN(32,_SelectBmpSizeType(GS_STR2,"Y"))
Local h i j k
Local C_X = WX(UID)
LOcal C_Y = WY(UID)
Local G_X = (WX(UID) + 16)
LOcal G_Y = (WY(UID) + 16)
Local BMP_FILE = _GetBMPName(UID)
Local T_COL_F = _ColorTime(_IsLight())
Local W_T
Local B_FLG = _S_OPT_FA("背面")
Local DRCT = ""
Local DRCT2 = ""
Local POS = _GetDrawPosFromArgs()
Local T_COL = _ColorTime()

Local ANG = 0

# 画像反転判定

If ((X(対象ユニットID) < _Get_X(相手ユニットID)) And (_S_OPT_FA("方向判定") = "方向判定")) Then
 Set DRCT 左右反転
 Set DRCT2 左右反転
EndIf
Local UD_OPT = _S_OPT_FA("上下反転")
Local LR_OPT = _S_OPT_FA("左右反転")
If ((DRCT != "") And (LR_OPT != "")) Then
 Set DRCT ""
ElseIf (LR_OPT != "") Then
 Set DRCT LR_OPT
EndIf
Local UD_OPT2 = ""
If (_SearchOptionFromArgs("上下反転2") != "") Then
    UD_OPT2 = "上下反転"
EndIf
Local LR_OPT2 = ""
If (_SearchOptionFromArgs("左右反転2") != "") Then
    LR_OPT2 = "左右反転"
Endif
If ((DRCT2 != "") And (LR_OPT2 != "")) Then
 Set DRCT2 ""
ElseIf (LR_OPT != "") Then
 Set DRCT2 LR_OPT2
EndIf


If (_SearchOptionFromArgs("中間") != "") Then
 G_X = (((WX(対象ユニットID) + WX(相手ユニットID)) * 0.5) + 16)
 G_Y = (((WY(対象ユニットID) + WY(相手ユニットID)) * 0.5) + 16)
EndIf

If (_SearchOptionFromArgs("手前") != "") Then
 G_X = (((WX(相手ユニットID) - WX(対象ユニットID)) * 0.25) + WX(対象ユニットID) + 16)
 G_Y = (((WY(相手ユニットID) - WY(対象ユニットID)) * 0.25) + WY(対象ユニットID) + 16)
EndIf

If (_SearchOptionFromArgs("奥") != "") Then
 G_X = (((WX(相手ユニットID) - WX(対象ユニットID)) * 0.75) + WX(対象ユニットID) + 16)
 G_Y = (((WY(相手ユニットID) - WY(対象ユニットID)) * 0.75) + WY(対象ユニットID) + 16)
EndIf


Local G_X2 = G_X
LOcal G_Y2 = G_Y

Incr G_X (G_SX * -0.5)
Incr G_X2 (G_SX2 * -0.5)

Switch POS
Case "上辺"
 Incr G_Y -16
Case "下辺"
 Incr G_Y ((G_SY * -1) + 16)
Case Else
 Incr G_Y (G_SY * -0.5)
EndSw

If (_SearchOptionFromArgs("上辺2") != "") Then
 Incr G_Y2 -16
elseIf (_SearchOptionFromArgs("下辺2") != "") Then
 Incr G_Y2 ((G_SY2 * -1) + 16)
Else
 Incr G_Y2 (G_SY2 * -0.5)
EndIf

If (_SearchOptionFromArgs("MAP") != "") Then
 Center X(目標地点) Y(目標地点)
 G_X = -
 G_Y = -
 G_X2 = -
 G_Y2 = -
 Switch POS
    Case "上辺"
         G_Y = 224
    Case "下辺"
         G_Y = (256 - G_SY)
 EndSw
 If (_SearchOptionFromArgs("上辺2") != "") Then
     G_Y2 = 224
 elseIf (_SearchOptionFromArgs("下辺2") != "") Then
     G_Y2 = (256 - G_SY)
 EndIf
EndIf

# 角度設定

If (_SearchOptionFromArgs("発射") != "") Then
 ANG = _GetAngle(対象ユニットID)
EndIf

Local ANG2 = ANG

ANG = ANG + _GetOptValueFromArgs("角度")
ANG2 = ANG2 + _GetOptValueFromArgs("角度2")

If (DRCT = "左右反転") Then
    ANG = ANG * -1
    ANG2 = ANG2 * -1
EndIf


# 先に二枚目ファイル画像情報取得
_GBA_GetBmpPatternInfo _G_APTN_FA(Args(3)) _GetName(_GetWavFromArgs(),_GetOptParamsFromArgs("連続効果音"))
# 2枚目の情報を保存
Local _GBA_P_NAME2 = _GBA_P_NAME
Local _GBA_P_STR2 = _GBA_P_STR
Local _GBA_P_END2 = _GBA_P_END
Local _GBA_P_TYPE2 = _GBA_P_TYPE
Local _GBA_P_FRC2 = _GBA_P_FRC
Local _GBA_P_TTL2 = _GBA_P_TTL

# 一枚目情報取得
_GBA_GetBmpPatternInfo _G_APTN_FA(Args(1)) _GetName(_GetWavFromArgs(),_GetOptParamsFromArgs("連続効果音"))

# 描画数を大きいほうに合わせる
Local _GBA_P_TTL3 = _GBA_P_TTL
If _GBA_P_TTL < _GBA_P_TTL2 Then
    Set _GBA_P_TTL3 _GBA_P_TTL2
Endif

Set W_T (Args(5) / _GBA_P_TTL3)

#_GetNumberFromArgs(Args(4))

For j = 1 To _GetNumberFromArgs(Args(6))

If (_SearchOptionFromArgs("ランダム") != "") Then
 ANG = random(360)
EndIf
If (_SearchOptionFromArgs("ランダム2") != "") Then
 ANG2 = random(360)
EndIf

Set h 0
Set k 0

Wait Start
    For i = 1 To _GBA_P_TTL3
    
    if i > _GBA_P_TTL Then
    Else
        Incr h 1
    Endif
    
    if i > _GBA_P_TTL2 Then
    Else
        Incr k 1
    Endif
    
     _CheckPlaySound _GBA_P_WAV[i]
     ClearPicture
     If (B_FLG = "背面") Then
      PaintPicture _SetBmpNum2(_GBA_P_NAME2,(_GBA_P_STR2 + ((k - 1) * _GBA_P_FRC2)),_GBA_P_TYPE2) _
             G_X2 G_Y2 G_SX2 G_SY2 DRCT2 透過 T_COL_F UD_OPT2 LR_OPT2 右回転 ANG2
      PaintPicture _SetBmpNum2(_GBA_P_NAME,(_GBA_P_STR + ((h - 1) * _GBA_P_FRC)),_GBA_P_TYPE) _
             G_X G_Y G_SX G_SY DRCT 透過 T_COL_F UD_OPT LR_OPT 右回転 ANG
      PaintPicture BMP_FILE C_X C_Y 32 32 透過 T_COL
     Else
      PaintPicture _SetBmpNum2(_GBA_P_NAME2,(_GBA_P_STR2 + ((k - 1) * _GBA_P_FRC2)),_GBA_P_TYPE2) _
             G_X2 G_Y2 G_SX2 G_SY2 DRCT2 透過 T_COL_F UD_OPT2 LR_OPT2 右回転 ANG2
      PaintPicture _SetBmpNum2(_GBA_P_NAME,(_GBA_P_STR + ((h - 1) * _GBA_P_FRC)),_GBA_P_TYPE) _
             G_X G_Y G_SX G_SY DRCT 透過 T_COL_F UD_OPT LR_OPT 右回転 ANG
     EndIf
     Refresh
     Wait Until (i * W_T)
    Next
Next

_GBA_UnSetBmpPattern


If (_S_OPT_FA("保持") = "保持") Then
 Return "Keep"
Else
 Return
EndIf


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


戦闘アニメ_JT_バックジャンプ準備:
戦闘アニメ_JT_バックジャンプ攻撃:
戦闘アニメ_JT_バックジャンプ命中:
# 他引数は「ジャンプ」に準じる
# 武器画像指定可能 (ファイル名、サイズ、二刀流)
# 引数 垂直 で垂直ジャンプ 正 で前方ジャンプ
# 引数 速 遅
# 引数 上下反転
# 引数 回転 or 昇龍
# 引数 旋回音
# 引数 アッパー or 振り下ろし
# 引数 小移動 (x方向への移動量が半分になる)
# 引数 高

Local UID = _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck UID
Local C_X = WX(UID)
Local C_Y = WY(UID)
Local i L_NUM
Local BMP_FILE = _GetBMPName(UID)
Local BMP_FILE2 = _GetTileName(UID)
Local BMP_FILE3
Local WP_FILE = _GetBmpFromArgs()
Local WP_FILE2
Local G_S = _GetPicSizeFromArgs()
Local X_P Y_P
Local ANG = _GetAngle(UID)
Local TYPE = Args(1)
Local X_F
Local Y_F
Local DRCT DRCT2 DRCT3 DRCT4 DRCT5 DRCT6 RV RV2 RV3
Local W_T
Local UDR
Local FJ
Local R_S
Local UPE

_UnSetBattleAnimeValue

Set X_P (16 - (G_S \ 2))
Set Y_P (32 - G_S)

 Set L_NUM 5
 Set X_F _GetCircumference(ANG,X)
 Set Y_F 1

If (X(UID) < _Get_X(相手ユニットID)) Then
 Set DRCT 左右反転
 Set DRCT2 左右反転
 Set DRCT3 左右反転
 Set DRCT4 ""
 Set DRCT5 ""
 Set DRCT6 ""
 Set RV -1
 Set RV2 -1
 Set RV3 -1
 Set ANG 270
Else
 Set DRCT ""
 Set DRCT2 ""
 Set DRCT3 ""
 Set DRCT4 左右反転
 Set DRCT5 左右反転
 Set DRCT6 左右反転
 Set RV 1
 Set RV2 1
 Set RV3 1
 Set ANG 90
EndIf

If (WP_FILE != "") Then
Else
 Set WP_FILE -.bmp
EndIf

If (_SearchOptionFromArgs("二刀流") != "") Then
 Set WP_FILE2 WP_FILE
Else
 Set WP_FILE2 -.bmp
EndIf

If (_SearchOptionFromArgs("垂直") != "") Then
 Set X_F 0
EndIf

Set W_T 1
If (_SearchOptionFromArgs("速") != "") Then
 Set W_T 0.5
ElseIf (_SearchOptionFromArgs("遅") != "") Then
 Set W_T 1.5
EndIf

Set UDR ""
If (_SearchOptionFromArgs("上下反転") != "") Then
 Set UDR 上下反転
EndIf

# 方向判定
Set FJ 1
If (_SearchOptionFromArgs("正") != "") Then
 Set FJ -1
EndIf

If (_SearchOptionFromArgs("小移動") != "") Then
 FJ = (FJ * 0.5)
EndIf

If (_SearchOptionFromArgs("高") != "") Then
 Y_F = (Y_F * 2)
EndIf

If (_SearchOptionFromArgs("回転") != "") Then
 If DRCT2 = 左右反転 Then
      Set DRCT2 ""
      Set DRCT3 ""
      Set DRCT5 左右反転
   Set DRCT6 左右反転
   Set RV2 1
   Set RV3 1
 Else
      Set DRCT2 左右反転
      Set DRCT3 左右反転
      Set DRCT5 ""
      Set DRCT6 ""
      Set RV2 -1
   Set RV3 -1
 EndIf
EndIf

If (_SearchOptionFromArgs("昇龍") != "") Then
 If DRCT3 = 左右反転 Then
      Set DRCT3 ""
      Set DRCT6 左右反転
   Set RV3 1
 Else
      Set DRCT3 左右反転
      Set DRCT6 ""
      Set RV3 -1
 EndIf
EndIf

# アッパー・振り下ろしエフェクト指定
Set BMP_FILE3 "-"
Set UPE ""
If (_SearchOptionFromArgs("アッパー") != "") Then
 Set BMP_FILE3 "Attack\EFFECT_Swing0"
 Set UPE 上下反転
ElseIf (_SearchOptionFromArgs("振り下ろし") != "") Then
 Set BMP_FILE3 "Attack\EFFECT_Swing0"
EndIf

Wait Start

ChangeUnitBitmap UID 非表示

For i = 1 To L_NUM
 ClearPicture
 _PaintTile BMP_FILE2 C_X C_Y

 Switch i
 Case 1
   PaintPicture BMP_FILE (C_X + (X_F * 12 * FJ)) C_Y 透過 DRCT2 UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * 12 * FJ) - (16 * RV2) + X_P) (C_Y + Y_P) G_S G_S 透過 DRCT2 UDR _ColorTime()
   PaintPicture WP_FILE2 (C_X + (X_F * 12 * FJ) + (16 * RV2) + X_P) (C_Y + Y_P) G_S G_S 透過 DRCT5 UDR _ColorTime()
   PaintPicture (BMP_FILE3 & "1.bmp") (C_X + (X_F * 12 * FJ)) C_Y 透過 DRCT UPE _ColorTime()
 Case 2
   PaintPicture BMP_FILE (C_X + (X_F * 8 * FJ)) (C_Y + (Y_F * -4)) 透過 DRCT UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * 8 * FJ) - (16 * RV) + X_P) (C_Y + Y_P + (Y_F * -4)) G_S G_S 透過 DRCT UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * 8 * FJ) + (16 * RV) + X_P) (C_Y + Y_P + (Y_F * -4)) G_S G_S 透過 DRCT4 UDR _ColorTime()
   PaintPicture (BMP_FILE3 & "2.bmp") (C_X + (X_F * 8 * FJ)) (C_Y + (Y_F * -4)) 透過 DRCT UPE _ColorTime()
 Case 3
  _SelectSound "Swing.wav" _GetWavFromArgs()
   PaintPicture BMP_FILE (C_X + (X_F * 4 * FJ)) (C_Y + (Y_F * -12)) 透過 DRCT2 UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * 4 * FJ) - (16 * RV2) + X_P) (C_Y + Y_P + (Y_F * -12)) G_S G_S 透過 DRCT2 UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * 4 * FJ) + (16 * RV2) + X_P) (C_Y + Y_P + (Y_F * -12)) G_S G_S 透過 DRCT5 UDR _ColorTime()
   PaintPicture (BMP_FILE3 & "3.bmp") (C_X + (X_F * 4 * FJ)) (C_Y + (Y_F * -12)) 透過 DRCT UPE _ColorTime()
 Case 4
   PaintPicture BMP_FILE C_X (C_Y + (Y_F * -16)) 透過 DRCT UDR _ColorTime()
   PaintPicture WP_FILE (C_X - (16 * RV) + X_P) (C_Y + Y_P + (Y_F * -16)) G_S G_S 透過 DRCT UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (16 * RV) + X_P) (C_Y + Y_P + (Y_F * -16)) G_S G_S 透過 DRCT4 UDR _ColorTime()
   PaintPicture (BMP_FILE3 & "4.bmp") C_X (C_Y + (Y_F * -16)) 透過 DRCT UPE _ColorTime()
 Case 5
   PaintPicture BMP_FILE (C_X + (X_F * -8 * FJ)) (C_Y + (Y_F * -8)) 透過 DRCT3 UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * -8 * FJ) - (16 * RV3) + X_P) (C_Y + Y_P + (Y_F * -8)) G_S G_S 透過 DRCT3 UDR _ColorTime()
   PaintPicture WP_FILE (C_X + (X_F * -8 * FJ) + (16 * RV3) + X_P) (C_Y + Y_P + (Y_F * -8)) G_S G_S 透過 DRCT6 UDR _ColorTime()
   PaintPicture (BMP_FILE3 & "4.bmp") (C_X + (X_F * -8 * FJ)) (C_Y + (Y_F * -8)) 透過 DRCT UPE _ColorTime()
 EndSw
 Refresh
 
    Incr R_S 1
 
    If R_S = 1 Then
         If (_SearchOptionFromArgs("旋回音") != "") Then
             _SelectSound "Swing.wav" _GetWavFromArgs()
             Set R_S -1
         EndIf
    EndIf

 Wait Until (i * 0.9 * W_T)
Next
Wait Until (((L_NUM * 0.9) + 0.4) * W_T)

 _SetAnimeData_UnitPoint (X_F * 8) (Y_F * 8) 0 DRCT "" "" UID

ChangeUnitBitmap UID 非表示解除

Return "Keep"


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


戦闘アニメ_JT_実弾連なり準備:
戦闘アニメ_JT_実弾連なり攻撃:
戦闘アニメ_JT_実弾連なり命中:
# 引数1 画像名
# 引数2 画像サイズ
# 引数3 効果音
# 引数4 発光
# 引数5 保持
# 引数6 速度(速 or 遅)
# 引数8 角度固定 (相手位置による弾の回転を行わない)
# 引数9 左右反転
# 引数11 相手ユニットID (相手から対象へ撃たせる)

Local UID = _GetName(対象ユニットID,_GetIDFromArgs())
_CenteringCheck UID

Local posX posY
Local ANG B_ANG
Local DST
Local i

Local UID2 = _GetName(相手ユニットID)
If (UID = UID2) Then
    UID2 = _GetName(対象ユニットID)
Endif


#発射物に関する変数
Local BMP_FILE = _GetBmpFromArgs()
Local G_S
Local C_X = WX(UID)
Local C_Y = WY(UID)
Local UDR

Local DRCT FL SLOW
Local W_T

If ((IsNumeric(Args(1)) = 1) And (IsNumeric(Args(2)) = 1)) Then
 Set ANG _GetAngle(X(UID),Y(UID),Args(1),Args(2))
 Set G_S _GetPicSizeFromArgs(Args(3),Args(4),Args(5),Args(6),Args(7),Args(8))
 Set posX ((X(UID) - Args(1)) * 32)
 Set posY ((Y(UID) - Args(2)) * 32)
 Set DST (Abs(X(UID) - Args(1)) + Abs(Y(UID) - Args(2)))
Else
 Set ANG _GetAngle(UID)
 Set G_S _GetPicSizeFromArgs()
 Set posX ((X(UID) - _Get_X(UID2)) * 32)
 Set posY ((Y(UID) - _Get_Y(UID2)) * 32)
 Set DST (Abs(X(UID) - _Get_X(UID2)) _
     + Abs(Y(UID) - _Get_Y(UID2)))
EndIf
Set B_ANG _CheckAngleFix(ANG)
Set DRCT _FlipVertical(ANG)


Incr C_X (16 - (G_S \ 2))
Incr C_Y (16 - (G_S \ 2))

If (_IsLight() = 1) Then
 Set FL 1
Else
 Set FL ""
EndIf


#実弾の速度を遅くする?
If (_SearchOptionFromArgs("遅") != "") Then
 Set SLOW 1
 Set DST (2 * DST)
 Set W_T 0.5
ElseIf (_SearchOptionFromArgs("速") != "") Then
 Set SLOW 0
 Set W_T 0.4
Else
 Set W_T 0.6
 Set SLOW 0
EndIf


# 弾の傾き変更
If (_SearchOptionFromArgs("角度固定") != "") Then
 Set B_ANG 0
EndIf

If DRCT = 上下反転 Then
 Incr B_ANG 180
EndIf


# 左右反転
Set UDR ""
If (_SearchOptionFromArgs("左右反転") != "") Then
 Set UDR 左右反転
EndIf


Wait Reset

_SelectSound Missile.wav _GetWavFromArgs()


For i = 1 To (DST + 1)

  If (SLOW = 0 And i > 1) Then
   PaintPicture BMP_FILE _
    (C_X - (posX / (DST + 2)) * (i - 1)) (C_Y - (posY / (DST + 2)) * (i - 1 ) ) _
    G_S G_S 透過 セピア 右回転 B_ANG DRCT UDR _ColorTime(FL)
  EndIf

 PaintPicture BMP_FILE _
  (C_X - (posX / (DST + 2)) * i) (C_Y - (posY / (DST + 2)) * i) _
  G_S G_S 透過 右回転 B_ANG DRCT UDR _ColorTime(FL)
 Refresh
 Wait Until (W_T * i)
Next


If (_SearchOptionFromArgs("保持") != "") Then
 Return "Keep"
Else
 ClearPicture
 Refresh
 Return "Keep"
EndIf

505 hits



1597 / 7755 ←次へ前へ→

ページ:

記事番号:

662,996

(SS)C-BOARD v3.8 is Free

ページトップへt


SRC総合支援センター