找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 532|回复: 3

富翁卡/hp恢复卡

[复制链接]

该用户从未签到

发表于 2010-1-6 16:53:05 | 显示全部楼层 |阅读模式
貌似我觉得这样写还不错
至少不会因为次次去for 1 to 32
之前也用过次次for 1 to 32 结果只有一个
人多的时候服务端直接崩溃 Exe 内存错误
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fun>
  4. #include <cstrike>

  5. new max_hp=100   
  6. new max_armor=100
  7. new set_hp=5      
  8. new set_armor=5   

  9. public plugin_init()
  10. {
  11. register_plugin("Hp & Armor","1.3","天下第一小賤人")
  12. register_event("ResetHUD", "eResetHUD", "be")
  13. //注册ResetHUD事件 发送给一个目标并且是活的
  14. }

  15. public client_putinserver(id)
  16. { //客户端初始化的时候就开始给任务
  17. //分辨判断是否已连接 是否是bot 是否已有存在任务 是否有A权限
  18.   if(is_user_connected(id) && !is_user_bot(id) && (!task_exists(111223 + id) && (get_user_flags(id) & ADMIN_LEVEL_A) )){
  19.      SetHp(111223+id)
  20.      SetArmor(111224+id)
  21.   }
  22. }

  23. public client_disconnect (id)
  24. {
  25.         if(task_exists(111223 + id)) //断开连接的时候检查ID是否有任务如果有则删除掉
  26.         {
  27.           remove_task(11223+id)
  28.                   remove_task(111224+id)
  29.         }
  30. }
  31. public eResetHUD(id)
  32. {
  33.   if(get_user_flags(id) & ADMIN_LEVEL_B) //判断是否有B权限
  34.   {
  35.      cs_set_user_money(id,16000,0)
  36.    }
  37. }


  38. public SetHp(id)
  39. {
  40. id = id - 111223
  41. if(!is_user_connected(id)) { //如果断开连接就删掉任务
  42.   remove_task(111223 + id)
  43. } else {

  44.   if(is_user_alive(id)){  //是否活着
  45.     if(get_user_health(id)<max_hp) {
  46.     new num=get_user_health(id) + set_hp
  47.       if(num>max_hp)
  48.       {
  49.         set_user_health(id,max_hp)
  50.       }
  51.       else
  52.       {
  53.         set_user_health(id,get_user_health(id) + set_hp)
  54.       }
  55.     }
  56.   }
  57. }
  58. set_task(1.0,"SetHp",111223+id) //任务循环
  59. return PLUGIN_HANDLED
  60. }


  61. public SetArmor(id)
  62. {
  63. id = id - 111224
  64. if(!is_user_connected(id)) {
  65.   remove_task(111224 + id)
  66. } else {
  67.   if(is_user_alive(id)){
  68.      if(get_user_armor(id)<max_armor) {
  69.         new num=get_user_armor(id) + set_armor
  70.         if(num>max_armor) {
  71.             cs_set_user_armor(id,max_armor,CS_ARMOR_VESTHELM)
  72.         }
  73.         else {
  74.             cs_set_user_armor(id,get_user_armor(id) + set_armor,CS_ARMOR_VESTHELM)
  75.         }
  76.      }
  77.   }
  78. }
  79. set_task(1.0,"SetArmor",111224+id)
  80. return PLUGIN_HANDLED
  81. }
复制代码

该用户从未签到

发表于 2010-1-6 21:28:40 | 显示全部楼层
这是干什么的?

该用户从未签到

发表于 2010-1-6 22:37:04 | 显示全部楼层
看不懂啊。。

该用户从未签到

发表于 2010-1-26 17:03:04 | 显示全部楼层
我最近在找这个插件 感谢楼主分享 你人太好了  希望可以跟你一起学习 答应的话 留下QQ 谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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