Project1
标题:
问 中毒状态该不该死!?
[打印本页]
作者:
企鹅达达
时间:
2010-11-13 07:47
标题:
问 中毒状态该不该死!?
本帖最后由 企鹅达达 于 2010-11-14 16:48 编辑
Space not far 的状态扩张脚本问题
设置了中毒可以死亡,但是中毒死亡之后怪物不会消失……连死亡附加时的消息都没有显示
#==============================================================================
# ○スリップダメージ詳細設定 Ver1.03
# for RGSS2
# 西瓜 / Space not far
# http://muspell.raindrop.jp/
# スリップダメージをステートIDごとに無駄に細かく設定します。
# このスクリプトを使用するとデータベースのスリップ設定は意味がなくなります。
# HPのかわりにMPがスリップするようになったり、
# スリップダメージによる戦闘不能を許可するかなどのオプションがあります。
#==============================================================================
# ■更新履歴
# Ver1.03
# ・素材が全文コメントアウトされていたのを修正。
# Ver1.02
# ・誤記を修正。
# Ver1.01
# ・エネミーが戦闘不能になった次のターンで生き返る不具合を修正。
#==============================================================================
module SNF
SLIP_PATTERN = [] #初期化
SLIP_PATTERN_MP = [] #初期化
SLIP_AMOUNT = true
# 各ステートのスリップダメージを合計するか選びます。
# trueだとスリップダメージの値が全てのステートの累計ダメージとなり、
# falseだとSLIP_ARRAYで最初のほうに設定されたステートのダメージとなります。
#==============================================================================
# ● HPスリップ
#==============================================================================
#状态中勾选连续伤害,以下设定就可以用了
SLIP_DEATH = [2]
# 可以进入濒死状态的连续损伤状态id、
# これを設定することで戦闘不能にさせることができます。
# SLIP_DEATH = [スリップダメージで戦闘不能になるステートID]
# 例:SLIP_DEATH = [2, 4] ID2か4のステートのスリップダメージで戦闘不能に
SLIP_ARRAY = [2, 50, 51]
# 所有连续损伤的状态ID序列。
# ↓在SLIP_PATTERN[n]中分别设定伤害值。
# SLIP_PATTERN[状态ID] = [百分比伤害, 固定伤害, 分散度, 是否以现存HP为标准(可省略)]
# 現在HP基準がtrueだと現在HPが割合ダメージの基準となります。
# ↓設定例
SLIP_PATTERN[2] = [10, 0, 10]
SLIP_PATTERN[50] = [50, 10, 0, true]
SLIP_PATTERN[51] = [0, 300, 0]
# 状态2号 :每回合最大HP的 10%、分散度 10 的伤害(デフォルト設定)
# 状态50号:每回合损失现存HP的 50% + 10点固定伤害 的伤害
# ステート51番:每回合300 固定伤害
#==============================================================================
# ● MPスリップ
#==============================================================================
SLIP_ARRAY_MP = [52]
# mp连续伤害的状态ID序列,设定可参考上面HP的。
# ↓のSLIP_PATTERN_MP[n]のnの数値を入れてください。
# SLIP_PATTERN[ステートID] = [割合dmg, 固定dmg, 分散度, 現在MP基準(省略可)]
# 現在MP基準がtrueだと現在MPが割合ダメージの基準となります。
# ↓設定例
SLIP_PATTERN_MP[52] = [20, 15, 10]
# ステート52番:毎ターン最大MPの 20% + 15、分散度 10 のMPダメージ
end
class Game_Battler
def slip_damage_effect
if slip_damage? and @hp > 0
# HPスリップ
total_damage = 0
for i in 0..SNF::SLIP_ARRAY.size
id = SNF::SLIP_ARRAY[i]
if @states.include?(SNF::SLIP_ARRAY[i])
# スリップダメージの計算
if SNF::SLIP_PATTERN[id][3] == true
base = hp
else
base = maxhp
end
damage = base * SNF::SLIP_PATTERN[id][0] / 100
total_damage += apply_variance(damage, SNF::SLIP_PATTERN[id][2])
total_damage += SNF::SLIP_PATTERN[id][1]
break unless SNF::SLIP_AMOUNT # falseならループ脱出
end
end
@hp_damage = total_damage
death = false
for i in
[email protected]
death = true if @states.include?(SNF::SLIP_DEATH[i]) # ダメージを減らさない
end
@hp_damage = @hp - 1 if @hp_damage >= @hp and death != true
self.hp -= @hp_damage
# MPスリップ
total_damage_mp = 0
for i in 0..SNF::SLIP_ARRAY_MP.size
id = SNF::SLIP_ARRAY_MP[i]
if @states.include?(SNF::SLIP_ARRAY_MP[i])
# スリップダメージの計算
if SNF::SLIP_PATTERN_MP[id][3] == true
base = mp
else
base = maxmp
end
damage = base * SNF::SLIP_PATTERN_MP[id][0] / 100
total_damage_mp += apply_variance(damage, SNF::SLIP_PATTERN_MP[id][2])
total_damage_mp += SNF::SLIP_PATTERN_MP[id][1]
break unless SNF::SLIP_AMOUNT # falseならループ脱出
end
end
@mp_damage = total_damage_mp
self.mp -= @mp_damage
end
end
end
复制代码
作者:
企鹅达达
时间:
2010-11-13 20:58
话说本鹅RP MS 有点问题,n次提问均无人问津,囧~啊
作者:
38571240
时间:
2010-11-13 21:16
这个脚本怎么用的?
作者:
企鹅达达
时间:
2010-11-13 21:31
本帖最后由 企鹅达达 于 2010-11-13 22:22 编辑
回复
38571240
的帖子
因为不满KGC那个没有分散度的设置,所以改用这个。其实可以两个一起用,KGC那个状态扩张可以专门用来做地图上的伤害,而这个是战斗时候的伤害。可惜这个脚本设置可以死亡时有硬伤。当然,不介意的话可以设置中毒不会死,就像VX默认的那样(我也是用了才知道是这样的)
答谢回复,附赠连续损伤伤害显示脚本,可以在对象行动后显示状态持续时的信息,然后立即执行连续伤害,并显示伤害数值
Poison.exe
(414.5 KB, 下载次数: 38)
2010-11-13 22:20 上传
点击文件名下载附件
作者:
烁灵
时间:
2010-11-13 22:55
本帖最后由 烁灵 于 2010-11-14 15:00 编辑
企鹅兄 见附件
连续损伤的bug.rar
(243.24 KB, 下载次数: 49)
2010-11-13 22:55 上传
点击文件名下载附件
作者:
企鹅达达
时间:
2010-11-14 01:43
回复
烁灵
的帖子
中毒死的的确是消失了,正常死亡的反倒不会消失了……
作者:
烁灵
时间:
2010-11-14 16:32
回复
企鹅达达
的帖子
改好了~
连续损伤的bug.rar
(243.29 KB, 下载次数: 100)
2010-11-14 16:32 上传
点击文件名下载附件
作者:
企鹅达达
时间:
2010-11-14 16:47
回复
烁灵
的帖子
非常好,只是一句话的问题……以下是奖励 =.=
菜单状态栏状态介绍.rar
(2.57 KB, 下载次数: 51)
2010-11-14 16:47 上传
点击文件名下载附件
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1