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

Project1

 找回密码
 注册会员
搜索
查看: 2349|回复: 13
打印 上一主题 下一主题

问:图标显示状态脚本与即时横版CTB脚本能完美整合不

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
53 小时
注册时间
2007-5-2
帖子
310
跳转到指定楼层
1
发表于 2008-2-5 00:18:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
问题现象 1 :
  在一群怪物中,有部分中了XX状态,当你攻击选择一个中XX状态的怪物时显示怪物图标XX状态,但当你选择下一个没中XX状态的怪物时也还显示XX状态图标!

问题现象 2 :
  当角色 给 自己加状态时,有时不显示状态图标,但状态效果是纯在的!
  
不知道 这些个问题有人遇到过没?该怎么解决?

--------------------------------------------------------------------------
问题现象 2 补充
  当中了第一个状态图标没显示时,在中第2个状态后:显示第一个状态图标,第二个状态图标估计要在第三次中状态时显示!

--------------------------------------------------------------------------
新发现
问题找到了
用了 即时制横版CTB战斗系统 问题就出现
不用就正常了
图标显示状态脚本 单独用米问题

***********************有谁能知道 2者怎么 整合 ?************************
游戏现在状态:复活

Lv5.捕梦者

御灵的宠物

梦石
12
星屑
8438
在线时间
88 小时
注册时间
2006-12-11
帖子
3148

第2届TG大赛亚军

2
发表于 2008-2-5 00:22:05 | 只看该作者
那个脚本是哪个orz可能是么有同步刷新的问题
贴上来我看看吧
我的Lofter:http://nightoye.lofter.com/

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
53 小时
注册时间
2007-5-2
帖子
310
3
 楼主| 发表于 2008-2-5 00:24:50 | 只看该作者
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
# 欢迎访问www.66RPG.com
# 梦想世界,在你手中
#==============================================================================

#==============================================================================
# 图标显示状态 v1.1
# By 叶子
# 9-30-2007 v1.1
# 修正了描绘状态的一个致命BUG
# 12-31-2005 v1.0
# 重定义类:Window_Base, Window_Help
#==============================================================================
# 脚本功能:
# 实现战斗中和菜单中用图标显示状态,代替原来的文字显示。
# 默认最多同时显示5个状态
#------------------------------------------------------------------------------
# 设置方法:
# 一个状态对应的图标文件名为“状态的动画ID”
# 例如某状态的动画ID为50,那么它的图标就是“Icons\50.png”或“Icons\50.jpg”
# 如果找不到对应的文件,会报错 ◎_◎
#==============================================================================

# 注意,在ICON_STATE_IDS中写上需要带图标的状态ID
# ICON_STATE_IDS是一个数组,数组的方法请参考帮助文件
# 例如:
# 只要1,5,8号状态带图标,就这样:ICON_STATE_IDS = [1,5,8]
# 要20到50号状态带图标:ICON_STATE_IDS = 20..50

ICON_STATE_IDS = 1..100

#==============================================================================
# ■ Window_Base
#------------------------------------------------------------------------------
#  游戏中全部窗口的超级类。
#==============================================================================

class Window_Base < Window
  #--------------------------------------------------------------------------
  # ● 描绘状态
  #     actor : 角色
  #     x     : 描画目标 X 坐标
  #     y     : 描画目标 Y 坐标
  #     width : 描画目标的宽
  #--------------------------------------------------------------------------
  def draw_actor_state(actor, x, y, width = 120)
    state_size = 0
    for state in actor.states
      # 图标数量超出宽度就中断循环
      if state_size >= width / 24
        break
      end
      # 此状态不带图标就跳过
      if !ICON_STATE_IDS.include?(state)
        next
      end
      bitmap = RPG::Cache.icon($data_states[state].animation_id.to_s)
      if actor.states_turn[state] >= $data_states[state].hold_turn/2
        opacity = 255
      else
        opacity = 100
      end
      # 这里的图标大小默认是24x24,要改就改下面那个Rect.new(0, 0, 24, 24)
      self.contents.blt(x + 24 * state_size, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      state_size += 1
    end
  end
end
  
  
#==============================================================================
# ■ Window_Help
#------------------------------------------------------------------------------
#  特技及物品的说明、角色的状态显示的窗口。
#==============================================================================
  
class Window_Help < Window_Base
  #--------------------------------------------------------------------------
  # ● 设置敌人
  #     enemy : 要显示名字和状态的敌人
  #--------------------------------------------------------------------------
  def set_enemy(enemy)
    @text = ""
    # 描绘敌人名字
    set_text(enemy.name, 1)
    # 描绘状态图标
    state_size = 0
    for state in enemy.states
      # 图标数量超出宽度就中断循环
      if state_size >= 5
        break
      end
      # 此状态不带图标就跳过
      if !ICON_STATE_IDS.include?(state)
        next
      end
      bitmap = RPG::Cache.icon($data_states[state].animation_id.to_s)
      if enemy.states_turn[state] >= $data_states[state].hold_turn/2
        opacity = 255
      else
        opacity = 100
      end
      self.contents.blt(70 + 24 * state_size, 0, bitmap, Rect.new(0, 0, 24, 24), opacity)
      state_size += 1
    end
  end
end

class Game_Battler
  attr_reader :states_turn       # 声明状态剩余回合
end

#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
# 欢迎访问www.66RPG.com
# 梦想世界,在你手中
#==============================================================================

游戏现在状态:复活
回复 支持 反对

使用道具 举报

Lv5.捕梦者

御灵的宠物

梦石
12
星屑
8438
在线时间
88 小时
注册时间
2006-12-11
帖子
3148

第2届TG大赛亚军

4
发表于 2008-2-5 00:25:58 | 只看该作者
大概明白问题了,回头帮你改{/hx}
我的Lofter:http://nightoye.lofter.com/

回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
5
发表于 2008-2-5 00:28:23 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
53 小时
注册时间
2007-5-2
帖子
310
6
 楼主| 发表于 2008-2-5 00:35:06 | 只看该作者
Eclair
我的问题就是你贴出来的这个脚本中地哦

先谢 水迭澜 了
期待中
游戏现在状态:复活
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
7
发表于 2008-2-5 00:41:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

心无天使

梦石
0
星屑
49
在线时间
0 小时
注册时间
2007-12-15
帖子
1016
8
发表于 2008-2-5 01:07:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
2 小时
注册时间
2005-10-25
帖子
108
9
发表于 2008-2-5 01:21:31 | 只看该作者
下班前的最后一丝努力,不知对错。
  1. class Window_Base < Window
  2. #--------------------------------------------------------------------------
  3. # ● 描绘状态
  4. #     actor : 角色
  5. #     x     : 描画目标 X 坐标
  6. #     y     : 描画目标 Y 坐标
  7. #     width : 描画目标的宽
  8. #--------------------------------------------------------------------------
  9. def draw_actor_state(actor, x, y, width = 120)
  10.    state_size = 0
  11.    self.contents.fill_rect(x, y, 120, 32, Color.new(0,0,0,0))
  12.    for state in actor.states
  13.      # 图标数量超出宽度就中断循环
  14.      if state_size >= width / 24
  15.        break
  16.      end
  17.      # 此状态不带图标就跳过
  18.      if !ICON_STATE_IDS.include?(state)
  19.        next
  20.      end
  21.      bitmap = RPG::Cache.icon($data_states[state].animation_id.to_s)
  22.      if actor.states_turn[state] >= $data_states[state].hold_turn/2
  23.        opacity = 255
  24.      else
  25.        opacity = 100
  26.      end
  27.      # 这里的图标大小默认是24x24,要改就改下面那个Rect.new(0, 0, 24, 24)
  28.      self.contents.blt(x + 24 * state_size, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
  29.      state_size += 1
  30.    end
  31. end
  32. end


  33. #==============================================================================
  34. # ■ Window_Help
  35. #------------------------------------------------------------------------------
  36. #  特技及物品的说明、角色的状态显示的窗口。
  37. #==============================================================================

  38. class Window_Help < Window_Base
  39. #--------------------------------------------------------------------------
  40. # ● 设置敌人
  41. #     enemy : 要显示名字和状态的敌人
  42. #--------------------------------------------------------------------------
  43. def set_enemy(enemy)
  44.    @text = ""
  45.    # 描绘敌人名字
  46.    set_text(enemy.name, 1)
  47.    # 描绘状态图标
  48.    state_size = 0
  49.    self.contents.fill_rect(0, 0, self.width - 32, 32, Color.new(0,0,0,0))
  50.    for state in enemy.states
  51.      # 图标数量超出宽度就中断循环
  52.      if state_size >= 5
  53.        break
  54.      end
  55.      # 此状态不带图标就跳过
  56.      if !ICON_STATE_IDS.include?(state)
  57.        next
  58.      end
  59.      bitmap = RPG::Cache.icon($data_states[state].animation_id.to_s)
  60.      if enemy.states_turn[state] >= $data_states[state].hold_turn/2
  61.        opacity = 255
  62.      else
  63.        opacity = 100
  64.      end
  65.      self.contents.blt(70 + 24 * state_size, 0, bitmap, Rect.new(0, 0, 24, 24), opacity)
  66.      state_size += 1
  67.    end
  68. end
  69. end

  70. class Game_Battler
  71. attr_reader :states_turn       # 声明状态剩余回合
  72. end
复制代码
小星子=亿万星辰@PSVita
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
53 小时
注册时间
2007-5-2
帖子
310
10
 楼主| 发表于 2008-2-5 01:32:06 | 只看该作者
额...
看来要再详细说明下了

问题现象 2 补充
  当中了第一个状态图标没显示时,在中第2个状态后:显示第一个状态图标,第二个状态图标估计要在第三次中状态时显示!
游戏现在状态:复活
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-12-3 06:25

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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