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

Project1

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

[已经过期] 将这个脚本添加一个功能

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
30 小时
注册时间
2012-7-8
帖子
255
跳转到指定楼层
1
发表于 2012-7-27 19:21:26 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
站内搜索到的一个战斗显示头像的脚本
不过选择命令时没有显示状态图标,请添加这个功能
  1. #==============================================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #==============================================================================

  4. #==============================================================================
  5. # ■ Window_BattleStatus
  6. #------------------------------------------------------------------------------
  7. #  显示战斗画面同伴状态的窗口。
  8. #==============================================================================

  9. class Window_BattleStatus < Window_Selectable
  10.   #--------------------------------------------------------------------------
  11.   # ● 初始化对像
  12.   #--------------------------------------------------------------------------
  13.   def initialize
  14.     super(48, 0, 416, 128)#416
  15.     self.contents.font.size = 18
  16.     refresh
  17.     self.active = false
  18.     @prev_index = @index
  19.   end
  20.   #--------------------------------------------------------------------------
  21.   # ● 释放
  22.   #--------------------------------------------------------------------------
  23.   def dispose
  24.     super
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   # ● 刷新
  28.   #--------------------------------------------------------------------------
  29.   def refresh
  30.     self.contents.clear
  31.     @item_max = $game_party.members.size
  32.     for i in 0...@item_max
  33.       draw_item(i)
  34.     end
  35.     draw_6Rface(@index) if @index >= 0
  36.   end
  37.   #--------------------------------------------------------------------------
  38.   # ● 描绘项目
  39.   #     index : 项目编号
  40.   #--------------------------------------------------------------------------
  41.    def draw_item(index)
  42.      rect = item_rect(index)
  43.      rect.x += 4
  44.      rect.width -= 8
  45.      self.contents.clear_rect(rect)
  46.      self.contents.font.color = normal_color
  47.      actor = $game_party.members[index]
  48.      draw_actor_name(actor, 124, rect.y + 2)
  49.      begin_x = self.contents.text_size(actor.name).width + 4
  50.      draw_actor_state(actor, begin_x, rect.y, 24)
  51.      draw_actor_hp(actor, 230, rect.y, 65)
  52.      draw_actor_mp(actor, 310, rect.y, 65)
  53.    end
  54.   #--------------------------------------------------------------------------
  55.   # ● 描绘人物头像
  56.   #     index : 项目编号
  57.   #--------------------------------------------------------------------------
  58.   def draw_6Rface(index)
  59.     rect = Rect.new(0, 0, 96, 96)
  60.     self.contents.clear_rect(rect)
  61.     actor = $game_party.members[index]
  62.     draw_actor_face(actor, 0,0, 96)
  63.   end  
  64.   #--------------------------------------------------------------------------
  65.   # ● 设置光标的位置
  66.   #     index : 新的光标位置
  67.   #--------------------------------------------------------------------------
  68.   def index=(index)
  69.     @index = index
  70.     update_cursor
  71.     refresh
  72.   end
  73.   #--------------------------------------------------------------------------
  74.   # ● 获取项目描画矩形
  75.   #     index : 项目编号
  76.   #--------------------------------------------------------------------------
  77.   def item_rect(index)
  78.     rect = Rect.new(0, 0, 0, 0)
  79.     rect.width = contents.width - 113
  80.     rect.height = WLH
  81.     rect.x = 113
  82.     rect.y = index / @column_max * WLH
  83.     return rect
  84.   end  
  85.   #--------------------------------------------------------------------------
  86.   # ● 更新光标矩形
  87.   #--------------------------------------------------------------------------
  88.   def update_cursor
  89.     if @index < 0                   # 光标位置不满 0 的情况下
  90.       self.cursor_rect.empty        # 光标无效
  91.     else                            # 光标位 0 以上的情况下
  92.       row = @index / @column_max    # 获取当前的行
  93.       if row < top_row              # 当前行被显示开头行前面的情况下
  94.         self.top_row = row          # 从当前行向开头行滚动
  95.       end
  96.       if row > bottom_row           # 当前行被显示末尾行之后的情况下
  97.         self.bottom_row = row       # 从当前行向末尾滚动
  98.       end
  99.       rect = item_rect(@index)      # 获取选择项的矩形
  100.       rect.y -= self.oy             # 矩形滚动的位置加起来
  101.       self.cursor_rect = rect       # 更新光标矩形
  102.     end
  103.     if @prev_index != @index
  104.       @prev_index = @index
  105.       draw_6Rface(@index)
  106.     end
  107.   end
  108. end

  109. #==============================================================================
  110. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  111. #==============================================================================
复制代码

点评

伸手无耻  发表于 2012-7-27 21:43

Lv1.梦旅人

梦石
0
星屑
50
在线时间
37 小时
注册时间
2012-7-30
帖子
147
3
发表于 2012-7-30 09:24:36 | 只看该作者
这个脚本是在左上角画出玩家头像的?这是什么设定?

试试把脚本107行draw_6Rface(@index)改成refresh,可能会有点慢。如果过慢把draw_actor_state改一改加进去吧。
想回复我的话请呼(@)我一下。
准备执行人体盗图计划,copyright的诸君赶紧藏好咧~
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
106 小时
注册时间
2012-4-13
帖子
278
2
发表于 2012-7-28 09:16:52 | 只看该作者
@版主直接丢水区吧!

点评

没违反版规吧,这种程度是可以问的,毕竟现在提问的分数是自己出的  发表于 2012-7-28 20:48
←别人那偷来的签名
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-24 02:54

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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