トリガー追加(タイマー追加/デストリガー追加)放射物挙動調査まとめ
トリガー追加の放射物参照
トリガー追加の後ろに付けた放射物が、トリガー追加に参照されてトリガー追加がその放射物として振る舞います。
普通に放射物を発射したときには、`gun_action.lua`内の`action`内の処理が呼ばれますが、トリガー追加は`gun_action.lua`内にある、`related_projectiles`を参照して放射物を出すので、普段呼ばれている挙動とトリガー追加で呼ばれる放射物とでは挙動が異なります。
具体的には、
クリティカル
爆破範囲
反動
等のxmlファイルには定義されておらず、action内で定義されているものがトリガーでは呼び出されません(事実上の削除)。
スパークボルトの呪文ソースコード
{
id = "LIGHT_BULLET",
name = "$action_light_bullet",
description = "$actiondesc_light_bullet",
sprite = "data/ui_gfx/gun_actions/light_bullet.png",
sprite_unidentified = "data/ui_gfx/gun_actions/light_bullet_unidentified.png",
-- この下にある`related_projectiles`がトリガー追加時に参照されるファイル
related_projectiles = {"data/entities/projectiles/deck/light_bullet.xml"},
type = ACTION_TYPE_PROJECTILE,
spawn_level = "0,1,2", -- LIGHT_BULLET
spawn_probability = "2,1,0.5", -- LIGHT_BULLET
price = 100,
mana = 5,
-- ここの下にあるaction内の処理が本来呼ばれている処理
action = function()
-- この下にある`add_projectile`が呪文詠唱時に参照されるファイル
add_projectile("data/entities/projectiles/deck/light_bullet.xml")
c.fire_rate_wait = c.fire_rate_wait + 3
c.screenshake = c.screenshake + 0.5
c.spread_degrees = c.spread_degrees - 1.0
c.damage_critical_chance = c.damage_critical_chance + 5
end,
}
イメージ的には、トリガー追加に放射物の挙動だけ取り込まれた感じでしょうか。
例えば、スパークボルトをトリガー追加で呼び出すと、
クリティカルプラス+5%
拡散 -1
遅延詠唱 +0.05s
画面振動 +0.5
ソースコードで言うと、
c.fire_rate_wait = c.fire_rate_wait + 3
c.screenshake = c.screenshake + 0.5
c.spread_degrees = c.spread_degrees - 1.0
c.damage_critical_chance = c.damage_critical_chance + 5
がなくなってます。
以下の画像からわかりますが、スパークボルトのクリティカルが発生していません。
(トリガー先のスパークボルトはライトショットでダメージをゼロにしているので影響がないです)
トリガー追加の放射物参照によるメリット
遅延詠唱が消えるので、チェーンボルトが打ち放題になったりします。
トリガー追加の放射物参照によるデメリット
追加の属性が読み込まれないことで、エネルギー球体の反動固定が利用できなくなります。
トリガーを乗せることで挙動が変化するもの
呪文の中には、そもそもとして参照する呪文が変更されるものがあります。
METEOR_RAIN
手元から単発のメテオが発射されるようになります。
WORM_RAIN(matosade)
ワームが大量に降ってくる挙動はなくなり、
手元からでかいワームが召喚されるだけの呪文になります。
このワームは普通のデカワームなので、ヘルスアップを落とします。
プラズマビームの十字架
プラズマビームになります。
ミサイル
トリガー時の参照が設定されていないので、
トリガーとして機能しません…(悲しい)
卵の召喚
モンスターのタマゴが固定になるので、
確定でフルッタ系が出現します。野菜、吸血鬼のお供にどうぞ。
蔓延
本来は1-6個の魔法が飛び出しますが、
トリガー追加を噛ますと10個確定で出現します。
タイマーXX / トリガーXX
表題の「XX」はトリガー付きスパークボルト等を指しています。
トリガー(タイマー)無しのスペルを参照しに行くので、
事実上のトリガー追加(タイマー追加 / デストリガー追加)での上書きとなります。
トリガー付きダブルスパークボルトは、普通のスパークボルトをトリガー追加で参照するので、トリガーが一つ減ります。
この記事が気に入ったらサポートをしてみませんか?