搜索
楼主: 微波炉

【讨论】如何何获取玩家的杀敌数?

[复制链接]
发表于 2005-6-2 14:38:00 | 显示全部楼层 来自 陕西西安
result = dbi_query(dbc,"UPDATE Entertainment SET num='%d', csdata='%d' WHERE csname = '%s'",num+1,csdata,csname)

需要注意代码里的变量num没有声明,这个要你自己完成了
回复

使用道具 举报

 楼主| 发表于 2005-6-2 18:02:44 | 显示全部楼层 来自 广东广州
好的,谢谢。
num只做加数用,整型数值int可否?

num可要可不要的。

我也试过
UPDATE 里设csdata='%d' ,
编译无错,运行时出现mysql内定错误。
都是在dbi_free_result(result) 出错。
回复

使用道具 举报

发表于 2005-6-2 18:12:28 | 显示全部楼层 来自 陕西西安
你用的是
client_infochanged(id)
我觉得不可能在玩家成绩改变时被调用,你是不是想在玩家的成绩变化后立即存入该玩家的成绩?
我觉得应该调用
/* Function is called after player death ,
* if player was killed by teammate TK is set to 1 */
forward client_death(killer,victim,wpnindex,hitplace,TK);

我想你还是说说你想干什么吧,这些是我从你的代码里猜测的。
回复

使用道具 举报

 楼主| 发表于 2005-6-2 18:16:50 | 显示全部楼层 来自 广东广州
照你的方法去弄,仍然是0啊。
回复

使用道具 举报

 楼主| 发表于 2005-6-2 18:30:04 | 显示全部楼层 来自 广东广州
对,你猜对了,我是想实时得到玩家的杀敌数.但不必马上存入数据库,只到newround时才写入.
我是这样想的,获得玩家的杀敌数,然后就杀敌数给一个等级,就这个等级给玩家奖励.如给火箭筒啊,可以超级连环啊,可以隐身啊,等等好多好多.
回复

使用道具 举报

发表于 2005-6-2 18:37:18 | 显示全部楼层 来自 陕西西安
代码就函数用错了,当然没变化了 :D
用RoundTime事件来触发,想法不错,哈哈
不过记得在玩家disconnect的时候也保存一次数据。
回复

使用道具 举报

 楼主| 发表于 2005-6-3 11:47:43 | 显示全部楼层 来自 广东广州
牛牛大人,有什么好的建议吗?

disconnect我已准备好,就差这个杀敌数的问题一直无法解决,可有其它方法来替代吗?
回复

使用道具 举报

 楼主| 发表于 2005-6-3 11:48:52 | 显示全部楼层 来自 广东广州
杀敌增加等级,被 杀则减少等级,这样游戏就平衡了。
回复

使用道具 举报

 楼主| 发表于 2005-6-3 11:49:35 | 显示全部楼层 来自 广东广州
可否帮我修改一下代码??
回复

使用道具 举报

 楼主| 发表于 2005-6-3 13:40:14 | 显示全部楼层 来自 广东广州
Post by nwb13
你用的是
client_infochanged(id)
我觉得不可能在玩家成绩改变时被调用,你是不是想在玩家的成绩变化后立即存入该玩家的成绩?
我觉得应该调用
/* Function is called after player death ,
* if player was killed by teammate TK is set to 1 */
forward client_death(killer,victim,wpnindex,hitplace,TK);

我想你还是说说你想干什么吧,这些是我从你的代码里猜测的。

这个只包括在DoDX (dodx.inc)

而这个还要另外配置,麻烦啊。
有其它更好的吗。
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

快速回复 返回顶部 返回列表