您的位置:首页 > 其它

tlbb装备属性控制

2016-07-10 18:03 423 查看
在表t_iteminfo中记录了所有玩家的物品信息
字段名说明信息
charguid用户角色id
pos物品位置
p9物品星级控制
p10属性种类1
p11属性种类2
p12属性加成
 

 

 

 

 

 

 

pos:0-29 为玩家包裹

装备属性说明:

p9转换为16进制后0x.....[1][2][3][4]

[1][2]对应的16进制表示星级:如01-1星,02-2星。。。依次类推

[3][4]则对应装备鉴定的闪避资质,最大值为ff

---------------------------------------------------------

p10、p11对应的二进制表示装备所拥有的属性种类

如p10=6532,p11=-18963

6532   =0000 0000 0000 0000 0001 1001 1000 0100

负数的二进制位用补码保存,我们计算一下-18963的二进制表示

(原码)18963=0x4a13=0000 0000 0000 0000 0100 1010 0001 0011

(反码)         =1111 1111 1111 1111 1011 0101 1110 1100

(补码)         =1111 1111 1111 1111 1011 0101 1110 1101

-18963=1111 1111 1111 1111 1011 0101 1110 1101

p10从低位到高位(从右到左)的二进制依次表示是否拥有此种属性,如6532表示拥有p10属性的第3、8、9、12、13项属性

p11依次类推

需要注意的p10,p11两种属性的种类最大为16,也就是说一个装备的属性最多只有16条,多出属性时,只有前16条有效。

我们依次获取p10,p11的属性种类:





 

p10前16种属性

p10=0000 0000 0000 0000 1111 1111 1111 1111=65535

p11=0000 0000 0000 0000 0000 0000 0000 0000=0

 


p10后16种属性

p10=1111 1111 1111 1111 0000 0000 0000 0000= -65536

p11=0000 0000 0000 0000 0000 0000 0000 0000=0

 


 

p11前16种属性

p10=0000 0000 0000 0000 0000 0000 0000 0000=0

p11=0000 0000 0000 0000 1111 1111 1111 1111=65535

 


 

 

p11后16种属性

p10=0000 0000 0000 0000 0000 0000 0000 0000=0

p11=1111 1111 1111 1111 0000 0000 0000 0000= -65536



 

关于10进制计算说明

1111 1111 1111 1111 0000 0000 0000 0000(最高位为1表示负数,负数是以补码方式保存的,先求其对应正数的原码)

已知一个数的补码,求原码的操作其实就是对该补码再求补码:

反码:0000 0000 0000 0000 1111 1111 1111 1111

补码:0000 0000 0000 0001 0000 0000 0000 0000

则对应正数=0x10000=65536

所以计算所得负数为-65536

 

接着我们把属性类型调为一样,查看一下星级和p12对装备属性值的影响



      7星,p12=50            7星,p12=80     





      9星,p12=50            9星,p12=80





 注意p12的16进制最后两位控制加成,也就是说0x....ff时加成最大,一般为0xff,即256

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: