[郑重声明]
X5-[v(/]
本人在黑金论坛(http://bbs.8cnc.com)的用户名为"美丽心灵",黑金论坛的"cool192"已经不再是本人了.
X5-[v(/]
特此声明!
X5-[v(/] 测试成功,完美解决武器经验提升问题,但还是要退出游戏才生效(可是不用每升一级就退出了),看你们愿不愿意 哈哈~~
X5-[v(/]
转贴本帖请注明作者,谢谢!
X5-[v(/] 首先修改tbl_ability表结构,增加两个字段
X5-[v(/]
列名 数据类型 长度 是否允许为空 默认值
X5-[v(/]
FLD_LASTLEVEL tinyint 1 是 0
X5-[v(/]
FLD_LEVELDIF int 4 是 0
X5-[v(/]
添加方法:在tbl_ability表上右键->设计表->在最后一个字段下面按以上要求添加两个字段.
X5-[v(/]
字段含义说明: FLD_LASTLEVEL ---该角色上次更新后的等级
X5-[v(/]
FLD_LEVELDIF ---该角色这次更新后的级别差,也就是升了多少级
X5-[v(/]
然后查询分析器里执行以下语句(注意第一行的game1,根据你的数据库实际名称,有可能是game)
X5-[v(/] --------------------------------------------------------------
X5-[v(/]
X5-[v(/]
USE game1
X5-[v(/]
GO
X5-[v(/]
UPDATE tbl_ability SET FLD_LASTLEVEL=FLD_LEVEL
X5-[v(/]
GO
X5-[v(/]
CREATE TRIGGER updlevel
X5-[v(/]
ON tbl_ability
X5-[v(/]
FOR UPDATE AS
X5-[v(/]
IF UPDATE (fld_level)
X5-[v(/]
begin
X5-[v(/]
UPDATE tbl_ability SET fld_leveldif=a.fld_leveldif+(a.fld_level-a.fld_lastlevel),fld_lastlevel=a.fld_level FROM tbl_ability a,inserted b WHERE a.FLD_CHARACTER=b.FLD_CHARACTER
X5-[v(/]
end
X5-[v(/]
GO
X5-[v(/]
CREATE TRIGGER updlevel_insert
X5-[v(/]
ON tbl_ability
X5-[v(/]
AFTER INSERT AS
X5-[v(/]
IF UPDATE (fld_level)
X5-[v(/]
begin
X5-[v(/]
UPDATE tbl_ability SET fld_lastlevel=a.fld_level FROM tbl_ability a,inserted b WHERE a.FLD_CHARACTER=b.FLD_CHARACTER
X5-[v(/]
end
X5-[v(/]
GO
X5-[v(/]
CREATE TRIGGER updover
X5-[v(/]
ON tbl_item
X5-[v(/]
AFTER INSERT AS
X5-[v(/]
IF UPDATE(fld_colorg)
X5-[v(/]
begin
X5-[v(/]
UPDATE tbl_item SET fld_colorr=b.fld_leveldif FROM tbl_item a ,tbl_ability b,inserted c WHERE
X5-[v(/]
a.fld_character=b.fld_character and a.fld_character=c.fld_character and a.fld_type=1
X5-[v(/]
end
X5-[v(/]
GO
X5-[v(/] --------------------------------------------------------------------------------------
X5-[v(/]
这样得出的结果是:只要该用户的当前角色退出游戏,程序就会根据其在游戏里升级的情况对武器经验值进行提升.每升一级提升一个点,实际对应是59999的经验值,如果没升级,则不提升.由于用户在几个小时内都很难自己提升59999的武器经验,所以你们游戏时大可不必关心这个数值,只要升级了,无论升了几级,退出游戏后再进入,
X5-[v(/]
武器经验值就会涨到你爽歪!
X5-[v(/]
注意:武器经验值提升涉及到的字段计算比较复杂,请各位千万不要一时贪心而随意更改代码,否则一切后果自负,与本人无关,切记,切记!
X5-[v(/] 有人看,没人顶吗?? 不顶我就不再发好东西了~~
X5-[v(/] [此贴子已经被作者于2004-9-14 23:36:36编辑过]