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

Project1

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

关于物品、仓库系统豪华版的问题

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
7 小时
注册时间
2007-5-22
帖子
67
跳转到指定楼层
1
发表于 2009-4-19 09:44:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
一个很老的脚步了,今天拿出了研究了一下!
发现一个问题想请教一下
函数:have_item?(item),判断是否拥有某物,这一项中的(item)里输入的是啥??
谢谢!!!
这是脚本的网页
http://rpg.blue/web/htm/news489.htm
此贴于 2009-4-19 9:54:22 被版主凌辰提醒,请楼主看到后对本贴做出回应。
版务信息:版主帮忙结贴~

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
2
发表于 2009-4-19 16:04:09 | 只看该作者
其实要解决这类问题,只要会搜索脚本,追踪函数间的调用层次就行了~

→ 打开该脚本的页面,Ctrl+F 搜索 def have_item? ,这是定义该函数的地方
→ 发现这个函数返回的是 [@item 数组是否包含要搜索的物品] 的结果,于是搜索 @item
→ 反复点击[查找下一个],发现 push 到 @item 中的只有以下三种类型:

    $data_items
    $data_weapons
    $data_armors

也就是说 have_items? 这个函数是根据数据库物品、武器、防具这三种不同类型的实例对象来判断是否拥有某物品的~
所以在调用 have_item? 的时候应该是以下形式:

(Game_Actor 类型对象).have_item?($data_items[编号])
(Game_Actor 类型对象).have_item?($data_weapons[编号])
(Game_Actor 类型对象).have_item?($data_armors[编号])


注意要区分没有继承关系的两个类中相同名字的变量,他们之间是不能划等号的,像 Game_Party 中也有一个 @items ,但这个 @items 却是一个以物品 ID 为键,物品数量为值的哈希表,和 Game_Actor 中的物品数组完全不同
版主对此帖的认可:『认真的孩子是有奖励的。』,积分『+100』。
系统信息:本贴由本区版主认可为正确答案,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
7 小时
注册时间
2007-5-22
帖子
67
3
 楼主| 发表于 2009-4-19 17:52:00 | 只看该作者
原来是这样受教了……
版主对此帖的评论:『问题解决请结贴。』,积分『-0』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-16 04:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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