搜索
查看: 12745|回复: 50

一个小小的统计插件(请大家多指教)

[复制链接]
发表于 2009-4-4 20:12:13 | 显示全部楼层 |阅读模式 来自 广东佛山
本帖最后由 kk阿朗 于 2009-4-10 22:48 编辑

其实我也没什么要说的,我写这个插件,只是为了要验证一下我这一年多来的功夫有没有白费。

虽然说算不上什么好的插件,但是也可以说是我的心血吧,还请各位多多指教!

在这里我还想说,希望大家能多发点源码出来,给我们这些新手学习一下!

本插件修改于2009年04月10日,经过服务器2人以上的测试!在这里为了方便各界人士,所以贴上源码
本人再次重申,此插件源码是我新手一个代码一个代码写出来的,如有看法,请直接与本人联系,请别用其它语言伤人!本人QQ:68004028
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <csstats>
  4. #include <cstrike>

  5. public plugin_init()
  6. {
  7.         register_plugin("Status", "1.0", "K.K.Lv");
  8. }

  9. public client_putinserver(id)
  10. {
  11.         new param[34], len
  12.         param[0] = id
  13.         len = get_user_name(id, param[1], 31)
  14.         set_task(1.0, "displayinfo", 0, "", 0, "b")
  15.         set_task(5.0, "enter_msg", 0, param, len + 4)
  16.         return PLUGIN_CONTINUE
  17. }

  18. public displayinfo()
  19. {
  20.         new cmax = get_maxplayers()
  21.         for (new id = 1; id < cmax; id++)
  22.         {
  23.                 new ping, loss
  24.                 new stats[8]
  25.                 new body[8]
  26.                 new name[32]
  27.                 new ip[128]
  28.                 new gtime[128]
  29.                 new gplayers[32]
  30.                 new playercount
  31.                 get_players(gplayers, playercount)
  32.                 new a = get_timeleft()
  33.                 new timer = get_user_time(id)
  34.                 new kill = get_user_frags(id)
  35.                 new death = get_user_deaths(id)
  36.                 new rank_pos = get_user_stats(id, stats, body)
  37.                 new players = get_playersnum()
  38.                 new cmin = timer/60
  39.                 new csec = timer-cmin*60
  40.                
  41.                 get_user_ip(id, ip, 127, 1)
  42.                 get_user_name(id, name, 31)
  43.                 get_user_ping(id, ping, loss)
  44.                 get_time("%H:%M:%S",gtime,127)
  45.                
  46.                 set_hudmessage(100, 255, 0, 0.30, 0.02, 0, 0.0, 1.09, 0.0, 0.0, 1)
  47.                 show_hudmessage(id, "【K.K.Lv】玩家即时信息:")
  48.                 set_hudmessage(100, 255, 0, 0.50, 0.05, 0, 0.0, 1.09, 0.0, 0.0, 2)
  49.                 show_hudmessage(id, "在线时间: %d 分 %d 秒^n当前时间: %s^n地图剩余时间: %d 分 %d 秒^n当前玩家: %d / %d^n玩家IP: %s^n", cmin, csec, gtime, a / 60, a % 60, players, cmax, ip)
  50.                 set_hudmessage(100, 255, 0, 0.18, 0.05, 0, 0.0, 1.09, 0.0, 0.0, 3)
  51.                 show_hudmessage(id, "玩家ID: %s^n排名: %d^n杀敌: %d / 死亡: %d^n总杀敌数: %d /总死亡数: %d^n延迟: %d", name, rank_pos, kill, death, stats[0], stats[1], ping)
  52.         }
  53.         return 0;
  54. }

  55. public enter_msg(param[])
  56. {
  57.         client_print(param[0], print_chat, "'玩家即时信息'插件由 K.K.Lv 编写!")
  58. }

复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
发表于 2009-4-4 21:04:19 | 显示全部楼层 来自 安徽六安
研究下LZ的心血
回复

使用道具 举报

发表于 2009-4-4 22:03:52 | 显示全部楼层 来自 广东东莞
还是希望楼主能说明详细点,这样人家有个选择的余地
回复

使用道具 举报

发表于 2009-4-4 23:33:22 | 显示全部楼层 来自 安徽合肥
截图截图
回复

使用道具 举报

发表于 2009-4-5 08:36:48 | 显示全部楼层 来自 吉林长春
非常好的插件 能加上在服务器玩的总时间吗
回复

使用道具 举报

发表于 2009-4-5 17:18:20 | 显示全部楼层 来自 安徽合肥
安装测试没效果啊
回复

使用道具 举报

发表于 2009-4-5 19:51:27 | 显示全部楼层 来自 广东韶关
嗯,原创作品 请补充下注明使用环境
回复

使用道具 举报

发表于 2009-4-5 20:54:01 | 显示全部楼层 来自 甘肃天水
给个图和说明啊,你这什么都不说,谁敢下啊,现在是经济危机时期,钱难挣啊........
回复

使用道具 举报

 楼主| 发表于 2009-4-5 21:07:41 | 显示全部楼层 来自 广东佛山
本帖最后由 kk阿朗 于 2009-4-5 22:24 编辑

不好意思,本插件有点问题!
谁能帮忙解决一下!
得到的玩家信息有误!
写的时候只是测试单人的,但是第二个人进入 就显示不能数据了!

希望有高手指点!!


问题已解决!!
回复

使用道具 举报

 楼主| 发表于 2009-4-5 21:08:32 | 显示全部楼层 来自 广东佛山
本帖最后由 kk阿朗 于 2009-4-5 22:20 编辑

特此注明,本插件使的HUD信息频道为:1、2、3!
可能 会跟某些插件有所冲突,请看明后再用,避免与同频道 的插件一起共用!

谢谢支持!!
回复

使用道具 举报

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

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