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

Project1

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

[已经解决] 求背包容量(负重)脚本

[复制链接]

Lv4.逐梦者

素材区好人

梦石
3
星屑
7517
在线时间
3542 小时
注册时间
2011-7-21
帖子
2284

极短24参与极短23参与极短22参与极短21参与

跳转到指定楼层
1
发表于 2016-10-16 00:40:04 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
这次也是照常搜索过结果大部分都失效了
希望现有容量和最高容量在物品菜单中就能显示,如果容量已满,开宝箱则获取失败(但是宝箱不消失)
至于商店购买和贩卖就不用考虑了

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9397
在线时间
2748 小时
注册时间
2008-9-5
帖子
3543

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

来自 3楼
发表于 2016-10-16 13:26:16 | 只看该作者
唔……有几个几个问题点:
1-1,容量是指每个角色都有容量值,然后队伍总容量是整队人的容量值加起来?或是队伍容量值只是个可以设定的变量?
1-2,基于1-1,如果是前者,那个队伍有人离队的话,缺少的队伍容量肿么办?扩展一下这个问题,如果队伍容量是可变的变量值,那么减少这个值之后,溢出的那部分容量肿么办?
2,容量数值只在物品背包界面显示?是要肿么显示呢?放个独立小窗还是直接显示在哪个窗口里?
3,也就是说商店买东西的话不管溢出的容量?
4,箱子的话大概得手动加条件分歧。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9397
在线时间
2748 小时
注册时间
2008-9-5
帖子
3543

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

来自 6楼
发表于 2016-10-16 15:28:13 | 只看该作者
本帖最后由 cinderelmini 于 2016-10-16 18:01 编辑
无忧谷主幻 发表于 2016-10-16 14:33
虽然勉强也可以……
能在背包中显示吗?


唔。。。大概写了一个……Main前什么的……
用法在代码开头有说明,可以在物品/武器/防具的说明栏最后面加上“♂数值”(不含引号)设置重量,
不设置的话统一默认设定为代码里设置的默认重量。
基于默认系统,搬运大概需要整合?

评分

参与人数 2星屑 +500 梦石 +1 收起 理由
RyanBern + 100 + 1 认可答案
无忧谷主幻 + 400 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

2
发表于 2016-10-16 09:41:07 | 只看该作者
我是用的限制携带种类上限。不是负重。
就是一个变量表示最大能带几种道具。
另一个变量表示当前带了几种道具。
我是改了脚本。不是插件脚本。
  1.   #--------------------------------------------------------------------------
  2.   # ● 增加物品 (减少)
  3.   #     item_id : 物品 ID
  4.   #     n       : 个数
  5.   #--------------------------------------------------------------------------
  6.   def gain_item(item_id, n)
  7.     a = item_number(item_id)
  8.     # 更新 hash 的个数数据
  9.     if item_id > 0
  10.       if $game_variables[54] >= 10
  11.                               else
  12.       @items[item_id] = [[item_number(item_id) + n, 0].max, 10].min
  13.       if @items.include?(item_id)
  14.                 if n >= 0
  15.                   if a == 0
  16.           $game_variables[54] += 1
  17.           end
  18.         end
  19.       end
  20.                    if   a > 0
  21.                      if item_number(item_id) == 0
  22.           $game_variables[54] -= 1
  23. end
  24.       end
  25.     end
  26.     end
  27.   end
  28.   #--------------------------------------------------------------------------
  29.   # ● 增加武器 (减少)
  30.   #     weapon_id : 武器 ID
  31.   #     n         : 个数
  32.   #--------------------------------------------------------------------------
  33.   def gain_weapon(weapon_id, n)
  34.     a = weapon_number(weapon_id)
  35.     # 更新 hash 的个数数据
  36.     if weapon_id > 0
  37.             if $game_variables[54] >= 10
  38.            else
  39.       @weapons[weapon_id] = [[weapon_number(weapon_id) + n, 0].max, 10].min
  40.     if @weapons.include?(weapon_id)
  41.                       if n >= 0
  42.                   if a == 0               
  43.           $game_variables[54] += 1
  44.           end
  45.         end
  46.       end
  47.                    if   a > 0
  48.                      if weapon_number(weapon_id) == 0
  49.           $game_variables[54] -= 1
  50. end
  51.       end
  52.     end
  53.     end
  54.   end
  55.   #--------------------------------------------------------------------------
  56.   # ● 增加防具 (减少)
  57.   #     armor_id : 防具 ID
  58.   #     n        : 个数
  59.   #--------------------------------------------------------------------------
  60.   def gain_armor(armor_id, n)
  61.         a = armor_number(armor_id)
  62.             # 更新 hash 的个数数据
  63.     if armor_id > 0
  64.             if $game_variables[54] >= 10
  65.             else
  66.           @armors[armor_id] = [[armor_number(armor_id) + n, 0].max, 10].min
  67.     if @armors.include?(armor_id)
  68.                       if n >= 0
  69.                   if a == 0               
  70.           $game_variables[54] += 1
  71.           end
  72.         end
  73.       end
  74.                    if   a > 0
  75.                      if armor_number(armor_id) == 0
  76.           $game_variables[54] -= 1
  77. end
  78.       end
  79.     end
  80.   end
  81.   end
复制代码

评分

参与人数 1星屑 +80 收起 理由
无忧谷主幻 + 80 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

素材区好人

梦石
3
星屑
7517
在线时间
3542 小时
注册时间
2011-7-21
帖子
2284

极短24参与极短23参与极短22参与极短21参与

4
 楼主| 发表于 2016-10-16 14:31:36 | 只看该作者

()

本帖最后由 无忧谷主幻 于 2016-10-16 14:36 编辑
cinderelmini 发表于 2016-10-16 13:26
唔……有几个几个问题点:
1-1,容量是指每个角色都有容量值,然后队伍总容量是整队人的容量值加起来?或是 ...

1-1,这个不用考虑,因为队伍就一个人
1-2,因为自始至终就一个人,所以不用考虑了
2,只要能显示就行了(当然新增个窗口比较美观吧)

3,没有商店,所以不用考虑
4,嗯,也可以
回复 支持 反对

使用道具 举报

Lv4.逐梦者

素材区好人

梦石
3
星屑
7517
在线时间
3542 小时
注册时间
2011-7-21
帖子
2284

极短24参与极短23参与极短22参与极短21参与

5
 楼主| 发表于 2016-10-16 14:33:05 | 只看该作者
yang1zhi 发表于 2016-10-16 09:41
我是用的限制携带种类上限。不是负重。
就是一个变量表示最大能带几种道具。
另一个变量表示当前带了几种 ...

虽然勉强也可以……
能在背包中显示吗?

点评

可以的,在背包那里建个窗口,显示变量就可以。  发表于 2016-10-16 22:35
回复 支持 反对

使用道具 举报

Lv4.逐梦者

素材区好人

梦石
3
星屑
7517
在线时间
3542 小时
注册时间
2011-7-21
帖子
2284

极短24参与极短23参与极短22参与极短21参与

7
 楼主| 发表于 2016-10-16 16:10:38 | 只看该作者
cinderelmini 发表于 2016-10-16 15:28
唔。。。大概写了一个……Main前什么的……
用法在代码开头有说明,可以在物品/武器/防具的说明栏最后面 ...

还是有2个问题:
1,判断物品1是否超过负重,条件分歧应该写
burden_max?(item, 1)吗?

2,现有负重的刷新:
在使用物品或丢弃物品后没有及时刷新,必须关闭物品菜单再打开才会更新
丢弃物品

点评

嗯,虽然使用还是无法更新,但是丢弃的话完全问题、至于前者我尽量通过事件解决吧,非常感谢  发表于 2016-10-16 20:07
实在不行的话,就在你这楼代码的275和276行之间(@item_window.refresh下面)插入一行:@burden_window.refresh  发表于 2016-10-16 19:06
哦~负重的问题把代码218行的等号去掉就好,刷新的问题。。。。好奇怪。。。  发表于 2016-10-16 19:05
条件分歧解决,但如果背包目前重量5则只能再拿4个重量1的物品,也就是如果等于最大负重也无法拿起来。刷新问题换位置仍然失败,无论是丢弃.使用  发表于 2016-10-16 18:31
至于刷新问题,试试把咱代码里的81行和82行换个位置看看……  发表于 2016-10-16 18:02
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-22 23:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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