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

Project1

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

[已经解决] 窗口数值显示

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3606
在线时间
1891 小时
注册时间
2010-6-19
帖子
1211
跳转到指定楼层
1
发表于 2022-5-17 08:36:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 黑米馒头 于 2022-5-17 09:22 编辑

下面这个脚本里面的宠物资质成长这些是在图片窗口显示的,如何改成在状态窗口显示,我想直接调用窗口的时候显示出这些数值

我试着调用数值
把   
@BaBy.bitmap.draw_text(405,24,67,20,@actor.aptitude_atk.to_s,1)
改成
self.contents.draw_text(405,24,67,20,@actor.aptitude_atk.to_s,1)
可是好像找不到角色对应的宠物索引,在窗口里显示不出来数值

RUBY 代码复制
  1. class Window_Status_Baby < Window_Base
  2.   #--------------------------------------------------------------------------
  3.   # ● 初始化对像
  4.   #     actor : 角色
  5.   #--------------------------------------------------------------------------
  6.   def initialize(actor)
  7.     super(100, 0, 640, 480)
  8.     self.contents = Bitmap.new(width - 32, height - 32)
  9.     @actor = actor
  10.     refresh
  11.   end
  12.   #--------------------------------------------------------------------------
  13.   # ● 刷新
  14.   #--------------------------------------------------------------------------
  15.   def refresh
  16.     self.contents.clear
  17.     draw_actor_name(@actor, 0, 96)
  18.     draw_actor_level(@actor, 96, 32)
  19.  
  20.     self.contents.draw_text(405,24,67,20,@actor.aptitude_atk.to_s,1)
  21.  
  22.   end
  23. end




在图片里显示数值


如何改成在窗口显示数值,类似这样,一个可以单独调出的窗口



RUBY 代码复制
  1. #==============================================================================
  2. # ■ Window_Baby_Command
  3. #------------------------------------------------------------------------------
  4. #  宠物界面宠物选择窗口。
  5. #==============================================================================
  6. class Window_Baby_Command < Window_Baby_Selectable
  7.   attr_accessor     :commands
  8.   def initialize(actor = nil)
  9.     super(11,29, 110, 147)
  10.     self.opacity = 0
  11.     @actor = actor
  12.     @commands = []
  13.     if @actor != nil
  14.       refresh
  15.     end
  16.   end
  17.   def set_actor(actor)
  18.     @actor = actor
  19.   end   
  20.   def refresh
  21.     if @actor != nil
  22.       run = false
  23.       numbers = 0
  24.       for i in @actor.babys
  25.         if i != 0
  26.           numbers += 1
  27.         end
  28.       end
  29.       if @commands.size != numbers
  30.         @item_max = 0
  31.         @commands = []
  32.         for i in @actor.babys
  33.           if i != 0
  34.             @item_max += 1
  35.             @commands.push($data_actors[i])
  36.           end
  37.         end
  38.         run = true
  39.       elsif @baby_id != @actor.baby
  40.         run = true
  41.         @baby_id = @actor.baby
  42.       end   
  43.       if run == true
  44.         if self.contents != nil
  45.           self.contents.dispose
  46.         end
  47.         self.contents = Bitmap.new(width,@item_max*23 + 32)
  48.         self.contents.font.name = "宋体"
  49.         self.contents.font.size = 20
  50.         for i in 0...@commands.size
  51.           draw_name(i, Color.new(0, 0, 0, 255))
  52.         end
  53.       end
  54.     end
  55.   end
  56.   def draw_name(index, color)
  57.     if @commands[index].id == @actor.baby
  58.       @index = index
  59.       self.contents.font.color = Color.new(255, 255, 0, 255)
  60.     elsif $game_actors[@commands[index].id].hp0?
  61.       self.contents.font.color = Color.new(255, 0, 0, 255)
  62.     else
  63.      self.contents.font.color = color
  64.     end
  65.      self.contents.draw_text(0, index * 23, self.width, 23, @commands[index].name,0)
  66.    end
  67. end   
  68.   #--------------------------------------------------------------------------
  69.   # ● 项目无效化
  70.   #     index : 项目编号
  71.   #--------------------------------------------------------------------------
  72.   def disable_item(index)
  73.     draw_item(index, disabled_color)
  74.   end
  75. #==============================================================================
  76. # ■ Scene_Baby
  77. #------------------------------------------------------------------------------
  78. #  召唤兽管理界面
  79. #==============================================================================
  80. class Scene_Baby
  81.   #--------------------------------------------------------------------------
  82.   # ● 主处理
  83.   #--------------------------------------------------------------------------
  84.   def main
  85.     #宠物界面
  86.     @BaBy = Sprite.new()
  87.     @BaBy.bitmap = RPG::Cache.windowskin("skin_baby")
  88.     @actor = $game_party.actors[0]
  89.     @command_window = Window_Baby_Command.new(@actor)
  90.     @command_window.active = true
  91.     # 执行过渡
  92.     Graphics.transition
  93.     loop do
  94.       # 刷新游戏画面
  95.       Graphics.update
  96.       # 刷新输入信息
  97.       Input.update
  98.       if Kboard.keyboard($R_Key_F4)
  99.         Screen::shot1
  100.         Audio.se_play("Audio/SE/"+"camera",100,100)
  101.       end
  102.       # 刷新画面
  103.       update
  104.       # 如果画面被切换的话就中断循环
  105.       if $scene != self
  106.         RPG::Cache.clear
  107.         break
  108.       end
  109.     end
  110.     # 装备过渡
  111.     Graphics.freeze
  112.     @command_window.dispose
  113.     @BaBy.dispose
  114.   end
  115.   #----------------------------------------------------------------------------
  116.   # ● 绘制宝宝属性
  117.   #   id      : 宝宝id
  118.   #----------------------------------------------------------------------------
  119.   def draw_属性(id)
  120.     @BaBy.bitmap.dispose
  121.     @BaBy.bitmap = RPG::Cache.windowskin("skin_baby")
  122.     @BaBy.bitmap.font = Font.new("宋体",14)
  123.     @BaBy.bitmap.font.name = ["楷体","宋体"]
  124.     @BaBy.bitmap.font.color = Color.new(0,0,0,255)
  125.     @actor = $game_actors[id]
  126.     #攻击资质
  127.     @BaBy.bitmap.draw_text(405,24,67,20,@actor.aptitude_atk.to_s,1)
  128.     #防御资质
  129.     @BaBy.bitmap.draw_text(405,47,67,20,@actor.aptitude_pdef.to_s,1)
  130.     #体力资质
  131.     @BaBy.bitmap.draw_text(405,70,67,20,@actor.aptitude_hp.to_s,1)
  132.     #法力资质
  133.     @BaBy.bitmap.draw_text(405,93,67,20,@actor.aptitude_mdef.to_s,1)
  134.     #速度资质
  135.     @BaBy.bitmap.draw_text(405,116,67,20,@actor.aptitude_agi.to_s,1)
  136.     #躲避资质
  137.     @BaBy.bitmap.draw_text(405,139,67,20,@actor.aptitude_eva.to_s,1)
  138.     #寿命
  139.     @BaBy.bitmap.draw_text(405,162,67,20,"无限",1)
  140.     #成长
  141.     @BaBy.bitmap.draw_text(405,185,67,20,@actor.grow.to_s,1)
  142.   end
  143.   #----------------------------------------------------------------------------
  144.   # ● 更新画面
  145.   #----------------------------------------------------------------------------
  146.   def update
  147.     @command_window.update
  148.     #如果宠物选择索引发生变化
  149.     if @baby_index != @command_window.index
  150.       draw_属性(@command_window.commands[@command_window.index].id)
  151.     end
  152. end
  153. end

Lv3.寻梦者

梦石
0
星屑
3606
在线时间
1891 小时
注册时间
2010-6-19
帖子
1211
2
 楼主| 发表于 2022-5-17 12:18:48 | 只看该作者
自己解决了…..

点评

带入角色索引就行……  发表于 2022-5-17 17:46
您好,请问下您最后是怎么解决的呢?  发表于 2022-5-17 14:29

评分

参与人数 1+1 收起 理由
taeckle + 1 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 12:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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