搜索
查看: 4547|回复: 8

R版帮一下帮啊..

[复制链接]
发表于 2011-1-14 05:37:41 | 显示全部楼层 |阅读模式 来自 中国–广西–玉林–玉州区
本帖最后由 q352332201 于 2011-1-14 13:08 编辑

一个第一局无限手雷的插件..
它的问题是第一局开始的时候在聊天区域显示不出字来..
如图 就是那个
" 口>> "这样的..

可不可以把它修改为时间显示上面那块区域显示:
                            轻松一下
                       ->第一局手雷战<-
而且还会闪的红色字体?

源码在此
  1. #include <amxmodx>
  2. #include <cstrike>
  3. #include <fun>
  4. #include <engine>
  5. #define PLUGIN "FirstRoundhegrenade"
  6. #define VERSION "0.2.16"
  7. #define AUTHOR "iG_os"
  8. new bool:FirstRound = true
  9. new bool:iTask[33]
  10. new ModName[10]

  11. public switchweapon(id)
  12. {
  13.     if(!FirstRound)
  14.         return PLUGIN_CONTINUE
  15.     new HE = cs_get_user_bpammo(id, CSW_HEGRENADE)
  16.     if((!HE) && (!iTask[id]))
  17.     {
  18.         new paramID[1]
  19.         paramID[0] = id
  20.         set_task(0.6, "give_hegrenade", id, paramID, 1)
  21.         iTask[id] = true
  22.         return PLUGIN_CONTINUE
  23.     }
  24.     new WeaponID = read_data(2)
  25.     if (HE)  
  26.     if (WeaponID!=CSW_HEGRENADE)
  27.         engclient_cmd(id, "weapon_hegrenade")
  28.     return PLUGIN_CONTINUE
  29. }

  30. public give_hegrenade(paramID[])
  31. {
  32.     new id = paramID[0]
  33.     if ( FirstRound && is_user_alive(id) )
  34.     {
  35.         new HE = cs_get_user_bpammo(id, CSW_HEGRENADE)
  36.         if (!HE)  
  37.            give_item(id, "weapon_hegrenade") //给雷
  38.         engclient_cmd(id, "weapon_hegrenade")
  39.         iTask[id] = false
  40.     }
  41. }

  42. public StartSetting(paramID[])
  43. {
  44.     new id = paramID[0]
  45.     if ( FirstRound && is_user_alive(id) )
  46.         give_item(id, "item_assaultsuit")
  47. }

  48. public newround(id)
  49. {
  50.     if (FirstRound)
  51.     {
  52.         new task_msgID = id+100
  53.         new task_startID = id+200
  54.         if (task_exists(task_msgID)) remove_task(task_msgID)
  55.         if (task_exists(task_startID)) remove_task(task_startID)
  56.         iTask[id] = false
  57.         new paramID[1]
  58.         paramID[0] = id
  59.         set_task(3.0, "Mode_msg", task_msgID, paramID, 1, "a", 3)
  60.         set_task(2.5, "StartSetting", task_startID, paramID, 1)
  61.     }
  62.     return PLUGIN_CONTINUE
  63. }

  64. public restartround()
  65. {
  66.     FirstRound = true
  67.     return PLUGIN_CONTINUE
  68. }

  69. public end_round()
  70. {
  71.     FirstRound = false
  72.     return PLUGIN_CONTINUE
  73. }

  74. public message_TextMsg(msg_id, msg_dest, entity)
  75.   
  76. {
  77.     if (!FirstRound || !get_cvar_num("he_blockfireinthehole"))
  78.         return PLUGIN_CONTINUE
  79.     new argNum = get_msg_args() //获取参数数量,少于5个就不是radio信息
  80.     if (argNum<5) return PLUGIN_CONTINUE
  81.     new string[30]
  82.     if (equal(ModName,"cstrike"))  
  83.     { //适应CS
  84.         get_msg_arg_string(3, string, 29)
  85.         if (!equal(string, "#Game_radio"))
  86.             return PLUGIN_CONTINUE
  87.         get_msg_arg_string(5, string, 29) //CS 取第5个参数
  88.     }
  89.     else
  90.     { //适应CZ
  91.         get_msg_arg_string(3, string, 29)
  92.         if (!equal(string, "#Game_radio_location"))
  93.            return PLUGIN_CONTINUE
  94.         get_msg_arg_string(6, string, 29) //CZ 取第6个参数
  95.     }
  96.     if (!equal(string, "#Fire_in_the_hole"))
  97.         return PLUGIN_CONTINUE
  98.     if (get_cvar_num("he_blockfireinthehole"))
  99.         return PLUGIN_HANDLED // 消除 “Fire in the hole” 文字显示...
  100.     return PLUGIN_CONTINUE
  101. }

  102. public message_SendAudio(msg_id, msg_dest, entity)  
  103. {
  104.     if (!FirstRound || !get_cvar_num("he_blockfireinthehole"))
  105.         return PLUGIN_CONTINUE
  106.     new string[20]
  107.   
  108.     get_msg_arg_string(2, string, 19)
  109.     if (equal(string, "%!MRAD_FIREINHOLE"))
  110.         return PLUGIN_HANDLED // 消除 “Fire in the hole” 声音...
  111.     return PLUGIN_CONTINUE
  112. }

  113. public Mode_msg(paramID[])  
  114. {
  115.     new id = paramID[0]
  116.     //client_print(id,print_chat,"->第一局混战<-")
  117.     new msg[100]
  118.     format(msg,99,"^x03轻松时间^x01>>^x04")  
  119.     message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id)  
  120.     write_byte(id)
  121.     write_string(msg)
  122.     message_end()
  123. }

  124. public plugin_init()
  125. {
  126.     register_plugin(PLUGIN,VERSION,AUTHOR)
  127.     register_cvar("he_blockfireinthehole", "1")
  128.     register_event("ResetHUD", "newround", "be")
  129.     register_event("TextMsg", "restartround", "a", "2&#Game_C", "2&#Game_w")
  130.     register_event("SendAudio", "end_round", "a", "2&%!MRAD_terwin",
  131.                              "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw")
  132.     register_event("CurWeapon", "switchweapon", "be", "1=1")
  133.     register_message(get_user_msgid("SendAudio"), "message_SendAudio")
  134.     register_message(get_user_msgid("TextMsg"), "message_TextMsg")
  135.     get_modname(ModName, 9)
  136. }
复制代码

本帖子中包含更多资源

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

×
 楼主| 发表于 2011-1-14 06:05:59 | 显示全部楼层 来自 中国–广西–玉林–玉州区
{:2_33:}R版快出现啊.......
回复

使用道具 举报

发表于 2011-1-14 21:57:25 | 显示全部楼层 来自 中国–广东–广州
应该是编码问题
回复

使用道具 举报

发表于 2011-1-16 23:53:46 | 显示全部楼层 来自 中国–四川–泸州
帮你改好了
为了编译方便 插件名我改了下 版权归原作者所有

本帖子中包含更多资源

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

×
回复

使用道具 举报

发表于 2011-1-16 23:56:16 | 显示全部楼层 来自 中国–四川–泸州
  1. #include <amxmodx>
  2. #include <cstrike>
  3. #include <fun>
  4. #include <engine>
  5. #define PLUGIN "wxlz"
  6. #define VERSION "0.2.16"
  7. #define AUTHOR "iG_os"
  8. new bool:FirstRound = true
  9. new bool:iTask[33]
  10. new ModName[10]

  11. public switchweapon(id)
  12. {
  13.     if(!FirstRound)
  14.         return PLUGIN_CONTINUE
  15.     new HE = cs_get_user_bpammo(id, CSW_HEGRENADE)
  16.     if((!HE) & (!iTask[id]))
  17.     {
  18.         new paramID[1]
  19.         paramID[0] = id
  20.         set_task(0.6, "give_hegrenade", id, paramID, 1)
  21.         iTask[id] = true
  22.         return PLUGIN_CONTINUE
  23.     }
  24.     new WeaponID = read_data(2)
  25.     if (HE)  
  26.     if (WeaponID!=CSW_HEGRENADE)
  27.         engclient_cmd(id, "weapon_hegrenade")
  28.     return PLUGIN_CONTINUE
  29. }

  30. public give_hegrenade(paramID[])
  31. {
  32.     new id = paramID[0]
  33.     if ( FirstRound & is_user_alive(id) )
  34.     {
  35.         new HE = cs_get_user_bpammo(id, CSW_HEGRENADE)
  36.         if (!HE)  
  37.            give_item(id, "weapon_hegrenade") //给雷
  38.         engclient_cmd(id, "weapon_hegrenade")
  39.         iTask[id] = false
  40.     }
  41. }

  42. public StartSetting(paramID[])
  43. {
  44.     new id = paramID[0]
  45.     if ( FirstRound & is_user_alive(id) )
  46.         give_item(id, "item_assaultsuit")
  47. }

  48. public newround(id)
  49. {
  50.     if (FirstRound)
  51.     {
  52.         new task_msgID = id+100
  53.         new task_startID = id+200
  54.         if (task_exists(task_msgID)) remove_task(task_msgID)
  55.         if (task_exists(task_startID)) remove_task(task_startID)
  56.         iTask[id] = false
  57.         new paramID[1]
  58.         paramID[0] = id
  59.         set_task(3.0, "Mode_msg", task_msgID, paramID, 1, "a", 3)
  60.         set_task(2.5, "StartSetting", task_startID, paramID, 1)
  61.     }
  62.     return PLUGIN_CONTINUE
  63. }

  64. public restartround()
  65. {
  66.     FirstRound = true
  67.     return PLUGIN_CONTINUE
  68. }

  69. public end_round()
  70. {
  71.     FirstRound = false
  72.     return PLUGIN_CONTINUE
  73. }

  74. public message_TextMsg(msg_id, msg_dest, entity)
  75.   
  76. {
  77.     if (!FirstRound || !get_cvar_num("he_blockfireinthehole"))
  78.         return PLUGIN_CONTINUE
  79.     new argNum = get_msg_args() //获取参数数量,少于5个就不是radio信息
  80.     if (argNum<5) return PLUGIN_CONTINUE
  81.     new string[30]
  82.     if (equal(ModName,"cstrike"))  
  83.     { //适应CS
  84.         get_msg_arg_string(3, string, 29)
  85.         if (!equal(string, "#Game_radio"))
  86.             return PLUGIN_CONTINUE
  87.         get_msg_arg_string(5, string, 29) //CS 取第5个参数
  88.     }
  89.     else
  90.     { //适应CZ
  91.         get_msg_arg_string(3, string, 29)
  92.         if (!equal(string, "#Game_radio_location"))
  93.            return PLUGIN_CONTINUE
  94.         get_msg_arg_string(6, string, 29) //CZ 取第6个参数
  95.     }
  96.     if (!equal(string, "#Fire_in_the_hole"))
  97.         return PLUGIN_CONTINUE
  98.     if (get_cvar_num("he_blockfireinthehole"))
  99.         return PLUGIN_HANDLED // 消除 “Fire in the hole” 文字显示...
  100.     return PLUGIN_CONTINUE
  101. }

  102. public message_SendAudio(msg_id, msg_dest, entity)  
  103. {
  104.     if (!FirstRound || !get_cvar_num("he_blockfireinthehole"))
  105.         return PLUGIN_CONTINUE
  106.     new string[20]
  107.   
  108.     get_msg_arg_string(2, string, 19)
  109.     if (equal(string, "%!MRAD_FIREINHOLE"))
  110.         return PLUGIN_HANDLED // 消除 “Fire in the hole” 声音...
  111.     return PLUGIN_CONTINUE
  112. }

  113. public Mode_msg(paramID[])  
  114. {
  115.     new id = paramID[0]
  116.     //client_print(id,print_chat,"->第一局混战<-")
  117.     new msg[100]
  118.     format(msg,99,"^x03轻松一下 ^x04VS^x01 第一局手雷战")  
  119.     message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id)  
  120.     write_byte(id)
  121.     write_string(msg)
  122.     message_end()
  123. }

  124. public plugin_init()
  125. {
  126.     register_plugin(PLUGIN,VERSION,AUTHOR)
  127.     register_cvar("he_blockfireinthehole", "1")
  128.     register_event("ResetHUD", "newround", "be")
  129.     register_event("TextMsg", "restartround", "a", "2#Game_C", "2&#Game_w")
  130.     register_event("SendAudio", "end_round", "a", "2%!MRAD_terwin",
  131.                              "2%!MRAD_ctwin", "2&%!MRAD_rounddraw")
  132.     register_event("CurWeapon", "switchweapon", "be", "1=1")
  133.     register_message(get_user_msgid("SendAudio"), "message_SendAudio")
  134.     register_message(get_user_msgid("TextMsg"), "message_TextMsg")
  135.     get_modname(ModName, 9)
  136. }
复制代码
回复

使用道具 举报

 楼主| 发表于 2011-1-17 13:20:24 | 显示全部楼层 来自 中国–广西–玉林
5# 114772348


这样每局都是无限手雷- -
回复

使用道具 举报

发表于 2011-1-18 00:34:26 | 显示全部楼层 来自 中国–河北–秦皇岛
每局都是手雷吗?
回复

使用道具 举报

 楼主| 发表于 2011-1-18 04:28:49 | 显示全部楼层 来自 中国–广西–玉林–玉州区
7# fz12


我编译5楼的就是每局都是无限手雷....
回复

使用道具 举报

发表于 2011-8-16 14:40:07 | 显示全部楼层 来自 中国–湖南–邵阳
是无限手雷-
回复

使用道具 举报

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

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