Project1

标题: 如何在脚本里提取数据库里的备注? [打印本页]

作者: wc3215410    时间: 2023-4-4 03:07
标题: 如何在脚本里提取数据库里的备注?
物品: $data_items[id].note
武器:$data_weapons[id].note
防具:$data_armors[id].note
比如这几个根本无法调用啊。
作者: bleen    时间: 2023-4-4 14:58
  不懂,帮顶
作者: wc3215410    时间: 2023-4-4 18:22
以前玖伍肆大佬提到的,但是我记得没办法直接调用。
有什么方法可以直接在脚本里调用数据库“物品”“装备”“角色”这些选项卡的备注吗?

作者: wc3215410    时间: 2023-4-4 18:28
想知道这个备注是哪个类管理?
如何调用这个“备注”的方法?
文档里没找到。

QQ截图20230404181912.png (34.47 KB, 下载次数: 60)

QQ截图20230404181912.png

作者: soulsaga    时间: 2023-4-4 20:27
可以调用啊..在事件脚本里测试
你写了什么?
在哪里写的?
作者: wc3215410    时间: 2023-4-4 22:04
soulsaga 发表于 2023-4-4 20:27
可以调用啊..在事件脚本里测试
你写了什么?
在哪里写的?

能举个例子吗?感激不尽!!
事件脚本不太会弄,我想在自己的脚本里调用这个数据库里的“备注”。没有找到它的方法定义。
作者: wc3215410    时间: 2023-4-4 22:10
比如  武器:$data_weapons[id].note
玖伍肆大佬说用这方法可以调用,直接调用好像是不行的。这个方法在哪个类可以实现?

作者: soulsaga    时间: 2023-4-4 22:14
wc3215410 发表于 2023-4-4 22:10
比如  武器:$data_weapons.note
玖伍肆大佬说用这方法可以调用,直接调用好像是不行的。这个方法在哪个类 ...

你想写在哪里
作者: wc3215410    时间: 2023-4-4 22:55
soulsaga 发表于 2023-4-4 22:14
你想写在哪里

我想在我自己弄的代码里调用数据库的备注。
#==============================================================================
# ** Game_BattlerBase
#------------------------------------------------------------------------------
#  这个类处理角色和敌人的基本数据。包括能力值、状态变化等。
#   在这里添加了一个名为attack_range的方法,用于获取角色或敌人的攻击距离。
#==============================================================================

class Game_BattlerBase
  #--------------------------------------------------------------------------
  # * 获取攻击距离
  #--------------------------------------------------------------------------
  def attack_range
    # 如果角色或敌人有装备,则检查备注中是否有attack_range标签
    if self.actor? && self.equips[0]
      note = self.equips[0].note
      if note =~ /<attack_range:(\d+)>/
        return $1.to_i
      end
    end
    # 否则返回默认攻击距离
    return 1
  end
end
作者: soulsaga    时间: 2023-4-4 23:01
本帖最后由 soulsaga 于 2023-4-4 23:34 编辑
wc3215410 发表于 2023-4-4 22:55
我想在我自己弄的代码里调用数据库的备注。
#======================================================== ...


你的脚本没看出问题
你是报错了还是没效果?
作者: wc3215410    时间: 2023-4-4 23:11
soulsaga 发表于 2023-4-4 23:01
敌人一般不会有装备
至於actor?
默认只会返回假

这个只是最早之前的一个想法,我想知道如果调用数据库的装备备注的话该如何调用?
是需要用玖伍肆大佬说的那个全局变量调用的方法吗?
作者: soulsaga    时间: 2023-4-4 23:40
本帖最后由 soulsaga 于 2023-4-4 23:54 编辑
wc3215410 发表于 2023-4-4 23:11
这个只是最早之前的一个想法,我想知道如果调用数据库的装备备注的话该如何调用?
是需要用玖伍肆大佬说 ...


在Scene_Battle类里设定如何
你这个只是定义距离,没必要用SELF?
用全局变量就好啦

不知是不是这样
子类可以用父类的方法
父类不能用子类的方法
作者: wc3215410    时间: 2023-4-5 00:18
本帖最后由 wc3215410 于 2023-4-5 00:19 编辑
soulsaga 发表于 2023-4-4 23:40
在Scene_Battle类里设定如何
你这个只是定义距离,没必要用SELF?
用全局变量就好啦


好的,我试试,感谢感谢!!
我一开始是想在自己的代码上把数据库的备注调用出来。例如在方法里调用防具的备注:$data_armors[id].note。
类似像这样:
def method
  # 用数据库里备注的字符做个条件或者其他接口。
     if $data_armors[id].note.include?
          do_thing
end
这种方法可行吗?
作者: soulsaga    时间: 2023-4-7 00:26
wc3215410 发表于 2023-4-5 00:18
好的,我试试,感谢感谢!!
我一开始是想在自己的代码上把数据库的备注调用出来。例如在方法里调用防具的备 ...

其实你想在什么候读取备注去应用?

作者: wc3215410    时间: 2023-4-7 01:43
soulsaga 发表于 2023-4-7 00:26
其实你想在什么候读取备注去应用?

比如,判定某装备有没有某属性的时候去执行某些方法,数据库的装备附加能力值有限。我想利用备注给它额外增加能力属性。
作者: soulsaga    时间: 2023-4-7 01:53
wc3215410 发表于 2023-4-7 01:43
比如,判定某装备有没有某属性的时候去执行某些方法,数据库的装备附加能力值有限。我想利用备注给它额外 ...

不是..我是问是在攻击时判断还是?
作者: soulsaga    时间: 2023-4-7 06:42
Game_Actor 和Game_Enemy两个类里可以用self读取备注和装备等

作者: wc3215410    时间: 2023-4-7 23:12
soulsaga 发表于 2023-4-7 06:42
Game_Actor 和Game_Enemy两个类里可以用self读取备注和装备等

好的。帮大忙了!!,感激不尽!!
又学到很多。我对于RGSS3的数据结构实在是绕不清,英文太差。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1