作者:rahxephon
作图的人一定都知道魔兽中单位,物品,技能,可破坏物,升级等等都有一个ID(CTRL+D可以看见),这个ID是数值型的,但显示是'U000'之类,那么它是怎么计算的呢?
实际上'U000'之类的数是256进制数(这里要感谢老狼的帮助),而其中的U,0都是ASCII码,因此'U000'就是
85*256^3+48*256^2+48*256^1+48*256^0
这样我们就会转化这类ID了,我在上传的附件中写了相应函数作成了一张图,大家可以通过函数将字符型的ID转化为数值型的ID,或反过来做(数值型的ID转10进制根本不用写,本来就都是数直接用不就完了,重点在于游戏中只能输入字符,这样就需要字符转ID了).这里要说明老狼好象以前写过,但我没看到,所以自己写一个补充空白,呵呵
至于用途嘛,我没发现有什么大用途,汗.不过可以用来制作存储任意数量英雄,物品,技能等的存储系统,特点是不用提前写好数组来预先储存英雄,保存时直接调用函数传出ID就能储存了,因此方便移植,移植时不用改动(不用在使用别人储存系统时为更新储存列表而费心了).
不过这种储存系统好象也有人作了,所以我就不写出来了,想要的人在我的函数基础上加上储存函数就行了,很简单的. |