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

Project1

 找回密码
 注册会员
搜索

想在装备页面显示四个属性要怎么改呢?

查看数: 2972 | 评论数: 10 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-4-10 15:03

正文摘要:

人物状态页面现在已经改掉了是四个属性没错(对标的原属性:勇气-力量、礼仪-灵巧、社交-速度、学识-魔力) 现在装备界面的左侧也想改成四个属性,但是文字显示的明明是勇气(力量),礼仪(灵巧)和社交(速度), ...

回复

foghidecrab 发表于 2022-4-19 17:17:02
啊!我把Equipleft里面的3456改成0123就没有问题了!非常感谢大佬!
foghidecrab 发表于 2022-4-19 16:43:13
现在变成了:
脚本' window_base'的293行发生了TypeError.
第293行是:
   self.contents.draw_text(x, y, 120, 32, parameter_name)

我的行数可能和默认不太一样,因为我把整个特技项给去掉了。
顺带一说那一整段是:
  #--------------------------------------------------------------------------
  # ● 描绘能力值
  #     actor : 角色
  #     x     : 描画目标 X 坐标
  #     y     : 描画目标 Y 坐标
  #     type  : 能力值种类 (0~3)
  #--------------------------------------------------------------------------
  def draw_actor_parameter(actor, x, y, type)
    case type
    when 0
      parameter_name = $data_system.words.str
      parameter_value = actor.str
    when 1
      parameter_name = $data_system.words.dex
      parameter_value = actor.dex
    when 2
      parameter_name = $data_system.words.agi
      parameter_value = actor.agi
    when 3
      parameter_name = $data_system.words.int
      parameter_value = actor.int
    end
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 120, 32, parameter_name)
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 120, y, 36, 32, parameter_value.to_s, 2)

点评

调用draw_actor_parameter(actor, x, y, type)时候,那个type改成3 就是str,4就是dex,5就是agi,6就是int。把不用的0 1 2 去掉,然后调整好xy坐标(主要是Y)就好了  发表于 2022-4-19 16:51
你的游戏可能用不上atk bdef和pdef,但是不建议你删掉。你可以不调用就好了。比如状态窗口  发表于 2022-4-19 16:50
你把这一段改回默认的就行  发表于 2022-4-19 16:45
白鬼 发表于 2022-4-19 16:13:51
本帖最后由 白鬼 于 2022-4-19 16:29 编辑
foghidecrab 发表于 2022-4-19 15:59
链接:https://pan.baidu.com/s/1tendOJEA4mVRPyfajgVO-g
提取码:yjrx
--来自百度网盘超级会员V4的分享

如何发论坛附件


我改好了,测试可以。我把修改的两个脚本完整的发出来你对照一下看看哪里不对吧。
另外,设置好数据库,别拿铜剑给阿尔西斯做测试,因为这家伙一出生就拿着铜剑

Window_EquipLeft【改】
Scene_Equip【改】

评分

参与人数 1星屑 +100 +1 收起 理由
RyanBern + 100 + 1 认可答案

查看全部评分

foghidecrab 发表于 2022-4-19 15:59:44
链接:https://pan.baidu.com/s/1tendOJEA4mVRPyfajgVO-g
提取码:yjrx
--来自百度网盘超级会员V4的分享

对不起不知道怎么传工程文件,整个全传上来了OJZ,里面应该有一堆不重要的图片之类的
foghidecrab 发表于 2022-4-19 15:41:23
白鬼 发表于 2022-4-19 01:31
脚本 Scene_Equip  中
115-116行

这个6楼发的里面改过了
白鬼 发表于 2022-4-19 01:31:59
foghidecrab 发表于 2022-4-18 13:58
可以麻烦大佬看下我下面改的嘛?是LEVEL不要了改成四属性,现在还是错误。 ...

脚本 Scene_Equip  中
115-116行
  1.       # 描画左窗口
  2.       @left_window.set_new_parameters(new_atk, new_pdef, new_mdef)
复制代码

改成
  1.       # 描画左窗口
  2.       @left_window.set_new_parameters(new_str, new_dex, new_agi, new_int)
复制代码

foghidecrab 发表于 2022-4-18 13:58:13
foghidecrab 发表于 2022-4-10 20:17
现在很神奇的是不选择装备的情况下的数值就是对应的勇气(力量) 礼仪(灵巧)和社交(速度),选择装备 ...

可以麻烦大佬看下我下面改的嘛?是LEVEL不要了改成四属性,现在还是错误。

点评

要不你传个工程文件吧  发表于 2022-4-18 17:27
foghidecrab 发表于 2022-4-18 13:56:55
现在我改了Scene_equip 里面的这些:
     # 获取变更装备后的能力值
      new_str = @actor.str
      new_dex = @actor.dex
      new_agi = @actor.agi
      new_int = @actor.int
  # 描画左窗口
      @left_window.set_new_parameters(new_int, new_dex, new_agi, new_int)

然后还有window_equipleft里的这些:
def refresh
    self.contents.clear
    draw_actor_name(@actor, 4, 0)
    draw_actor_parameter(@actor, 4, 32, 0)
    draw_actor_parameter(@actor, 4, 64, 1)
    draw_actor_parameter(@actor, 4, 96, 2)
    draw_actor_parameter(@actor, 4, 128, 3)
    if @new_str != nil
      self.contents.font.color = system_color
      self.contents.draw_text(160, 64, 40, 32, "→", 1)
      self.contents.font.color = normal_color
      self.contents.draw_text(200, 64, 36, 32, @new_str.to_s, 2)
    end
    if @new_dex != nil
      self.contents.font.color = system_color
      self.contents.draw_text(160, 96, 40, 32, "→", 1)
      self.contents.font.color = normal_color
      self.contents.draw_text(200, 96, 36, 32, @new_dex.to_s, 2)
    end
    if @new_agi != nil
      self.contents.font.color = system_color
      self.contents.draw_text(160, 128, 40, 32, "→", 1)
      self.contents.font.color = normal_color
      self.contents.draw_text(200, 128, 36, 32, @new_agi.to_s, 2)
    end
    if @new_int !=nil
      self.contents.font.color = system_color
      self.contents.draw_text(160, 128, 40, 32, "→", 1)
      self.contents.font.color = normal_color
      self.contents.draw_text(200, 128, 36, 32, @new_int.to_s, 2)
  end
  def set_new_parameters(new_str, new_dex, new_agi, new_int)
    if @new_str != new_str or @new_dex != new_dex or @new_agi != new_agi or @new_int != new_int
      @new_str = new_str
      @new_dex = new_dex
      @new_agi = new_agi
      @new_int = new_int
      refresh
    end
  end

但是直接就变成了“脚本window_equipleft最后一行发生了SyntaxError”
请问这个是怎么回事呀?
foghidecrab 发表于 2022-4-10 20:17:09
guoxiaomi 发表于 2022-4-10 16:38
25-27行的 draw_actor_parameter 是用于显示当前的属性和值,你需要把最后一个参数从012改成345。

下面那 ...

现在很神奇的是不选择装备的情况下的数值就是对应的勇气(力量) 礼仪(灵巧)和社交(速度),选择装备的情况下,箭头左边的数字也是没错的,但右边数字始终是0. 装备完成后,左边数字会加上正确的属性OJZ
这样说的话012应该是没有问题的?主要是下面那一段?

点评

右边的数字就在scene_equip的refresh中赋值的  发表于 2022-4-11 12:05
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2025-6-9 15:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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