= 创作分享 =
编程开发
为啥物品耐久最大是32767?

为啥物品耐久最大是32767?

sxjsxj 于 2016-5-31 20:51 ( 3年前 ) 分类。  [复制链接] [显示全部楼层] [打印]
GregoriusT 发表于 2017-10-28 19:58
问一下,附加值、metadata、耐久值是一个东西吗?如果不是那应该怎么区分

meta是ItemStack的一个不能直接访问的field,然后哦Item将这个封包成了damage【1】;
附加值这个概念在源码中不体现,就这样……

事实上MC有些代码很恶心的,因为把很多概念混杂在了一起,弄得乱七八糟的;

如果只是要玩游戏(甚至是魔改,写资源包,汉化什么的),只需要知道“damage”是经过物品处理过一个区分同id物品的值;“meta”是用来区分同id方块的值就可以了【2】。

【1】:例如GT的耐久不是原版的那套系统,他自己写了一套;
【2】:其实我觉得meta和damage的区别的存在是一个历史遗留问题,不过现在也不重要了;
发表于 2017-11-5 13:46:54 | 显示全部楼层

回复 | 举报

ic2的转子就是这样,很迷我也没找到解决办法,总不能把转子ban了吧

点评

这回复是什么情况(?)另外,洛阳铲警告  发表于 2019-7-1 13:33

评分

参与人数 1RF -2 收起 理由
封兽·鵺 -2 #301 禁止挖坟

查看全部评分

发表于 2019-7-1 12:29:49 | 显示全部楼层

回复 | 举报

中兴安岭 发表于 2017-2-19 18:23
现在这个帖子可以改成“为啥物品耐久最大是2147483647”了233,不过真的有耐久超过这个值的物品……这该怎 ...

有的,gt吊炸天电池是2∧64-1,不过那不是损伤值,那只是单纯的一个数组
发表于 2019-7-17 22:23:42 | 显示全部楼层

回复 | 举报

龙之进化:8级能量核心储能:2^63-1RF
初三党,9月不登百科(学业繁忙)
发表于 2019-8-14 06:47:14 | 显示全部楼层

回复 | 举报

因为Java int值最高只能是32767.....
发表于 2019-10-5 22:19:40 | 显示全部楼层

回复 | 举报

123
百科目前不允许匿名发帖哦~ 请先 [ 登陆 ][ 注册 ] 吧~

本版积分规则

发新帖
  • 回复
  • 点评
  • 评分

[ MC百科(mcmod.cn) 除教程作者自定义规则的文章, 及未授权的站外图片/链接以外的所有开放公开编辑的内容, 均采用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表