关于物品复制问题的看法和我的解决方法
首先非常感谢sixiangyu有一双电眼为大家看出了GetItemSerial的中原来的l错别字的问题,但是许多人改了之后新掉出物品被显示为非法复制物品这是为什么呢,估计原来的存储过程也正是因为这个才改了名,把"i"改成"L"。
我们再看看这个存储过程,内容非常简单,作用无非是得到一个物品后,自动的去更新本物品的当前最大序列号=原最大序列号+1,然后返回回去作为新物品的序列号,这种事搞数据库的都很清楚,为保证某些对象的唯一性是经常作的,存储过程中只有一个update而没有根据情况作insert处理,这点可以说比较低级。所以就要求各位的gameserverinfo表中原先必须有内容,否则update无影响,itemcount没有变化就是始终返回一个相同的值,所以新掉物品的序列号都是相同的,这个时候你打开物品检查,自然会提示大家的新出物品都是复制物品,这点不是说你简单的卖一下以前的就可以解决的。
织梦好,好织梦 所以现在大家只要打开这个表往里头加入一条缺省的数据就可以了,以后新物品提示复制物品的问题应该就解决,这个问题解决了大家自然可以可以打开物品检测,不过以前的物品的确有报错的可能,但是只要断了后来的,我想这都不是问题。
实在不会的人可以到查询分析器中运行以下代码(首先你要改正存储过程的名字)
IF NOT EXISTS (SELECT * FROM GameServerInfo)
INSERT INTO GameServerInfo(Number,ItemCount,ZenCount)
valueS(1,1,1)
GO
现在的问题是Number的实际意思到底是的服还是物品的种类,如果表示的物品种类(因为GS中好像对于几种不同的物品serial有不同的调用),如果遇到问题了试试多加一些number进去试试,这个目前也只是想到这样而已,试验时间还不够,我目前新掉物品暂时还没有遇到过什么问题,不过以前的打出来的装备就会提示非法了,这个是意料中的事。好像商店的物品和丢出来的没事
内容来自dedecms