Project1
标题:
伤害
[打印本页]
作者:
雾情沙滋
时间:
2013-8-31 00:53
标题:
伤害
1、怎么样才能做到攻击跟伤害同时出现,而不是攻击动画结束才出现!
2、怎么样让结束前,先显示怪物或物品里的公共事件后才显示经验跟金币?现况是,显示了经验金币后,切到地图外面才显示公共事件里面的内容!
作者:
asdwds
时间:
2013-8-31 12:00
1.这是我看后知后觉横版脚本里的方法,在攻击动画中,你认为攻击击中敌人的帧那里加一个空音乐
然后在处理se的地方添加显示伤害的动作,以此来达成伤害和动画同步。
2.战斗结束后运行怪物和事件的话,你可以考虑
a.如果你是使用“战斗处理”动作进入战斗的话,敌人不设置经验物品,一切等到“战斗处理”动作结束后统一发放
b.步数遇敌的情况,你可以考虑判断敌人血小于一定百分比(例如1%),达到条件后就运行公共事件并结束这次战斗
但是施行b时,你要给敌人不死的效果,让其不会被一击致命
以上2种方法比较简单
作者:
moy
时间:
2013-9-9 20:44
#--------------------------------------------------------------------------
# ● 胜利时的处理
#--------------------------------------------------------------------------
def self.process_victory
play_battle_end_me
replay_bgm_and_bgs
$game_message.add(sprintf(Vocab::Victory, $game_party.name))
display_exp
gain_gold
gain_drop_items
gain_exp
SceneManager.return
battle_end(0)
return true
end
#--------------------------------------------------------------------------
# ● 战斗结束
# result : 结果(0:胜利 1:撤退 2:全灭)
#--------------------------------------------------------------------------
def self.battle_end(result)
@phase = nil
@event_proc.call(result) if @event_proc
$game_party.on_battle_end
$game_troop.on_battle_end
SceneManager.exit if $BTEST
end
复制代码
以上是默认脚本。将之改为如下
#--------------------------------------------------------------------------
# ● 胜利时的处理
#--------------------------------------------------------------------------
def self.process_victory
play_battle_end_me
replay_bgm_and_bgs
$game_message.add(sprintf(Vocab::Victory, $game_party.name))
battle_end_first(0) #added
display_exp
gain_gold
gain_drop_items
gain_exp
SceneManager.return
battle_end_second #changed
return true
end
#--------------------------------------------------------------------------
# ● 战斗结束1
# result : 结果(0:胜利 1:撤退 2:全灭)
#--------------------------------------------------------------------------
def self.battle_end_first(result)
@phase = nil
@event_proc.call(result) if @event_proc
end
#--------------------------------------------------------------------------
# ● 战斗结束2
#--------------------------------------------------------------------------
def self.battle_end_second
$game_party.on_battle_end
$game_troop.on_battle_end
SceneManager.exit if $BTEST
end
复制代码
其中added表示增加,changed表示修改,将battle_end拆成两部分,这样理论上应该可以达成你的要求,但不保证一次可行,或者是否有冲突。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1