设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

Sideview100与Yanfly的ace战斗系统出问题

查看数: 6807 | 评论数: 11 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-2-1 11:38

正文摘要:

我想用Yanfly的ace战斗系统来去掉战斗时候选择敌人那个选择菜单,直接选取敌人本身而不是通过名字来选择敌人 但是在战斗开始后,当作出攻击后,伤害的数值没显示出现就会报错 在横版脚本的这一行,已经进行了定义 ...

回复

月满月西楼 发表于 2013-2-2 02:00:50
fans2010 发表于 2013-2-2 01:29
http://rpg.blue/forum.php?mod=viewthread&tid=223765
这个我用了,好像没有你说的后几个问题,但是 ...

把我下午发的那个去除“战斗,逃跑”的脚本放到你新发的这个脚本之前,然后不用改什么或者增添函数,直接就可以使用了
fans2010 发表于 2013-2-2 01:29:11
本帖最后由 fans2010 于 2013-2-2 01:56 编辑

http://rpg.blue/forum.php?mod=viewthread&tid=223765
这个我用了,好像没有你说的后几个问题,但是就是开始的时候的那两个“战斗”“逃跑”选项去除的话要在里面搜索这个“SKIP_PARTY_COMMAND”,设为false,除了这儿之外,还有两个函数要加进去,一个是
RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # alias method: battle_start
  3.   #--------------------------------------------------------------------------
  4.   alias scene_battle_battle_start_abe battle_start
  5.   def battle_start
  6.     scene_battle_battle_start_abe
  7.     return unless YEA::BATTLE::SKIP_PARTY_COMMAND
  8.     @party_command_window.deactivate
  9.     if BattleManager.input_start
  10.       command_fight
  11.     else
  12.       turn_start
  13.     end
  14.   end


另一个是

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # alias method: battle_start
  3.   #--------------------------------------------------------------------------
  4.   alias scene_battle_battle_start_abe battle_start
  5.   def battle_start
  6.     scene_battle_battle_start_abe
  7.     return unless YEA::BATTLE::SKIP_PARTY_COMMAND
  8.     @party_command_window.deactivate
  9.     if BattleManager.input_start
  10.       command_fight
  11.     else
  12.       turn_start
  13.     end
  14.   end


最后再加一个函数

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # new method: status_redraw_target
  3.   #--------------------------------------------------------------------------
  4.   def status_redraw_target(target)
  5.     return unless target.actor?
  6.     @status_window.draw_item($game_party.battle_members.index(target))
  7.   end


这样的话暂时好像没问题
tim315121 发表于 2013-2-1 22:33:59
LBQ 发表于 2013-2-1 22:01
干嘛用Yanfly搭配Sideview啊。。。搭配什么animated battler 还有 battle symphony 神马的难道不是更好? ...

前几天有发现这个脚本

抓下来试了一下后发现他的技能设定全部都要写在注释里,麻烦到傻眼加上本人对英文感冒(哥表示哥只看得懂日文),果断放弃

不然真的很想改用他的系统,介面我比较喜欢
月满月西楼 发表于 2013-2-1 22:09:49
LBQ 发表于 2013-2-1 22:01
干嘛用Yanfly搭配Sideview啊。。。搭配什么animated battler 还有 battle symphony 神马的难道不是更好? ...

哎?能发下那两个系统的相关链接么?我孤陋寡闻了..没听说过这两个..

点评

LBQ
http://victorscripts.wordpress.com/rpg-maker-vx-ace/battle-scripts/animated-battle/  发表于 2013-2-1 22:20
LBQ
http://symphonyan.org/battle-symphony-introduction/  发表于 2013-2-1 22:19
LBQ 发表于 2013-2-1 22:01:11
干嘛用Yanfly搭配Sideview啊。。。搭配什么animated battler 还有 battle symphony 神马的难道不是更好?
fans2010 发表于 2013-2-1 14:27:31
本帖最后由 fans2010 于 2013-2-1 14:29 编辑
月满月西楼 发表于 2013-2-1 14:17
[这个也是从坟帖里面找出来的,目前没发现什么BUG,能够去除掉战斗和逃跑。

你给的那一段代码.要怎么使用. ...


不好意思我2了,我明白你的意思了,你这个代码不错,研究下
fans2010 发表于 2013-2-1 13:45:40
显示两个伤害主要是因为那个剑挑就是带伤害的,我现在也不能用YEA,因为它自己本身就是一个战斗系统,伤害会重叠之类的问题会出现,现在只要有个脸图的界面就好了,战斗伤害计算等全部交给SIDEVIEW
fans2010 发表于 2013-2-1 13:44:17

  1. $imported = {} if $imported.nil?
  2. module YEA
  3.   module BATTLE
  4.     BATTLESTATUS_NAME_FONT_SIZE = 20
  5.     BATTLESTATUS_TEXT_FONT_SIZE = 16
  6.     BATTLESTATUS_HPGAUGE_Y_PLUS = 11
  7.     BATTLESTATUS_CENTER_FACES   = false
  8.   end
  9. end
  10. class Window_BattleStatus < Window_Selectable
  11.   def initialize
  12.     super(0, 0, window_width, window_height)
  13.     self.openness = 0
  14.     @party = $game_party.battle_members.clone
  15.   end
  16.   def col_max; return $game_party.max_battle_members; end
  17.   def battle_members; return $game_party.battle_members; end
  18.   def actor; return battle_members[@index]; end
  19.   def update
  20.     super
  21.     return if @party == $game_party.battle_members
  22.     @party = $game_party.battle_members.clone
  23.     refresh
  24.   end
  25.   def draw_item(index)
  26.     return if index.nil?
  27.     clear_item(index)
  28.     actor = battle_members[index]
  29.     rect = item_rect(index)
  30.     return if actor.nil?
  31.     draw_actor_face(actor, rect.x+2, rect.y+2, actor.alive?)
  32.     draw_actor_name(actor, rect.x, rect.y, rect.width-8)
  33.     draw_actor_icons(actor, rect.x, line_height*1, rect.width)
  34.     gx = YEA::BATTLE::BATTLESTATUS_HPGAUGE_Y_PLUS
  35.     contents.font.size = YEA::BATTLE::BATTLESTATUS_TEXT_FONT_SIZE
  36.     draw_actor_hp(actor, rect.x+2, line_height*2+gx, rect.width-4)
  37.     dw = rect.width/2-2
  38.     dw += 1 if $imported["YEA-CoreEngine"] && YEA::CORE::GAUGE_OUTLINE
  39.     draw_actor_tp(actor, rect.x+2, line_height*3, dw)
  40.     dw = rect.width - rect.width/2 - 2
  41.     draw_actor_mp(actor, rect.x+rect.width/2, line_height*3, dw)
  42.   end
  43.   def item_rect(index)
  44.     rect = Rect.new
  45.     rect.width = contents.width / $game_party.max_battle_members
  46.     rect.height = contents.height
  47.     rect.x = index * rect.width
  48.     if YEA::BATTLE::BATTLESTATUS_CENTER_FACES
  49.       rect.x += (contents.width - $game_party.members.size * rect.width) / 2
  50.     end
  51.     rect.y = 0
  52.     return rect
  53.   end
  54.   def draw_face(face_name, face_index, dx, dy, enabled = true)
  55.     bitmap = Cache.face(face_name)
  56.     fx = [(96 - item_rect(0).width + 1) / 2, 0].max
  57.     fy = face_index / 4 * 96 + 2
  58.     fw = [item_rect(0).width - 4, 92].min
  59.     rect = Rect.new(fx, fy, fw, 92)
  60.     rect = Rect.new(face_index % 4 * 96 + fx, fy, fw, 92)
  61.     contents.blt(dx, dy, bitmap, rect, enabled ? 255 : translucent_alpha)
  62.     bitmap.dispose
  63.   end
  64.   def draw_actor_name(actor, dx, dy, dw = 112)
  65.     reset_font_settings
  66.     contents.font.size = YEA::BATTLE::BATTLESTATUS_NAME_FONT_SIZE
  67.     change_color(hp_color(actor))
  68.     draw_text(dx+24, dy, dw-24, line_height, actor.name)
  69.   end
  70.   def draw_actor_hp(actor, dx, dy, width = 124)
  71.     draw_gauge(dx, dy, width, actor.hp_rate, hp_gauge_color1, hp_gauge_color2)
  72.     change_color(system_color)
  73.     cy = (Font.default_size - contents.font.size) / 2 + 1
  74.     draw_text(dx+2, dy+cy, 30, line_height, Vocab::hp_a)
  75.     draw_current_and_max_values(dx, dy+cy, width, actor.hp, actor.mhp,
  76.       hp_color(actor), normal_color)
  77.     end
  78.   def draw_actor_mp(actor, dx, dy, width = 124)
  79.     draw_gauge(dx, dy, width, actor.mp_rate, mp_gauge_color1, mp_gauge_color2)
  80.     change_color(system_color)
  81.     cy = (Font.default_size - contents.font.size) / 2 + 1
  82.     draw_text(dx+2, dy+cy, 30, line_height, Vocab::mp_a)
  83.     draw_current_and_max_values(dx, dy+cy, width, actor.mp, actor.mmp,
  84.       mp_color(actor), normal_color)
  85.     end
  86.   def draw_actor_tp(actor, dx, dy, width = 124)
  87.     draw_gauge(dx, dy, width, actor.tp_rate, tp_gauge_color1, tp_gauge_color2)
  88.     change_color(system_color)
  89.     cy = (Font.default_size - contents.font.size) / 2 + 1
  90.     draw_text(dx+2, dy+cy, 30, line_height, Vocab::tp_a)
  91.     change_color(tp_color(actor))
  92.     draw_text(dx + width - 42, dy+cy, 42, line_height, actor.tp.to_i, 2)
  93.   end
  94. end
复制代码
这个是我在某人帖子里下的,这个人删减了YEA脚本,只用yea的界面但是没有用它的战斗系统,请问怎么把开头的那两个“逃跑”和“战斗”去掉呢?
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-19 17:25

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表