レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
新・くだらない質問にもマジレスするスレ3
援護とか一切考えなくていいならこんな感じかなぁ
動作確認とかしてないから、動かす前にちゃんと書式とかヘルプで確認してください。
根本的に間違ってたらごめん
#※半減させる武器には"半"属性が付いているものとする
#※イベントで切り払いやS防御をSetSkillすることがある場合には対応してない
#※切り払いレベルによる相殺にも対応してない
##↓以下インクル
#攻撃前に特殊能力レベルを半減させる
*攻撃 全 全:
Call 特殊能力レベル半減解除処理 //念のため
Call 特殊能力レベル半減処理 対象ユニットID 対象ユニット使用武器番号 相手ユニットID
Call 特殊能力レベル半減処理 相手ユニットID 相手ユニット使用武器番号 対象ユニットID
Exit
#処理本体
特殊能力レベル半減処理:
If Info("ユニット",Args(1),"武器",Args(2),"属性所有","半") Then
Local 半減パイロット = PilotID(Args(3)
Set 半減フラグ[半減パイロット] //解除する時のためにフラグを立てておく
SetSkill 半減パイロット "切り払い" (Skill(半減パイロット,"切り払い") / 2)
SetSkill 半減パイロット "S防御" (Skill(半減パイロット,"S防御") / 2)
EndIf
Return
#終わったら特殊能力レベルを戻す
*攻撃後 全 全:
*破壊 全:
*エピローグ:
Call 特殊能力レベル半減解除処理
Exit
特殊能力レベル半減解除処理:
If Count(半減フラグ) > 0 Then
Local i
ForEach i In 半減フラグ
If Level(i) > 0 Then
ClearSkill i "切り払い"
ClearSkill i "S防御"
EndIf
Next
Unset 半減フラグ
EndIf
Return
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板