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

Project1

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

[有事请教] 战斗物品和技能如何用独立的窗口把物品数量和技能花费.....

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1088
在线时间
141 小时
注册时间
2019-3-30
帖子
25
跳转到指定楼层
1
发表于 2024-1-21 16:56:46 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
战斗物品和技能如何用独立的窗口把物品数量和技能花费显示出来
求教各位大佬,先行拜谢了。

QQ截图20240121165436.png (55.85 KB, 下载次数: 38)

QQ截图20240121165436.png

QQ截图20240121165446.png (56.52 KB, 下载次数: 40)

QQ截图20240121165446.png

Lv3.寻梦者

梦石
0
星屑
1088
在线时间
141 小时
注册时间
2019-3-30
帖子
25
2
 楼主| 发表于 2024-1-21 16:57:50 | 只看该作者
就像上边这样的,技能消耗消耗和剩余数量如何单独显示
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1088
在线时间
141 小时
注册时间
2019-3-30
帖子
25
3
 楼主| 发表于 2024-2-6 10:19:04 | 只看该作者
请求大佬帮助啊
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1556
在线时间
193 小时
注册时间
2019-10-4
帖子
286
4
发表于 2024-2-25 00:21:31 | 只看该作者
  1. @set_window = Window_Base.new(15, 15, 640+384-30, 64)
  2.     @set_window.contents=Bitmap.new(@set_window.width-32,@set_window.height)
  3.     #添加-32就不會有箭頭(@set_window.width-32,@set_window.height-32)
  4.     @set_window.contents.font.size=22
  5.     @set_window.contents.font.color = @set_window.normal_color
  6.     @set_window.contents.font.name = "黑体"
  7.     @set_window.contents.draw_text(0, 0, 360+600, 32, " 文本框",1)
  8.     @set_window.back_opacity = 225
  9.     @set_window.z = 9990
复制代码
只能说这个是个大概 还得找下技能,物品的数值,to_s 啥的转换下 不太记得了
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1088
在线时间
141 小时
注册时间
2019-3-30
帖子
25
5
 楼主| 发表于 2024-2-28 09:38:38 | 只看该作者
契约师Vi 发表于 2024-2-25 00:21
只能说这个是个大概 还得找下技能,物品的数值,to_s 啥的转换下 不太记得了 ...

class Window_BattleItemNum < Window_Base
  def initialize
    super(140+350, 290+96+12, 640-140-350-30, 160-96-12)
    #super(0, 0, 640, 480)
    self.contents = Bitmap.new(width , height)
    @item = nil
    self.opacity = 255
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 获取物品
  #--------------------------------------------------------------------------
  def item
    return @data[self.index]
  end  
  
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    if @item == nil
      return
    end
    case @item
    when RPG::Item
      number = $game_party.item_number(@item.id)
    when RPG::Weapon
      number = $game_party.weapon_number(@item.id)
    when RPG::Armor
      number = $game_party.armor_number(@item.id)
    end
    self.contents.font.color = system_color
    self.contents.draw_text(4 , 2-8, 204, 32, "剩余:", 0)
    self.contents.font.color = normal_color
    self.contents.draw_text(30, 2-8, 120, 32, number.to_s, 2)   
    if @item.is_a?(RPG::Item)
      return
    end
  end

   #--------------------------------------------------------------------------
  # ● 设置物品
  #     item : 新的物品
  #--------------------------------------------------------------------------
  def item=(item)
    if @item != item
      @item = item
      refresh
    end
  end
  
  
  
  
  
  
  
end






大佬你看下这个该如何改。我怎么弄都不显示东西
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4721
在线时间
387 小时
注册时间
2012-11-8
帖子
276
6
发表于 2024-2-29 16:34:36 | 只看该作者
本帖最后由 qq634488405 于 2024-2-29 16:38 编辑

使用window_item时
RUBY 代码复制
  1. @item_window = Window_Item.new
  2. # 此处借用了window_help,可根据自己需要修改,修改后要修改update_info
  3. @info_window = Window_Help.new
  4. #使用window_help要根据需求修改位置和大小
  5. @item_window.info_window = @info_window

window_item修改
RUBY 代码复制
  1. class Window_Item < Window_Selectable
  2.         attr_reader   :info_window              # 信息窗口
  3.         # 设置窗口
  4.         def info_window=(info_window)
  5.                 @info_window = info_window
  6.                 if self.active and @info_window != nil
  7.                         update_info
  8.                 end
  9.         end
  10.         # index更新时
  11.         def index=(index)
  12.                 super
  13.                 if self.active and @info_window != nil
  14.                         update_info
  15.                 end
  16.         end
  17.         # update方法
  18.         def update
  19.                 super
  20.                 if self.active and @info_window != nil
  21.                         update_info
  22.                 end
  23.         end
  24.         # 更新信息
  25.         def update_info
  26.                 text = "剩余:" + $game_party.item_number(self.item.id).to_s
  27.                 @info_window.set_text(self.item == nil ? "" : text)
  28.         end
  29. end

技能消耗同理
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 10:12

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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