Project1

标题: 关于战斗的几个问题 [打印本页]

作者: Losses    时间: 2011-6-25 20:07
标题: 关于战斗的几个问题
1、怎样设置增加一种装饰品(即从可装备一种装饰品改为两种,增加的那种装饰品只能是95~125号物品 并且只能由系统操控装备卸下,玩家不能改变, 类别叫“元件”)
2、话说怎样改脚本让战斗过程中每“轮”结束后都执行125号公共事件……dsu_plus_rewardpost_czw
作者: 懒De说    时间: 2011-6-25 20:34
本帖最后由 懒De说 于 2011-6-25 20:39 编辑

第2个问题可以这样
找到Window_BattleResult
改成这样
  1. #==============================================================================
  2. # ■ Window_BattleResult
  3. #------------------------------------------------------------------------------
  4. #  战斗结束时、显示获得的 EXP 及金钱的窗口。
  5. #==============================================================================

  6. class Window_BattleResult < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #     exp       : EXP
  10.   #     gold      : 金钱
  11.   #     treasures : 宝物
  12.   #--------------------------------------------------------------------------
  13.   def initialize(exp, gold, treasures)
  14.     @exp = exp
  15.     @gold = gold
  16.     @treasures = treasures
  17.     super(160, 0, 320, @treasures.size * 32 + 64)
  18.     self.contents = Bitmap.new(width - 32, height - 32)
  19.     self.y = 160 - height / 2
  20.     self.back_opacity = 160
  21.     self.visible = false
  22.     refresh
  23.     $game_temp.common_event_id = 125
  24.   end
  25.   #--------------------------------------------------------------------------
  26.   # ● 刷新
  27.   #--------------------------------------------------------------------------
  28.   def refresh
  29.     self.contents.clear
  30.     x = 4
  31.     self.contents.font.color = normal_color
  32.     cx = contents.text_size(@exp.to_s).width
  33.     self.contents.draw_text(x, 0, cx, 32, @exp.to_s)
  34.     x += cx + 4
  35.     self.contents.font.color = system_color
  36.     cx = contents.text_size("EXP").width
  37.     self.contents.draw_text(x, 0, 64, 32, "EXP")
  38.     x += cx + 16
  39.     self.contents.font.color = normal_color
  40.     cx = contents.text_size(@gold.to_s).width
  41.     self.contents.draw_text(x, 0, cx, 32, @gold.to_s)
  42.     x += cx + 4
  43.     self.contents.font.color = system_color
  44.     self.contents.draw_text(x, 0, 128, 32, $data_system.words.gold)
  45.     y = 32
  46.     for item in @treasures
  47.       draw_item_name(item, 4, y)
  48.       y += 32
  49.     end
  50.   end
  51. end
复制代码
其实还有其他方法,你可以自己在尝试一下

作者: Losses    时间: 2011-6-25 22:40
- -! 问题一求解……
作者: Wind2010    时间: 2011-6-25 22:45
关于问题二想问下
如果那个回合有战斗事情要处理的话,该怎么办呢?先处理公共事件还是先处理战斗事件?
作者: Losses    时间: 2011-6-25 22:48
Wind2010 发表于 2011-6-25 22:45
关于问题二想问下
如果那个回合有战斗事情要处理的话,该怎么办呢?先处理公共事件还是先处理战斗事件? ...

先处理战斗事件
(其实这两个东西是联系在一起的,如果角色佩戴问题一中的物品那么在回合后自动执行公共事件进行附加攻击……
作者: Wind2010    时间: 2011-6-25 22:56
脚本Scene_Battle 4中的start_phase4定义:
  1. # 搜索全页的战斗事件
  2.     for index in 0...$data_troops[@troop_id].pages.size
  3.       # 获取事件页
  4.       page = $data_troops[@troop_id].pages[index]
  5.       # 本页的范围是 [回合] 的情况下
  6.       if page.span == 1
  7.         # 设置已经执行标志
  8.         $game_temp.battle_event_flags[index] = false
  9.       end
  10.     end
复制代码
在下面插入:
  1.     common_event = $data_common_events[35]
  2.     $game_system.battle_interpreter.setup(common_event.list, 0)
复制代码
(其实直接是从update_phase4_step6中偷的)
不确定可行
作者: Losses    时间: 2011-6-25 23:01
Wind2010 发表于 2011-6-25 22:56
脚本Scene_Battle 4中的start_phase4定义:在下面插入:(其实直接是从update_phase4_step6中偷的)
不确定可 ...

好,明天试一下……




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1