Project1

标题: 自己犯晕,没能明白是怎么回事,附工程一枚 [打印本页]

作者: DeathKing    时间: 2010-10-9 23:47
标题: 自己犯晕,没能明白是怎么回事,附工程一枚
本帖最后由 DeathKing 于 2010-10-10 08:59 编辑

make_gifts参数列表如下:
o_weapon_id:母版武器id
gift_set=[]:天赋集合,为空的话就使用默认设定
gifts_num=1:天赋数量
weapon_id=0:生成的武器的id
make_gifts返回weapon_id,利用weapon_id来取得武器。

现在的问题是。。。。
获得的武器是。。。。0个?



这是诡异的工程,脚本在一个诡异的空白处。。。。
EquipGifts.rar (187.85 KB, 下载次数: 71)
作者: N.K    时间: 2010-10-9 23:53
提示: 作者被禁止或删除 内容自动屏蔽
作者: 九夜神尊    时间: 2010-10-10 00:35
本帖最后由 九夜神尊 于 2010-10-10 00:49 编辑




从这里入手吧!
据我的猜测,LZ可能是直接扩充武器数据库来达到
武器属性的多样性,和武器的独立性。

如此可看出来,3号武器的ID居然是1

然后我不是原作者。能发现的只能这些
作者: moy    时间: 2010-10-10 00:48
本帖最后由 moy 于 2010-10-10 00:52 编辑

看了工程的理解:
得到的物品实际上是阿尔西斯手上那把....但是因为少了卸除装备的步骤于是手上的没有消失,但是又被装备了,所以获得的物品数量是1,但是被装备了于是被减1减至0.....
大概是这么回事...
现在去看脚本...

_____
补充一个好玩的现象,那武器虽然写的是0,但是可以无限卖....
作者: 禾西    时间: 2010-10-10 01:11
本帖最后由 禾西 于 2010-10-10 01:14 编辑

Window_EquipItem
    if @equip_type == 0
      weapon_set = $data_classes[@actor.class_id].weapon_set
      for i in 1...$data_weapons.size
        if $game_party.weapon_number(i) > 0 and weapon_set.include?(i)
print <<EOF
index = #{i};
id = #{$data_weapons[ i ].id};
num by index = #{$game_party.weapon_number(i)};
num by id = #{$game_party.weapon_number($data_weapons[ i ].id)};
EOF

          @data.push($data_weapons[ i ])
        end
      end
    end


內涵不解釋
作者: DeathKing    时间: 2010-10-10 02:10
本帖最后由 DeathKing 于 2010-10-10 02:14 编辑

回复 禾西 的帖子


    饿。换了换标识符。。。。
但可以确定,武器是被push进去了的啊。。。。因为不会存在武器数量为0但是还被描绘出来的情况吧?


b]回复 九夜神尊 的帖子

in ruby 1.8: p 1.id #=> 3   (1.9里面是.hash方法)

weapon_number方法返回武器个数。。。发现是个武器数据库索引/id => 数量 的对应。

   
作者: 禾西    时间: 2010-10-10 02:34
你還沒有看見嗎- -b,描述用的是由id判斷來的數量,而push用的是用index判斷的數量。也就是說要正常顯示,得符合以下兩個條件:
1.保證可以用索引(index)讀到物品
2.保證可以用物品找到索引(id)

也就是 index == id
而就顯示出來的數據看,index和id明顯的不對應。因此你需要在你的腳本的217行加入

  1.     $data_weapons[weapon_id].id = weapon_id
复制代码
來設定物品->索引的對應關系,說到這個地步你明白了吧= =
作者: DeathKing    时间: 2010-10-10 08:58
回复 禾西 的帖子


    O_O,确实是囧了。

问题解决了,谢谢禾西前辈的帮助^_^
作者: 苦乐流星    时间: 2011-3-14 17:55
提示: 作者被禁止或删除 内容自动屏蔽




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